Massively scalable object storage system
US-2016197996-A1 · Jul 7, 2016 · US
US10795584B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-10795584-B2 |
| Application number | US-201916254721-A |
| Country | US |
| Kind code | B2 |
| Filing date | Jan 23, 2019 |
| Priority date | Oct 10, 2010 |
| Publication date | Oct 6, 2020 |
| Grant date | Oct 6, 2020 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
A data storage device is presented that includes a plurality of storage drives each comprising an associated drive Peripheral Component Interconnect Express (PCIe) interface. The data storage device also includes a control system configured to receive, over a host PCIe link, write operations for storage of data by the data storage device. The control system is configured to process the write operations against storage allocation information to apportion the data for storage among more than one of the storage drives, and transfer corresponding portions of the data to associated storage drives over corresponding drive PCIe interfaces.
Opening claim text (preview).
What is claimed is: 1. A data storage device, comprising: a plurality of storage drives each comprising an associated drive Peripheral Component Interconnect Express (PCIe) interface; and a control system configured to: receive, over a host PCIe link, write operations for storage of data by the data storage device; process the write operations against storage allocation information to apportion the data for storage among more than one of the storage drives based at least on processing the data against the storage allocation information to determine target storage drives to store the data; and transfer corresponding portions of the data to associated storage drives over corresponding drive PCIe interfaces. 2. The data storage device of claim 1 , comprising: the storage drives configured to receive the corresponding portions of the data and responsively store the corresponding portions on associated solid state storage media. 3. The data storage device of claim 1 , wherein apportioning the data for storage among more than one of the storage drives comprises parallelizing the data for storage among the more than one of the storage drives. 4. The data storage device of claim 1 , comprising: the control system configured to communicate with a host system over the host PCIe link to receive one or more read operations for retrieving data previously stored by the data storage device; the control system configured to process at least read addresses indicated by the one or more read operations against storage locations indicated by the storage allocation information to determine ones of the storage drives to handle the read operations, and transfer the read operations over the drive PCIe interfaces to associated ones of the storage drives; the storage drives configured to receive associated ones of the read operations, and in response, retrieve read data from the associated solid-state storage media and transfer the read data to the control system for transfer to the host system over the host PCIe link. 5. The data storage system of claim 4 , comprising: based at least on the read data having been apportioned during storage over the more than one of the storage drives, the control system configured to process the read data received from the more than one of the storage drives against the storage allocation information to merge the read data into merged read data, and transfer the merged read data to the host system over the host PCIe link. 6. The data storage device of claim 1 , comprising: the control system configured to apportion the data for storage among the more than one of the storage drives by at least forming the data into at least partially redundant data portions for storage as the portions by an associated storage drives. 7. The data storage device of claim 1 , comprising: a configuration system configured to receive a storage configuration over the host PCIe link, wherein the storage configuration indicates at least a quantity and arrangement of virtual volumes; the control system configured to apply the storage configuration to subdivide the storage drives into a plurality of virtual volumes; the control system configured to present the plurality of virtual volumes as separate drive volumes to a host system over the host PCIe link; wherein storage operations received over the host PCIe link comprise indicators of at least one of the drive volumes for handling of associated data; and the control system configured to apportion the associated data for storage among target storage drives which comprise indicated ones of the virtual volumes. 8. The data storage device of claim 1 , comprising: a power control system configured to receive backup power, detect an interruption in a primary power, and in response provide the backup power to the data storage device; the control system configured to perform a soft power down operation to commit at least pending write instructions and associated write data to at least one of the storage drives in response to the interruption in the primary power; and the control system configured to commit the storage allocation information to non-volatile memory responsive to the soft power down operation. 9. A method comprising: in a control system, receiving, over a host Peripheral Component Interconnect Express (PCIe) link, write operations for storage of data by a data storage device; in the control system, processing the write operations against storage allocation information to apportion the data for storage among more than one of a plurality of storage drives each comprising an associated drive PCIe interface based at least on processing the data against the storage allocation information to determine target storage drives to store the data; and in the control system, transferring corresponding portions of the data to associated storage drives over corresponding drive PCIe interfaces. 10. The method of claim 9 , further comprising: in the storage drives, receiving the corresponding portions of the data and responsively storing the corresponding portions on associated solid state storage media. 11. The method of claim 9 , wherein apportioning the data for storage among more than one of the storage drives comprises parallelizing the data for storage among the more than one of the storage drives. 12. The method of claim 9 , further comprising: in the control system, communicating with a host system over the host PCIe link to receive one or more read operations for retrieving data previously stored by the data storage device; in the control system, processing at least read addresses indicated by the one or more read operations against storage locations indicated by the storage allocation information to determine ones of the storage drives to handle the read operations, and transferring the read operations over the drive PCIe interfaces to associated ones of the storage drives; and in the storage drives, receiving associated ones of the read operations, and in response, retrieving read data from the associated solid-state storage media and transferring the read data to the control system for transfer to the host system over the host PCIe link. 13. The method of claim 12 , further comprising: based at least on the read data having been apportioned during storage over the more than one of the storage drives, in the control system, processing the read data received from the more than one of the storage drives against the storage allocation information to merge the read data into merged read data, and transferring the merged read data to the host system over the host PCIe link. 14. The method of claim 9 , further comprising: in the control system, apportioning the data for storage among the more than one of the storage drives by at least forming the data into at least partially redundant data portions for storage as the portions by an associated storage drives. 15. The method of claim 9 , further comprising: in a configuration system, receiving a storage configuration over the host PCIe link, wherein the storage configuration indicates at least a quantity and arrangement of virtual volumes; in the control system, applying the storage configuration to subdivide the storage drives into a plurality of virtual volumes; in the control system, presenting the plurality of virtual volumes as separate drive volumes to a host system over the host PCIe link; wherein storage operations received over the host PCIe link comprise indicators of at least one of the drive volumes for handling of associated data; and in the control system, apportioning the associate
in relation to throughput · CPC title
Power saving in storage systems · CPC title
Clock generators with changeable or programmable clock frequency · CPC title
using switching circuits, e.g. switching matrix, connection or expansion network (G06F13/4009 takes precedence) · CPC title
Monitoring storage devices or systems · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.