Distributed file serving architecture system with metadata storage virtualization and data access at the data server connection speed
First Claim
Patent Images
1. A host, comprising:
- a central processing unit for running an application thereon;
memory for storing data therein; and
a host bus adapter, coupled to the memory, the host bus adapter including an adapter processor configured for issuing an input/output request to a metadata server and for enabling direct memory access transfer of data associated with the input/output request directly between the memory and a data server.
1 Assignment
0 Petitions
Accused Products
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.
292 Citations
72 Claims
-
1. A host, comprising:
-
a central processing unit for running an application thereon;
memory for storing data therein; and
a host bus adapter, coupled to the memory, the host bus adapter including an adapter processor configured for issuing an input/output request to a metadata server and for enabling direct memory access transfer of data associated with the input/output request directly between the memory and a data server. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. A metadata server, comprising:
-
memory for storing metadata associated with data on a data server; and
a processor configured for receiving an input/output request from a host and issuing to the data server input/output operation details based on the metadata for transferring file-block data directly between memory at the host and the data server. - View Dependent Claims (15, 16, 17, 18, 19, 20, 21, 22, 23)
-
-
24. A 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 input/output operation details associated with an input/output request of a host, for establishing a direct connection to a memory address at the host identified by the received input/output operation details, and for transferring file-block data referenced by the received input/output operation details directly between the memory address of the host and the at least one storage device. - View Dependent Claims (25, 26, 27, 28, 29, 30, 31)
-
-
32. A storage network, comprising:
-
a host including a first memory 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 and for providing input/output operation details for processing the input/output request; 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 being configured for receiving from the metadata server the input/output operation details for processing the input/output request, for establishing a direct connection to a memory address at the host identified by the input/output operation details from the metadata server, and for transferring file-block data referenced by the input/output operation details directly between the identified memory location at the host and the at least one storage device. - View Dependent Claims (33, 34, 35, 36, 37)
-
-
38. A storage network, comprising:
-
a host being configured for issuing a file access request;
a metadata server, coupled to the host, the metadata server being configured for receiving the file access request from the host and for providing to the host data block information associated with 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 being configured for receiving commands identifying memory locations and for transferring file-block data directly between the identified memory location at the host and the at least one storage device. - View Dependent Claims (39, 40, 41)
-
-
42. A program storage device readable by a computer, the medium tangibly embodying one or more programs of instructions executable by the computer to perform a method for making data access at data server connection speed in a distributed file serving architecture with metadata storage virtualization, the method comprising:
-
issuing an input/output request to a metadata server; and
transferring data associated with the input/output request directly between the memory and a data server. - View Dependent Claims (43, 44, 45, 46, 47, 48, 49)
-
-
50. A program storage device readable by a computer, the medium tangibly embodying one or more programs of instructions executable by the computer to perform a method for enabling data access at data server connection speed in a distributed file serving architecture with metadata storage virtualization, the method comprising:
-
storing metadata associated with data on a data server; and
in response to an input/output request, issuing to the data server input/output operation details based on the metadata for transferring file-block data directly between memory at a host and the data server. - View Dependent Claims (51, 52, 53, 54, 55)
-
-
56. A program storage device readable by a computer, the medium tangibly embodying one or more programs of instructions executable by the computer to perform a method for providing data access at data server connection speed in a distributed file serving architecture with metadata storage virtualization, the method comprising storing file-block data on a data server comprising at least one storage device;
-
receiving at a data server input/output operation details associated with an input/output request of a host from a metadata server;
establishing a direct connection from the data server to a memory address at the host identified by the received input/output operation details; and
transferring file-block data referenced by the received input/output operation details directly between the memory address of the host and the data server. - View Dependent Claims (57, 58, 59, 60, 61)
-
-
62. A program storage device readable by a computer, the medium tangibly embodying one or more programs of instructions executable by the computer to perform a method for providing a distributed file serving architecture with metadata storage virtualization and data access at data server connection speed, the method comprising:
-
issuing from a host a file access request including data target locations;
processing the file access request including data target locations;
issuing a remote direct memory access channel endpoint connection in response to the processing the file access request including data target locations; and
transferring file-block data associated with the file access request directly between a memory at the host and a data server. - View Dependent Claims (63, 64, 65, 66)
-
-
67. A host, comprising:
-
means for running an application thereon;
memory means for storing data therein; and
processing means configured for issuing an input/output request to a metadata server and for enabling direct memory access transfer of data associated with the input/output request directly between the memory and a data server.
-
-
68. A metadata server, comprising:
-
means for storing metadata associated with data on a data server; and
means for receiving an input/output request from a host and issuing to the data server input/output operation details based on the metadata for transferring file-block data directly between memory at the host and the data server.
-
-
69. A data server, comprising:
-
means for storing file-block data thereon; and
means, operatively coupled to the means for storing, for receiving from a metadata server input/output operation details associated with an input/output request of a host, for establishing a direct connection to a memory address at the host identified by the received input/output operation details, and for transferring file-block data referenced by the received input/output operation details directly between the memory address of the host and the at least one storage device.
-
-
70. A storage network, comprising:
-
hosting means including first memory means for use in processing an input/output request, the host being configured for issuing the input/output request;
metadata means, coupled to the hosting means, the metadata means including a second memory means for storing metadata associated with file-block data, the metadata means further being configured for receiving the input/output request from the hosting and for providing input/output operation details for processing the input/output request; and
a data means, operatively coupled to the hosting and the metadata means, the data means including at least one storage means for storing the file-block data thereon, the data means being configured for receiving from the metadata server the input/output operation details for processing the input/output request, for establishing a direct connection to a memory address at the hosting means identified by the input/output operation details from the metadata means, and for transferring file-block data referenced by the input/output operation details directly between the identified memory location at the hosting means and the data means.
-
-
71. A storage network, comprising:
-
hosting means for issuing a file access request;
metadata means, coupled to the hosting means, the metadata means receiving the file access request from the host and providing to the host data block information associated with the file access request; and
data means, operatively coupled to the hosting means, the data means including at least one storage means for storing file-block data thereon, the data means receiving commands identifying memory locations and transferring file-block data directly between the identified memory location at the hosting means and the data means.
-
-
72. A method for providing a distributed file serving architecture with metadata storage virtualization and data access at data server connection speed, comprising:
-
issuing from a host a file access request including data target locations;
processing the file access request including data target locations;
issuing a remote direct memory access channel endpoint connection in response to the processing the file access request including data target locations; and
transferring file-block data associated with the file access request directly between a memory at the host and a data server.
-
Specification