Patent ID: 8914333

Claim:
A system for storing data, comprising: data-blocks stored on a plurality of distributed devices, wherein each one of the plurality of distributed devices comprises a processor, the plurality of distributed devices are adapted to be connected via a network, the plurality of distributed devices store data-files, the data-files comprising data-elements; the stored data-elements are allocated via the processors to the data-blocks; key-identifiers calculated for each of the data-blocks, the key-identifiers are based on the allocated data-elements of the corresponding data-blocks; distributed tables that store the key-identifiers, the distributed tables are stored on the plurality of distributed devices; index-nodes for the data-files generated based on the data-blocks, the index-nodes comprising a list of the data-blocks, the index-nodes are stored in a metadata-store; and, a Paxos algorithm executed for the index-nodes based on the key-identifiers to provide a consensus of the data-files that are stored on the plurality of distributed devices.