CPC G06F 11/1469 (2013.01) [G06F 11/1464 (2013.01); G06F 11/1471 (2013.01)] | 21 Claims |
1. A method, comprising:
logging I/O operations, received by a node of a distributed storage architecture, into log structures of persistent memory of the node for subsequently updating a distributed file system with metadata of the I/O operations and persisting data of the I/O operations to persistent storage of the distributed storage architecture; and
in response to the node recovering from a failure:
grouping a first set of log structures, of the log structures, into a first group and grouping a second set of log structures, of the log structures, into a second group based upon the first set of log structures having a first processing state and the second set of log structures having a second processing state;
determining a rebuild order based on processing states of the log structures, wherein a first set of in-memory representations are identified as being able to be rebuilt irrespective of the rebuild order based upon the first set of in-memory representations corresponding to the first group, and wherein a second set of in-memory representations are identified for being rebuilt according to the rebuild order based upon the second set of in-memory representations corresponding to the second group;
implementing a rebuild process to rebuild the first set of in-memory representations irrespective of the rebuild order and to rebuild the second set of in-memory representations according to the rebuild order; and
performing a replay operation using one or more of the first set of in-memory representations or the second set of in-memory representations rebuilt by the rebuild process to update the distributed file system with the metadata and persist the data to the persistent storage.
|