Data storage system with data storage devices operative to manage storage device functions specific to a particular data storage device

US9952769B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9952769-B2
Application numberUS-201615141771-A
CountryUS
Kind codeB2
Filing dateApr 28, 2016
Priority dateSep 14, 2015
Publication dateApr 24, 2018
Grant dateApr 24, 2018

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Operations of a variety of components of a storage system stack are redefined to make the system more efficient when the underlying media has a “multi-log” type interface such as the case with NAND flash SSD memory or shingled magnetic recording media. The responsibilities of components of the storage system stack are modified such that each responsibility is performed at the most efficient component (level of abstraction) of the storage stack.

First claim

Opening claim text (preview).

We claim: 1. A method of improving utilization of a computer-implemented data storage system that includes one or more data storage devices, comprising: associating the one or more data storage devices with a data storage system host layer; querying the one or more data storage devices for device configuration information; determining one or more data storage device management functions that are applicable to the one or more data storage devices; determining one or more data storage device management functions that are particular to a given one of the one or more data storage devices; assigning data storage device management functions that are particular to the given one of the one or more data storage devices to the given one of the one or more data storage devices; and assigning data storage device management functions that are not particular to the given one of the one or more data storage devices to the data storage system host layer. 2. The method of claim 1 , wherein the one or more data storage devices include a data storage device selected from the group consisting of: a solid state storage device, a magnetic recording media device, a shingled magnetic recording device, an optical recording devices, and a magnetic tape recording device. 3. The method of claim 1 , further comprising utilizing the device configuration information for determining the one or more data storage device management functions that are applicable to each of the one or more data storage devices. 4. The method of claim 3 , further comprising passing the device configuration information to a data storage system file system. 5. The method of claim 4 , further comprising utilizing the device configuration information for assigning one or more memory allocation functions to the data storage system file system in association with the one or more data storage devices. 6. The method of claim 1 , further comprising: establishing an interface between the data storage system host layer and the one or more data storage devices, and directing, via the interface, under the command of the data storage system host layer, storage of data to particular storage areas on the one or more data storage devices. 7. The method of claim 6 , wherein directing storage of data to particular storage areas of the one or more data storage devices includes: directing storage of sequential data writes from a first storing application to a first storage area of the one or more data storage devices; directing storage of sequential data writes from a second storing application to a second storage area of the one of more data storage devices; wherein the sequential data writes from the first storing application are stored separately from the sequential data writes from the second storing application. 8. The method of claim 7 , wherein directing storage of data to particular storage areas on the given one of the one or more data storage devices includes converting one or more file system storage area allocations into one or more actual storage allocations on the given one of the one or more data storage devices. 9. The method of claim 1 , further comprising applying by the data storage system host layer one or more data storage policies for managing data storage on each of one or more data storage devices operating in the data storage system. 10. The method of claim 9 , wherein applying one or more data storage policies includes applying a policy for causing the one or more data storage devices to erase a data storage area immediately before returning data storage operation to the data storage system host layer when the data storage system host layer deallocates the storage area. 11. The method of claim 9 , wherein during storage reallocation of a data storage area on the one or more data storage devices by the data storage system host layer, applying one or more data storage policies includes applying a policy for causing an immediate erase of a previously de-allocated block or zone into which data storage is allocated when the data storage system host layer indicates it is going to allocate the storage area for data storage, but where there are no currently available erase blocks or zones in the storage area. 12. The method of claim 9 , wherein applying one or more data storage policies includes applying a policy for causing the one or more data storage devices to erase de-allocated but not erased blocks or zones during an idle period when the one or more data storage devices detect an idle period in which no current data read, write, or erase operation is in progress. 13. A improved data storage system, comprising: a file system operative to control data storage to one or more data storage devices and manage allocation of storage areas on the one or more data storage devices for storage of data; a data storage system host layer operative to translate communications between the file system and the one or more data storage devices; a block allocator interface operative, at the direction of the data storage system host layer, to direct the storage of data to particular storage areas on the one or more data storage devices; and each of the one or more data storage devices operative to manage storage device functions that are particular to their own device storage configurations. 14. The data storage system of claim 13 , wherein the data storage system host layer is further operative to manage one or more storage device functions that are not particular to a given one of the one or more data storage devices, wherein said one or more storage device functions are generally applicable to each of the one or more data storage devices. 15. The data storage system of claim 14 , wherein the block allocator interface is further operative to cause the storage of sequential data writes to small multiple storage areas on the one or more data storage devices instead of storage of data to large contiguous regions of the one or more data storage devices. 16. A method of improving utilization of a data storage system, comprising: associating a first data storage device with a data storage system host layer; determining one or more data storage device management functions that are particular to the first data storage device; determining one or more data storage device management functions that are not particular to the first data storage device; assigning the one or more data storage device management functions that are particular to the first data storage device to the first data storage device; assigning the one or more data storage device management functions that are not particular to the first data storage device to the data storage system host layer; establishing an interface between the data storage system host layer and the first data storage device; applying, via the interface, one or more data storage policies for managing data storage on the first data storage device; and directing, via the interface, under the command of the data storage system host layer, storage of data to particular storage areas on the first data storage device. 17. The method of claim 16 , wherein determining the one or more data storage device management functions that are not particular to the first data storage device includes determining one or more data storage device management functions that are applicable to one or more different data storage devices. 18. The method of claim 17 , further comprising assigning the one or more data storage device management functions that are particular to the one or more different data stora

Assignees

Inventors

Classifications

  • G06F3/061Primary

    Improving I/O performance · CPC title

  • Improving the reliability of storage systems · CPC title

  • Management of files · CPC title

  • Command handling arrangements, e.g. command buffers, queues, command scheduling · CPC title

  • Hybrid storage combining heterogeneous device types, e.g. hierarchical storage, hybrid arrays · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9952769B2 cover?
Operations of a variety of components of a storage system stack are redefined to make the system more efficient when the underlying media has a “multi-log” type interface such as the case with NAND flash SSD memory or shingled magnetic recording media. The responsibilities of components of the storage system stack are modified such that each responsibility is performed at the most efficient com…
Who is the assignee on this patent?
Microsoft Technology Licensing Llc, Microsoft Technology Licensing Llc
What technology area does this patent fall under?
Primary CPC classification G06F3/061. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Apr 24 2018 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 4 related publications on this page (citations in our corpus or others sharing the same primary CPC).