Updating of pinned storage in flash based on changes to flash-to-disk capacity ratio

US10409508B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10409508-B2
Application numberUS-201715628374-A
CountryUS
Kind codeB2
Filing dateJun 20, 2017
Priority dateMay 18, 2015
Publication dateSep 10, 2019
Grant dateSep 10, 2019

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.

Methods, systems, and programs are presented for managing a storage device memory. One method includes an operation for receiving a request to pin a volume stored in the storage device. The device includes disk storage and a solid state drive (SSD) cache, where pinned volumes in the storage device have all active volume data in the SSD cache. Further, the method includes an operation for determining the maximum amount of pinnable space in the SSD cache, the maximum amount of pinnable space being calculated based on the sizes of the disk storage and the SSD cache. Further, the method includes operations for determining the available pinning space, which is the maximum amount of pinnable space minus the current amount of pinned data in the SSD cache, and for granting the request to pin the volume when the available pinning space is greater than or equal to a size of the volume.

First claim

Opening claim text (preview).

What is claimed is: 1. A method for managing memory allocation in a network storage device, the method comprising: calculating, by a processor, an amount of pinnable storage space in a cache of a network storage device after reserving a space in the cache for caching, the network storage device including the cache and other storage to store one or more volumes, wherein pinned volumes of the one or more volumes of the other storage are to have all active volume data cached in the cache; detecting, by the processor, a change in an amount of the other storage in the network storage device; determining an updated capacity of the other storage; determining an updated ratio of a capacity of the cache to the capacity of the other storage based on the updated capacity of the other storage; recalculating the reserved space in the cache based on the updated capacity of the other storage to update the reserved space in the cache for caching, wherein an updated remaining space in the cache is based on the updated reserved space in the cache; updating the amount of pinnable storage space in the cache based on the updated capacity of the other storage and the updated ratio; and in response to a determination that a total amount of pinned data is greater than the updated amount of pinnable storage space in the cache, disabling, by the processor, a number of the pinned volumes in the network storage device to bring the total amount of pinned data to below the updated amount of pinnable storage space. 2. The method of claim 1 , wherein updating the amount of pinnable storage space in the cache comprises: determining the updated amount of pinnable storage space in the cache based on the updated remaining space. 3. The method of claim 2 , further comprising: setting the updated amount of pinnable storage space to zero when the updated amount of pinnable storage space initially determined is negative; and disabling pinning to the cache of volumes stored in the other storage. 4. The method of claim 2 , wherein: the recalculating the reserved space comprises recalculating the reserved space in the cache based on a first proportion of the updated disk capacity of the other storage; the determining the updated amount of pinnable storage space comprises determining the updated amount of pinnable storage space based on a second proportion of the updated remaining space. 5. The method of claim 1 , wherein the disabling the number of pinned volumes includes at least one of: iteratively unpinning pinned volumes of lowest priority until the amount of pinned volumes updated to reflect one or more unpinned volumes is lower than the updated amount of pinnable storage space; or disabling pinning of all currently pinned volumes. 6. The method of claim 1 , wherein the cache is a solid state drive (SSD) cache. 7. The method of claim 6 , wherein the other storage is disk storage. 8. The method of claim 1 , wherein: the updated ratio of the capacity of the cache to the capacity of the other storage is the capacity of the cache divided by the updated capacity of the other storage. 9. A non-transitory computer-readable medium storing a computer program for upgrading a data storage system, the computer program being executable to cause a processor to: calculate an amount of pinnable storage space in a cache of a network storage device after reserving a space in the cache for caching, the network storage device including the cache and other storage to store one or more volumes, wherein pinned volumes of the one or more volumes of the other storage are to have all active volume data cached in the cache; detect a change in an amount of the other storage in the network storage device; determine an updated capacity of the other storage; determine an updated ratio of a capacity of the cache to the capacity of the other storage, based on the updated capacity of the other storage; recalculate the reserved space in the cache based on the updated capacity of the other storage to update the reserved space in the cache for caching, wherein an updated remaining space in the cache is based on the updated reserved space; update the amount of pinnable storage space in the cache based on the updated capacity of the other storage and the updated ratio; and in response to a determination that a total amount of pinned data is greater than the updated amount of pinnable storage space in the cache, disable a number of the pinned volumes in the network storage device to bring the total amount of pinned data to below the updated amount of pinnable storage space. 10. The non-transitory computer-readable medium of claim 9 , wherein the computer program is executable to cause the processor to: set the updated amount of pinnable storage space to zero when the updated amount of pinnable storage space initially determined is negative; and disable pinning to the cache of volumes stored in the other storage. 11. The non-transitory computer-readable medium of claim 7 , wherein the computer program is executable to cause the processor to: disable pinning of all currently pinned volumes. 12. The non-transitory computer-readable medium of claim 7 , wherein the computer program is executable to cause the processor to: iteratively unpin pinned volumes of lowest priority until the amount of pinned volumes updated to reflect one or more unpinned volumes is lower than the updated amount of pinnable storage space. 13. The non-transitory computer-readable medium of claim 9 , wherein the cache is a solid state drive (SSD) cache. 14. The non-transitory computer-readable medium of claim 13 , wherein the other storage is disk storage. 15. The non-transitory computer-readable medium of claim 9 , wherein: the updated ratio of the capacity of the cache to the capacity of the other storage is the capacity of the cache divided by the updated capacity of the other storage. 16. A network storage device comprising: a cache; other storage, different than the cache, to store one or more volumes, wherein pinned volumes of the one or more volumes of the other storage are to have all active volume data cached in the cache; a processor; and a non-transitory computer readable medium storing instructions that are executable to cause the processor to: calculate an amount of pinnable storage space in the cache after reserving a space in the cache for caching; detect a change in an amount of the other storage in the network storage device; determine an updated capacity of the other storage; determine an updated ratio of a capacity of the cache to the capacity of the other storage, based on the updated capacity of the other storage; recalculate the reserved space in the cache based on the updated capacity of the other storage to update the reserved space in the cache for caching, wherein an updated remaining space in the cache is based on the updated reserved space; update the amount of pinnable storage space in the cache based on the updated capacity of the other storage and the updated ratio; and in response to a determination that a total amount of pinned data is greater than the updated amount of pinnable storage space in the cache, disable a number of the pinned volumes in the network storage device to bring the total amount of pinned data to below the updated amount of pinnable storage space. 17. The network storage device of claim 16 , wherein the instructions to disable are executable to cause the processor to at least one of: iteratively unpin pinned volumes of the lowest priority until the amount of pinned volumes u

Assignees

Inventors

Classifications

  • Temporary buffering, e.g. using volatile buffer or dedicated buffer blocks · CPC title

  • Data buffering arrangements · CPC title

  • Hybrid memory, e.g. using both volatile and non-volatile memory · CPC title

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

  • Improving or facilitating administration, e.g. storage management · 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 US10409508B2 cover?
Methods, systems, and programs are presented for managing a storage device memory. One method includes an operation for receiving a request to pin a volume stored in the storage device. The device includes disk storage and a solid state drive (SSD) cache, where pinned volumes in the storage device have all active volume data in the SSD cache. Further, the method includes an operation for determ…
Who is the assignee on this patent?
Hewlett Packard Entpr Dev Lp
What technology area does this patent fall under?
Primary CPC classification G06F3/0631. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Sep 10 2019 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 2 related publications on this page (citations in our corpus or others sharing the same primary CPC).