4 ms·
I'm reading between the lines here, and I'd love for Chris Lu (the SeaweedFS author) to chime in here and correct me, but it seems like Chris read Facebook's Ha
by jdcarter 10y ago
I'm reading between the lines here, and I'd love for Chris Lu (the SeaweedFS author) to chime in here and correct me, but it seems like Chris read Facebook's Haystack paper and decided to implement it himself in Go. Kind of how Riak started as "let's take the DynamoDB paper and implement it in Erlang."
The README mentions that Seaweed is much easier to set up than Ceph. The more apt comparison would be the RADOS component of Ceph--both Seaweed and RADOS are key/value oriented. I've now set up both, and for sure Seaweed is easier to get going.
I have a fair bit of experience with RADOS (all quite positive) but I really do appreciate the ease of use Seaweed presents. I've only been using it for an hour or so, just doing benchmarks and walking through fault scenarios, and so far Seaweed looks quite good!
FWIW, I don't think this should be called a filesystem at all. Seaweed isn't a filesystem which forsakes some aspects of POSIX, it's nothing like a filesystem. The more proper term would be "distributed object store."
- jusob 10y agoYou are correct, it is not really a file system. It is used with the HTTP API (upload, download, etc.).
- deleted 10y ago[deleted]
- tomphoolery 10y ago> but it seems like Chris read Facebook's Haystack paper and decided to implement it himself in Go That definitely sounds like the initial impetus for this project, and a perfectly good reason to make "yet another" file system. Additionally, I can understand how taking POSIX compatibility out of the requirements might make writing and maintaining this project a bit more fun.
- SEJeff 10y agoI'd love to see someone run aphyr's Jepsen tool on this and see if it lives up to what it aspires to be. Kyle has a real way of destroying databases and really any distributed datastore: https://aphyr.com/tags/jepsen https://aphyr.com/tags/jepsen