1. A fault-tolerant method for distributing a plurality of data records to a plurality of nodes, the method comprising: generating one or more distribution tables, wherein each entry in the one or more distribution tables corresponds to a copy of one of the plurality of the data records and is associated with a fault status, a node, and a group based on a position of the entry within the one or more distribution tables; for each entry in the one or more distribution tables, storing the copy of the data record that corresponds to the entry in a database included in a plurality of databases, wherein the database that the copy of the data record is stored in corresponds to the fault status, the node, and the group based on the position of the corresponding entry; in response to determining one or more unavailable nodes of the plurality of nodes, determining a fault status, a node, and a group based on the one or more unavailable nodes and one or more available nodes of the plurality of nodes; and providing the one or more available nodes access to at least a portion of the copies of data records that are stored in a particular database of the plurality of databases, wherein the particular database corresponds to the determined fault status, the node, and the group.