# SeaweedFS

> S3-compatible store optimized for billions of small files

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.

Website: https://seaweedfs.com

## Use it when

- The workload is billions of small files (images, thumbnails, documents), where per-file metadata defeats general stores; the Haystack design keeps it to about 40 bytes and one disk seek per read.
- Many access paths are needed over one store: S3, POSIX FUSE mounts, WebDAV, and an HDFS interface.
- A central index must not become the bottleneck; the master tracks volumes, not files.
- Deployment should start small: one Go binary runs master, volume, filer, and S3 roles on a laptop and grows to a cluster.

## Think twice when

- The workload is large Parquet scans; a lakehouse's access pattern is not what the design optimizes, even though the S3 API is complete enough to serve one.
- Strict multi-site consistency is needed; filer.sync replication is asynchronous, one-way or two-way.
- You want hyperscaler-grade attestation of durability rather than replication codes and erasure coding you configure.
- The S3 path must be minimal: it runs through the filer, which is an extra component to size.

## How it runs

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.

## Details

### General

| Attribute | Value |
| --- | --- |
| License | Open source (permissive) |
| SPDX identifier | Apache-2.0 |
| Deployment | Self-hosted |
| Operational complexity | Medium |
| Pricing | Free |
| Language | Go |
| Repository | https://github.com/seaweedfs/seaweedfs |
| Documentation | https://github.com/seaweedfs/seaweedfs/wiki |
| Stars | 34.8k |

### Object Storage

| Attribute | Value |
| --- | --- |
| S3 API | Compatible, via the filer |
| Interfaces | Object, POSIX FUSE, WebDAV, HDFS |
| Egress | None: self-hosted |
| Storage tiers | Disk types you tag (hdd, ssd, nvme); tiering to S3, GCS or Azure |
| Minimum duration | None |
| Durability model | Replication codes for server, rack and DC copies, or RS(10,4) for warm data |
| Multi-region | filer.sync: asynchronous one-way or two-way between clusters |
| Event notifications | Filer events to Kafka, SQS, Pub/Sub, NATS or RabbitMQ |
| Immutability | S3 Object Lock: governance or compliance mode, plus legal holds |
| Minimum deployment | One Go binary: master, volume, filer and S3 roles on a laptop or a cluster |

## Capabilities

- [Object Storage](https://matca.io/capabilities/object-storage)

---

Source: https://matca.io/seaweedfs
Last updated: 2026-08-31T11:40:48.494Z
