Legal claims defining the scope of protection, as filed with the USPTO.
1. An apparatus comprising: a parallel file system; and a plurality of burst buffers collectively configured to provide an interface between the parallel file system and a plurality of compute nodes for accelerating input-output (IO) operations directed to the parallel file system, the plurality of burst buffers being implemented external to the parallel file system; wherein each of the burst buffers comprises a virtual file system component and a metadata server component; wherein the virtual file system components of respective ones of the burst buffers collectively implement a virtual file system; wherein metadata relating portions of the virtual file system to portions of the parallel file system is stored in a distributed manner over the metadata server components of the respective burst buffers; the virtual file system component in a given one of the burst buffers comprising a first portion running in a user space of the given burst buffer and a second portion running in a kernel space of the given burst buffer; the first portion of the virtual file system component in the given burst buffer being configured to process metadata for IO operations received from one or more of the plurality of compute nodes; the second portion of the virtual file system component in the given burst buffer being configured to provide a data path for accessing a memory of the given burst buffer to perform one or more of the IO operations received from one or more of the plurality of compute nodes; and wherein the given burst buffer further comprises: a synchronization component running in the user space of the given burst buffer, the synchronization component being configured to copy files between the parallel file system and a local file system of the memory of the given burst buffer, the local file system running in the kernel space of the given burst buffer; and a memory driver running in the kernel space of the given burst buffer, the memory driver being configured to provide the second portion of the virtual file system component and the metadata component of the given burst buffer with access to the memory of the given burst buffer.
2. The apparatus of claim 1 wherein the virtual file system comprises a parallel log-structured file system (PLFS).
3. The apparatus of claim 2 wherein: the first portion of the virtual file system component in the given burst buffer comprises a PLFS process running in a user space of the given burst buffer; and the second portion of the virtual file system component in the given burst buffer comprises a PLFS stub running in a kernel space of the given burst buffer.
4. The apparatus of claim 1 wherein the parallel file system comprises a Lustre file system and a given one of the burst buffers further comprises: a Lustre client; and a Lustre networking (LNET) module coupled to the Lustre client.
5. The apparatus of claim 1 wherein the metadata server components comprise respective input-output (TO) forwarding servers.
6. The apparatus of claim 5 wherein the compute nodes comprise IO forwarding clients configured to communicate with the IO forwarding servers at least in part utilizing portable operating system interface (POSIX) semantics.
7. The apparatus of claim 1 wherein the metadata is stored in a distributed manner across the metadata server components of the respective burst buffers using a striping mechanism that ensures that a given portion of the metadata is stored on only one of the burst buffers.
8. The apparatus of claim 1 wherein responsive to an TO request from one of the compute nodes a given one of the burst buffers is accessed to obtain metadata for use in processing the request.
9. The apparatus of claim 1 wherein each of the burst buffers comprises: flash memory; and a flash driver configured to provide the virtual file system component and the metadata server component of the given burst buffer with access to the flash memory; wherein each of the burst buffers independently manages its flash memory; and wherein the burst buffers are configured such that data consistency is ensured across the flash memories of the respective burst buffers.
10. The apparatus of claim 9 wherein each of the burst buffers further comprises a file system controller coupled to the flash driver.
11. The apparatus of claim 1 wherein multiple files stored in the parallel file system are associated with a single object stored in the virtual file system.
12. The apparatus of claim 1 wherein the compute nodes comprise respective compute nodes of a supercomputer.
13. The apparatus of claim 1 wherein the parallel file system comprises at least one object storage server tier comprising a plurality of object storage servers each having one or more object storage targets.
14. A processing platform comprising the apparatus of claim 1 .
15. A method comprising: configuring a plurality of burst buffers to collectively provide an interface between a parallel file system and a plurality of compute nodes for accelerating input-output (TO) operations directed to the parallel file system, the plurality of burst buffers being implemented external to the parallel file system; implementing a virtual file system utilizing virtual file system components of respective ones of the burst buffers; and storing metadata relating portions of the virtual file system to portions of the parallel file system in a distributed manner over metadata server components of the respective burst buffers; the virtual file system component in a given one of the burst buffers comprising a first portion running in a user space of the given burst buffer and a second portion running in a kernel space of the given burst buffer; the first portion of the virtual file system component in the given burst buffer being configured to process metadata for IO operations received from one or more of the plurality of compute nodes; the second portion of the virtual file system component in the given burst buffer being configured to provide a data path for accessing a memory of the given burst buffer to perform one or more of the IO operations received from one or more of the plurality of compute nodes; and wherein the given burst buffer further comprises: a synchronization component running in the user space of the given burst buffer, the synchronization component being configured to copy files between the parallel file system and a local file system of the memory of the given burst buffer, the local file system running in the kernel space of the given burst buffer; and a memory driver running in the kernel space of the given burst buffer, the memory driver being configured to provide the second portion of the virtual file system component and the metadata component of the given burst buffer with access to the memory of the given burst buffer.
16. The method of claim 15 wherein storing metadata comprises storing metadata using a striping mechanism that ensures that a given portion of the metadata is stored on only one of the burst buffers.
17. The method of claim 15 further comprising: receiving an IO request from one of the compute nodes; accessing a given one of the burst buffers responsive to the received request to obtain metadata indicating a current hosting burst buffer for corresponding data; and processing the request utilizing the metadata.
18. An article of manufacture comprising a processor-readable storage medium having stored therein program code of one or more software programs, wherein the program code when executed on one or more processing platforms causes the method of claim 15 to be performed.
19. An information processing system comprising: a computer system comprising a plurality of compute nodes; a cluster file system coupled to the computer system and comprising: a parallel file system; and a plurality of burst buffers collectively configured to provide an interface between the parallel file system and the compute nodes for accelerating input-output (TO) operations directed to the parallel file system, the plurality of burst buffers being implemented external to the parallel file system; wherein each of the burst buffers comprises a virtual file system component and a metadata server component; wherein the virtual file system components of respective ones of the burst buffers collectively implement a virtual file system; wherein metadata relating portions of the virtual file system to portions of the parallel file system is stored in a distributed manner over the metadata server components of the respective burst buffers; the virtual file system component in a given one of the burst buffers comprising a first portion running in a user space of the given burst buffer and a second portion running in a kernel space of the given burst buffer; the first portion of the virtual file system component in the given burst buffer being configured to process metadata for IO operations received from one or more of the plurality of compute nodes; the second portion of the virtual file system component in the given burst buffer being configured to provide a data path for accessing a memory of the given burst buffer to perform one or more of the IO operations received from one or more of the plurality of compute nodes; and wherein the given burst buffer further comprises: a synchronization component running in the user space of the given burst buffer, the synchronization component being configured to copy files between the parallel file system and a local file system of the memory of the given burst buffer, the local file system running in the kernel space of the given burst buffer; and a memory driver running in the kernel space of the given burst buffer, the memory driver being configured to provide the second portion of the virtual file system component and the metadata component of the given burst buffer with access to the memory of the given burst buffer.
20. The system of claim 19 wherein the virtual file system comprises a PLFS and the metadata server components comprise respective IO forwarding servers.
Unknown
August 14, 2018
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.