One coded track fans out into 20 slices across a group. Any 7 recover it.
The group is the unit of trust
A group does two jobs: it holds data, and it votes. When a group receives a track’s slices, each member signs receipt. A supermajority (14 of the 20 members) gets aggregated into a single BLS signature, and that one signature lands on-chain to certify your data as available (what certification promises, how the chain checks it). The same pattern approves network-wide decisions: spool assignments, snapshots, parameter changes. When a group of independent, staked machines agrees on a result, the chain accepts it.Which group gets your data
You don’t choose, and neither does anyone else. When a track is registered, the Solana program assigns it to whichever group currently holds the fewest bytes. Clients can’t steer data toward friendly nodes, and load stays balanced without a scheduler. The assignment is recorded on-chain. Finding your data later is a lookup: the track names its group, and the group names its nodes.Who hosts the spools
Spools change hands at epoch boundaries, and nobody is trusted to hand them out.1
Everyone computes the same answer
Each epoch, every node independently computes the next epoch’s complete spool assignment from on-chain randomness and the current stake weights. The allocation uses D’Hondt-style proportional assignment, deterministic to the byte and built to move as few spools as possible while tracking stake.
2
The answer is voted on
Nodes confirm the computed assignment group by group. Within each group, members exchange signatures, and one aggregate per group lands on-chain. Once every live group has approved, the assignment is canonical for the next epoch.
3
Then it takes effect
Spools that changed owners are transferred or recovered during the epoch’s sync phase, before serving begins. A spool that moved away stays on its previous owner for a safety window (accepting no new slices), so migration never races durability.
If you know Ceph, its placement groups are a good first mental model: a layer of indirection between data and disks, so placement scales. The mechanics differ from there. Ceph computes placement with CRUSH hashing against a cluster map that monitors maintain. Tapedrive derives placement from stake weights and on-chain randomness, every node computes it independently, and the result only counts once the groups have voted it in on Solana.