Customizable Erasure Coding (EC) Ratio

SeaweedFS Enterprise lets you customize the erasure coding ratio per volume, so you can dial in cost, durability, or performance for each workload. Each volume is split into k data chunks plus m Reed-Solomon parity chunks and distributed across servers — matching or exceeding the fault tolerance of 3x replication at a fraction of the storage overhead.

SeaweedFS Erasure Coding: what EC is, how the write flow works when EC is applied on a volume, and how it compares to replication — with key points on volume-level EC, fault tolerance, and storage efficiency.

When to use it

  • Large, stable datasets where storage cost dominates — high-density ratios like 20+4 cut overhead to 1.2x versus 3x for replication.
  • Mission-critical data that must survive multiple failures — high-parity ratios like 20+5 tolerate 5 simultaneous shard losses.
  • Read-heavy workloads — SeaweedFS keeps O(1) single-shard reads regardless of shard count, so EC doesn’t slow you down.
  • Warm and cold tiers at scale — at 100 PB, EC 20+4 saves roughly $1.8M versus 3x replication.

How to use it

  1. Pick a ratio that fits the volume size and durability you need — the default is 10+4 (1.4x overhead, tolerates 4 shard failures).
  2. For lower cost, raise the data-shard count (16+4, 20+4); for more durability, raise the parity-shard count (10+6, 20+5).
  3. Apply EC to the volume — shards are distributed automatically across racks and disks.

Total shards (data + parity) must be less than 32.

Benefits

  • Lower storage cost — custom ratios like 20+4 reduce overhead to 1.2x versus 3x for replication.
  • Predictable performance — O(1) reads regardless of shard count, matching non-EC read latency.
  • Flexible durability — choose the parity level that matches your failure tolerance.
  • Resilient placement — rack-aware and disk-aware (JBOD) shard distribution, with no index loading required.
  • Self-healing integration — combines with Enterprise self-healing for complete data protection.

Want the internals — how O(1) reads work, the full ratio/overhead/tolerance tables, volume-size guidance, and the EC architecture? See the Customizable Erasure Coding technical reference.