Techniques for dynamically allocating resources in a storage cluster system

US10536396B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10536396-B2
Application numberUS-201715820818-A
CountryUS
Kind codeB2
Filing dateNov 22, 2017
Priority dateFeb 27, 2015
Publication dateJan 14, 2020
Grant dateJan 14, 2020

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.

Various embodiments are directed to techniques for dynamically adjusting a maximum rate of throughput for accessing data stored within a volume of storage space of a storage cluster system based on the amount of that data that is stored within that volume. An apparatus includes an access component to monitor an amount of client data stored within a volume defined within a storage device coupled to a first node, and to perform a data access command received from a client device via a network to alter the client data stored within the volume; and a policy component to limit a rate of throughput at which at least the client data within the volume is exchanged as part of performance of the data access command to a maximum rate of throughput, and to calculate the maximum rate of throughput based on the stored amount.

First claim

Opening claim text (preview).

The invention claimed is: 1. A computing device comprising: a memory comprising instructions for performing a method; and a processor coupled to the memory, the processor configured to execute the instructions to cause the processor to: translate a request for storage services received from a client device into a data access command associated client data by translating between a first protocol used to exchange the client data between a first node and the client device and a second protocol used to exchange the client data between the first node and a first volume of a first storage device; and adjust a rate of throughput of exchanging the client data between the first node and the client device proportional to an amount of data stored within the first volume. 2. The computing device of claim 1 , wherein the instructions cause the processor to: adjust the rate of throughput to decrease a rate of the client device sending the client data to the first node based upon the first volume becoming a threshold amount full. 3. The computing device of claim 1 , wherein the instructions cause the processor to: calculate a first maximum rate of throughput based on a first amount of client data stored within the first volume of the first storage device coupled to the first node of a storage cluster system. 4. The computing device of claim 3 , wherein the instructions cause the processor to: limit the rate of throughput based upon the first maximum rate of throughput. 5. The computing device of claim 1 , wherein the instructions cause the processor to: transmit a replica of the data access command to a second node to enable performance of the replica by the second node to alter client data stored within a second volume within a second storage device coupled to the second node at least partially in parallel with the performance of the data access command, the performances of the data access command and the replica to cause the client data stored within the second volume to mirror the client data stored within the first volume. 6. The computing device of claim 1 , wherein the instructions cause the processor to: reduce duplicate portions of the client data stored within the first volume to enable an increase in a first amount of client data stored within the first volume beyond a limit imposed by a storage capacity specified for the first volume. 7. The computing device of claim 6 , wherein the instructions cause the processor to: determine whether to reduce a first maximum rate of throughput to an upper limit rate of throughput specified for the first volume based on whether the first maximum rate of throughput combined with a second maximum rate of throughput exceeds an overall limit on rate of throughput imposed by the first node, the second maximum rate of throughput based on a second amount of client data stored within a second volume defined within the first storage device. 8. The computing device of claim 3 , wherein the instructions cause the processor to: limit a second rate of throughput of exchanging the client data between the first node and the first volume based upon the first maximum rate of throughput. 9. A computer-implemented method comprising: translating a request for storage services received from a client device into a data access command associated client data by translating between a first protocol used to exchange the client data between a first node and the client device and a second protocol used to exchange the client data between the first node and a first volume of a first storage device; and adjusting a rate of throughput of exchanging the client data between the first node and the client device proportional to an amount of data stored within the first volume. 10. The computer-implemented method of claim 9 , comprising: limiting a second rate of throughput of exchanging the client data between the first node and the first volume. 11. The computer-implemented method of claim 9 , comprising: calculating a first maximum rate of throughput based on a first amount of client data stored within the first volume of the first storage device coupled to the first node of a storage cluster system. 12. The computer-implemented method of claim 11 , comprising: limiting the rate of throughput based upon the first maximum rate of throughput. 13. The computer-implemented method of claim 11 , comprising: recurringly calculating the first maximum rate of throughput in response to passage of a recurring interval of time. 14. The computer-implemented method of claim 12 , comprising: transmitting a replica of the data access command to a second node to enable performance of the replica by the second node to alter client data stored within a second volume within a second storage device coupled to the second node at least partially in parallel with the performance of the data access command, the performances of the data access command and the replica to cause the client data stored within the second volume to mirror the client data stored within the first volume. 15. The computer-implemented method of claim 9 , comprising: reducing duplicate portions of the client data stored within the first volume to enable an increase in a first amount of client data stored within the first volume beyond a limit imposed by a storage capacity specified for the first volume. 16. A non-transitory machine-readable storage medium comprising instructions that when executed by a machine, cause the machine to: translate a request for storage services received from a client device into a data access command associated client data by translating between a first protocol used to exchange the client data between a first node and the client device and a second protocol used to exchange the client data between the first node and a first volume of a first storage device; and adjust a rate of throughput of exchanging the client data between the first node and the client device proportional to an amount of data stored within the first volume. 17. The non-transitory machine-readable storage medium of claim 16 , wherein the instructions cause the machine to: calculate a first maximum rate of throughput based on a first amount of client data stored within the first volume of the first storage device coupled to the first node of a storage cluster system. 18. The non-transitory machine-readable storage medium of claim 17 , wherein the instructions cause the machine to: limit the rate of throughput based upon the first maximum rate of throughput. 19. The non-transitory machine-readable storage medium of claim 17 , wherein the instructions cause the machine to: limit a second rate of throughput of exchanging the client data between the first node and the first volume based upon the first maximum rate of throughput. 20. The non-transitory machine-readable storage medium of claim 16 , wherein the instructions cause the machine to: transmit a replica of the data access command to a second node to enable performance of the replica by the second node to alter client data stored within a second volume within a second storage device coupled to the second node at least partially in parallel with the performance of the data access command, the performances of the data access command and the replica to cause the client data stored within the second volume to mirror the client data stored within the first volume.

Assignees

Inventors

Classifications

  • for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS] · CPC title

  • Determination of shaping rate, e.g. using a moving window · CPC title

  • H04L47/805Primary

    QOS or priority aware · CPC title

  • based on parameters of servers, e.g. available memory or workload (monitoring of computer activity G06F11/30) · CPC title

  • Electricity · mapped topic

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 US10536396B2 cover?
Various embodiments are directed to techniques for dynamically adjusting a maximum rate of throughput for accessing data stored within a volume of storage space of a storage cluster system based on the amount of that data that is stored within that volume. An apparatus includes an access component to monitor an amount of client data stored within a volume defined within a storage device coupled…
Who is the assignee on this patent?
Netapp Inc
What technology area does this patent fall under?
Primary CPC classification H04L47/805. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Jan 14 2020 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 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).