Distributed file serving architecture system with metadata storage virtualization and data access at the data server connection speed
AssigneeInternational Business Machines Corporation
InventorsRichard V. Kisley, Philip D. Knight
Life of this patent
Estimating the term…
Abstract
Method, apparatus and program storage device that provides a distributed file serving architecture with metadata storage virtualization and data access at the data server connection speed is provided. A host issues a file access request including data target locations. The file access request including data target locations is processed. Remote direct memory access (RDMA) channel endpoint connection are issued in response to the processing of the file access request. An RDMA transfer of the file-block data associated with the file access request is made directly between a memory at the host and a data server.
Claims19
A data server for use with a network, a host having a memory allocable for servicing a data request, and a metadata server storing metadata associated with data on the data server, the data server, metadata server, and host each being separately connected to the network, the data server, comprising:
- at least one storage device for storing file-block data thereon;
- and a processor, operatively coupled to the storage device, the processor being configured for receiving from a metadata server, over a back control channel of the network between the metadata server and the data server and bypassing the host, input/output operation details based on an input/output request of a host which indicates data locations for direct transfer of data between allocated memory at the host and the data server wherein the input/output operation details received from the metadata server, identifies a memory address of allocated memory at the host and references data for direct transfer between the memory address at the host and the data server, for using the received input/output operation details to establish a direct connection to the memory address at the host identified by the received input/output operation details for transferring file-block data referenced by the received input/output operation details directly between the memory address at the host and the data server, and for using the received input/output operation details to transfer file-block data referenced by the received input/output operation details directly over the direct connection between the memory address of the allocated memory of the host and the at least one storage device to satisfy the input/output request of the host and bypassing the metadata server.
A storage network, comprising:
- a connection network having a back control channel, a host including a first memory allocable for use in processing an input/output request, the host being configured for issuing the input/output request;
- a metadata server, coupled to the host, the metadata server including a second memory for storing metadata associated with file-block data, the metadata server further being configured for receiving the input/output request from the host which indicates data locations for direct transfer of data between allocated memory at the host and the data server and for providing input/output operation details based on the input/output request from the host for processing the input/output request wherein the input/output operation details provided by the metadata server, identifies a memory address of allocated memory at the host and references data for direct transfer;
- and a data server, operatively coupled to the host and the metadata server, the data server including at least one storage device for storing the file-block data thereon, the data server, metadata server, and host each being separately connected to the connection network, the data server being configured for receiving from the metadata server, over the back control channel of the connection network and bypassing the host, the input/output operation details for processing the input/output request wherein the input/output operation details received from the metadata server, identifies a memory address at the host and references data for direct transfer between the memory address at the host and the data server, for using the received input/output operation details to establish a direct connection to the memory address of the allocated memory at the host identified by the input/output operation details from the metadata server for transferring file-block data referenced by the received input/output operation details directly between the memory address at the host and the data server, and for using the received input/output operation details to transfer file-block data referenced by the input/output operation details directly over the direct connection between the identified memory address at the host and the at least one storage device to satisfy the input/output request of the host and bypassing the metadata server.
A storage network, comprising:
- a connection network having a back control channel, a host having allocable memory and being configured for issuing a file access request;
- a metadata server, coupled to the host, the metadata server having memory and being configured for receiving the file access request from the host and for providing data block information based on the file access request;
- and a data server, operatively coupled to the host, the data server including at least one storage device for storing file-block data thereon, the data server, metadata server, and host each being separately connected to the connection network, the data server being configured for receiving from the metadata server, over the back control channel of the connection network and bypassing the host, the input/output operation details identifying memory locations of allocated memory at the host and for using the received input/output operation details to transfer file-block data directly between the identified memory location at the host and the at least one storage device and bypassing the metadata server.
A metadata server for use with a network having a back control channel, a data server and a host having a memory which is allocable, the data server, metadata server, and host each being separately connected to the network, comprising:
- a memory configured for storing metadata associated with data on the data server;
- and a processor configured for receiving an input/output request from the host which indicates data locations for direct transfer of data between allocated memory at the host and the data server and based on the input/output request from the host, issuing to the data server over the back control channel of the network and bypassing the host, input/output operation details identifying host memory locations of allocated memory at the host based on the metadata for the data server to use the received input/output operation details to transfer file-block data directly between the memory locations at the host and the data server and bypassing the metadata server.
Dependencies are inferred from the claim text.