Patent ID: 8433685

Claim:
A multi-node data-storage system comprising: a number C of component-data-storage-system nodes that store data pages of a data object in a mirror and in 0, 1, or more parity-encoded snapshots, the mirror comprising 2 or more replicates including a 0 th replicate and each parity-encoded snapshot containing 1 or more stripes, each stripe including snapshot data pages and snapshot parity pages; and a snapshot operation that generates a next parity-encoded snapshot and transfers data pages of the data object from the mirror to the next-generated parity-encoded snapshot, the snapshot operation distributing each snapshot data page to the node that contained a corresponding 0 th -replicate data page, distributing successive snapshot data pages to successive nodes in a cyclic order with respect to the C nodes, and distributing snapshot data and parity pages to the C nodes so that the data and parity pages of each stripe reside on different nodes and so that the data and parity pages are evenly balanced among the C nodes following distribution of a threshold number of snapshot pages, wherein the data pages of an m th replicate of the mirror are distributed among the C nodes according to node numbers n computed for the data pages, the node number n for a data page with sequence number L computed as: n =( L MOD C )+ m.