goofys
afero
goofys | afero | |
---|---|---|
16 | 17 | |
5,042 | 5,699 | |
- | - | |
0.0 | 4.4 | |
3 months ago | 8 days ago | |
Go | Go | |
Apache License 2.0 | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
goofys
-
Is Posix Outdated?
The author needs to ask themselves: in this cloud technology stack, is there POSIX involved somewhere lower down, where I can't access it? The answer is, of course, "yes". The sort of cloud storage systems described all run on top of POSIX APIs. They provide convenience (cost efficiency is more debatable) compared to the POSIX alternative, but that's because they exist at an entirely different conceptual layer (hence the presence of POSIX anyway, just buried).
Your point about surfacing a POSIX that's actually there but hidden and thus visible to low-level Amazon employees building the S3 service which makes it invisible to S3 end customers is true but isn't the the point of the article. The author is saying there are motivations for a POSIX-like api visible also the end user.
So your explanation of stack looks like 2 layers: POSIX api <-- AWS S3 built on top of that
Author's essay is actually talking about 3 layers: POSIX <-- AWS S3 <-- POSIX
That's why the blog post has the following links to POSIX-on-top-of-S3-objects :
https://github.com/s3fs-fuse/s3fs-fuse
https://github.com/kahing/goofys
https://www.cuno.io/
-
AWS Announces Open Source Mountpoint for Amazon S3
How is this different than these other solutions?
https://github.com/kahing/goofys
https://github.com/s3fs-fuse/s3fs-fuse
-
Introducing Mountpoint for Amazon S3 - A file client that translates local file system API calls to S3 object API calls like GET and LIST.
But now I ask.. why not s3fs? Is it the GPL licensing? Or even goofys that also have Apache2 licensing and seems to hit similar goals (non fully POSIX compliant)? Why build your own?
- Merge my S3 with Mac Finder Folder
-
Migrating instance to AWS GovCloud
If your 20TB is in S3, use a staging box with goofys (https://github.com/kahing/goofys) to mount the commercial S3 bucket(s) into a folder, then use s3 sync to copy to your bucket(s) in GovCloud.
- How should I go about creating a program that holds various MP4 files?
- Raft Consensus Animated
-
How do you manage large training datasets?
So, we just need to change the dataloader function a bit to make this work then. Did you try just mounting S3 using https://github.com/kahing/goofys. In this case, we need not even change the dataloader code. Not sure of the performance though.
-
Mount S3 Objects to Kubernetes Pods
We're using goofys as the mounting utility. It's a "high-performance, POSIX-ish Amazon S3 file system written in Go" based on FUSE (file system in user space) technology.
-
What you gonna add to your selfhost stack this year?
will probably experiment with https://github.com/kahing/goofys and https://litestream.io/ to make services more easily moved between the devices :) Also, will continue working on https://synpse.net/ to make the operations easier.
afero
-
How do you test programs that move their input files?
Probably use something like https://github.com/spf13/afero
-
Powerful template for CLI projects in Go 🐹
Afero filesystem for various fs utils, abstractions and in-memory fs for testing. For example, instead of os.Remove("file") use filesystem.Api().Remove("file")
- How should I go about creating a program that holds various MP4 files?
- Afero - A filesystem abstraction system for go
- How to serve files from internal Directory (storage)?
-
Interacting with the file system
Literally I'm making a library for this purpouse. It allows you to make project generators using templates and custom scripts. If you want you can collaborate xd. Answering your question I use a library named afero. owl afero
-
Read/Write FileSystem header interface for dependency injection
Not to be a downer but does this do anything afero doesn't?
-
Virtual filesystem path in golang
You could take a look at afero in memory file system. It should solve your problem as long as you can keep the files in memory.
-
Write once, store anywhere: Extensible file systems for Go
It also lacks consistency and sometimes reliability. I actually reached out with bug fixes and offered to improve things, but they had a different plan for the project. HackpadFS adds the shared test suite that was missing from afero.
-
File Systems implemented in Go
afero - A FileSystem Abstraction System for Go
What are some alternatives?
s3fs-fuse - FUSE-based file system backed by Amazon S3
vfs for golang - Virtual filesystem library written in golang
rclone - "rsync for cloud storage" - Google Drive, S3, Dropbox, Backblaze B2, One Drive, Swift, Hubic, Wasabi, Google Cloud Storage, Azure Blob, Azure Files, Yandex Files
bitio - Optimized bit-level Reader and Writer for Go.
gcsfuse - A user-space file system for interacting with Google Cloud Storage
notify - File system event notification library on steroids.
juicefs - JuiceFS is a distributed POSIX file system built on top of Redis and S3.
avgRating - Calculate average score and rating based on Wilson Score Equation
catfs - Cache AnyThing filesystem written in Rust
conv - Fast conversions across various Go types with a simple API.
s3fs - S3 Filesystem
archiver - Easily create & extract archives, and compress & decompress files of various formats