SeaweedFS is an open-source distributed store built on Facebook's Haystack design, keeping per-file metadata overhead to about 40 bytes so it can serve billions of small files with a single disk seek.
Self-hosted Go processes: a master for volume placement, volume servers holding blob data with local metadata, and an optional filer adding directories, POSIX semantics, and the S3 API. Durability comes from replication codes spanning servers, racks, and datacenters, or RS(10,4) erasure coding for warm data; tiering offloads to S3, GCS, or Azure.
How SeaweedFS answers the questions Object Storage turns on.
| How it works | |
| S3 API | Compatible, via the filer |
| Durability model | Replication codes for server, rack and DC copies, or RS(10,4) for warm data |
| Event notifications | Filer events to Kafka, SQS, Pub/Sub, NATS or RabbitMQ |
| Running it | |
| Minimum duration | None |
| Multi-region | filer.sync: asynchronous one-way or two-way between clusters |
| Minimum deployment | One Go binary: master, volume, filer and S3 roles on a laptop or a cluster |
| Connections | |
| Interfaces | Object, POSIX FUSE, WebDAV, HDFS |
| Access | |
| Immutability | S3 Object Lock: governance or compliance mode, plus legal holds |
| Cost | |
| Egress | None: self-hosted |
| Storage tiers | Disk types you tag (hdd, ssd, nvme); tiering to S3, GCS or Azure |
vs SeaweedFS: Commercial · Managed · Hybrid · Subscription · Operational complexity: Low
vs SeaweedFS: Operational complexity: High · Java
vs SeaweedFS: Commercial · Managed · Subscription · Operational complexity: Low