Distributed storage over shared multi-queued storage device
First Claim
Patent Images
1. A method for data storage, comprising:
- in a system that comprises one or more storage controllers, multiple servers and multiple multi-queue storage devices, assigning in each storage device server-specific queues for queuing data-path storage commands exchanged with the respective servers; and
exchanging at least some of the data-path storage commands directly between the servers and the storage devices, not via the storage controllers, to be queued and executed in accordance with the corresponding server-specific queues,wherein exchanging the data-path storage commands comprises accessing the storage devices by;
locally-caching in a given server, or looking-up in the storage controllers by the given server, at least a portion of a volume map that specifies user volumes for use by the servers; and
accessing the storage devices by the given server, by querying the locally-cached or looked-up volume map.
2 Assignments
0 Petitions
Accused Products
Abstract
A method for data storage includes, in a system that includes one or more storage controllers, multiple servers and multiple multi-queue storage devices, assigning in each storage device server-specific queues for queuing data-path storage commands exchanged with the respective servers. At least some of the data-path storage commands are exchanged directly between the servers and the storage devices, not via the storage controllers, to be queued and executed in accordance with the corresponding server-specific queues.
52 Citations
15 Claims
-
1. A method for data storage, comprising:
-
in a system that comprises one or more storage controllers, multiple servers and multiple multi-queue storage devices, assigning in each storage device server-specific queues for queuing data-path storage commands exchanged with the respective servers; and exchanging at least some of the data-path storage commands directly between the servers and the storage devices, not via the storage controllers, to be queued and executed in accordance with the corresponding server-specific queues, wherein exchanging the data-path storage commands comprises accessing the storage devices by; locally-caching in a given server, or looking-up in the storage controllers by the given server, at least a portion of a volume map that specifies user volumes for use by the servers; and accessing the storage devices by the given server, by querying the locally-cached or looked-up volume map. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A computing system, comprising:
-
one or more storage controllers, which are configured to assign in each of multiple multi-queue storage devices server-specific queues for queuing data-path storage commands exchanged with multiple servers; and multiple processors, which are comprised in the respective servers and are configured to exchange at least some of the data-path commands directly between the servers and the storage devices, not via the storage controllers, to be queued and executed in accordance with the corresponding server-specific queues, wherein a given processor in a given server is configured to locally-cache, or look-up in the storage controllers, at least a portion of a volume map that specifies user volumes for use by the servers, and to access the storage devices by querying the locally-cached or looked-up volume map. - View Dependent Claims (10, 11, 12, 13, 14, 15)
-
Specification