US 9,811,530 B1
Cluster file system with metadata server for storage of parallel log structured file system metadata for a shared file
John M. Bent, Los Alamos, NM (US); Sorin Faibish, Newton, MA (US); and Uday Gupta, Westford, MA (US)
Assigned to EMC IP Holding Company LLC, Hopkinton, MA (US)
Filed by EMC IP Holding Company LLC, Hopkinton, MA (US)
Filed on Jun. 29, 2013, as Appl. No. 13/931,833.
Int. Cl. G06F 17/30 (2006.01)
CPC G06F 17/30194 (2013.01) 21 Claims
OG exemplary drawing
 
1. An apparatus comprising:
a metadata server of a cluster file system, wherein said metadata server comprises at least one hardware processing device coupled to a memory;
the metadata server being configured to communicate with a plurality of object storage servers of the cluster file system over a network;
the metadata server further configured to implement a Parallel Log Structured File System (PLFS) library: (i) to coordinate storage on one or more of said plurality of object storage servers of a plurality of portions of a shared file generated by a plurality of clients executing on compute nodes of said cluster file system, wherein said PLFS library deterministically assigns and returns a separate unique log structured object, on a single one of said object storage servers, to each client of said plurality of clients, allowing each client of said plurality of clients to write to said assigned separate unique log structured object on said assigned single object storage server when writing to said shared file, wherein the assignment of the separate unique log structured object, on a single one of said object storage servers, to each client of said plurality of clients allows the write operations by each client of said plurality of clients to said shared file to be decoupled; and (ii) to store PLFS metadata comprising said assignment of said separate unique log structured object and said single object storage server to each client of said plurality of clients in the metadata server for said plurality of portions of said shared file, wherein requests for said PLFS metadata are processed without utilizing bandwidth of said plurality of object storage servers, wherein said PLFS metadata for a given portion maps a byte range of said portion to an identifier of the separate unique log structured object corresponding to said byte range, and wherein said PLFS metadata is sent to said metadata server in a log structured format.