Techniques for dynamically allocating resources in a storage cluster system

US9843536B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9843536-B2
Application numberUS-201514744522-A
CountryUS
Kind codeB2
Filing dateJun 19, 2015
Priority dateFeb 27, 2015
Publication dateDec 12, 2017
Grant dateDec 12, 2017

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 device 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 device data stored within the volume; and a policy component to limit a rate of throughput at which at least the client device 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 containing a storage medium 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: monitor a first amount of client device data stored within a first volume defined within a first storage device coupled to a first node of a storage cluster system; perform a data access command received from a client device via a network to alter the client device data stored within the first volume; calculate a first maximum rate of throughput based on the first amount; and limit a rate of throughput of exchange of the client device data within the first volume to the first maximum rate during performance of the data access command. 2. The computing device of claim 1 , wherein the instructions cause the processor to: translate a request for storage services received from the client device into the data access command; translate between a first protocol employed in a first exchange of the client device data between the first node and the client device and a second protocol employed in a second exchange of the client device data between the first node and the first storage device that corresponds to the first exchange; and limit a rate of throughput of one of the first exchange and the second exchange to the first maximum rate of throughput. 3. The computing device of claim 1 , wherein the instructions cause the processor to: calculate the first maximum rate of throughput from the first amount and from a rate of throughput specified for the first volume as a ratio between the first amount and a rate of throughput per amount of client device data stored within the first volume in configuration data provided to the first node by a configuration device. 4. The computing device of claim 3 , wherein the instructions cause the processor to: recurringly calculate the first maximum rate of throughput in response to passage of a recurring interval of time. 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 of the storage cluster system-via the network to enable performance of the replica by the second node to alter the client device 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 device data stored within the second volume to mirror the client device 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 device data stored within the first volume to enable an increase in the first amount 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: compare the first maximum rate of throughput to an upper limit rate of throughput specified for the first volume; determine that the first maximum rate of throughput exceeds the upper limit rate of throughput; and determine whether to reduce the first maximum rate of throughput to the upper limit rate of throughput based on whether the first maximum rate of throughput combined with at least a second maximum rate of throughput exceeds an overall limit on rate of throughput imposed by at least one component of the first node, the second maximum rate of throughput based on at least a second amount of client device data stored within a second volume defined within the first storage device. 8. The computing device of claim 7 , wherein the instructions cause the processor to: transmit to a configuration device, coupled to the first node by an interface, via the interface an indication of the first amount and the first maximum rate of throughput. 9. A computer-implemented method comprising: monitoring a first amount of client device data stored within a first volume defined within a first storage device coupled to a first node of a storage cluster system; performing a data access command received from a client device via a network to alter the client device data stored within the first volume; calculating a first maximum rate of throughput based on the first amount; and limiting a rate of throughput of exchange of the client device data within the first volume to the first maximum rate during performance of the data access command. 10. The computer-implemented method of claim 9 , comprising: translating a request for storage services received from the client device into the data access command; translating between a first protocol employed in a first exchange of the client device data between the first node and the client device and a second protocol employed in a second exchange of the client device data between the first node and the first storage device that corresponds to the first exchange; and limiting a rate of throughput of one of the first exchange and the second exchange to the first maximum rate of throughput. 11. The computer-implemented method of claim 9 , comprising transmitting a replica of the data access command to a second node of the storage cluster system via the network to enable performance of the replica by the second node to alter the client device 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 device data stored within the second volume to mirror the client device data stored within the first volume. 12. The computer-implemented method of claim 9 , comprising recurringly calculating the first maximum rate of throughput in response to at least one of each passage of a recurring interval of time or completion of performance of each data access command that changes the first amount, the first maximum rate of throughput calculated from the first amount and from a rate of throughput specified for the first volume as a ratio between the first amount and a rate of throughput per amount of client device data stored within the first volume in configuration data provided to the first node by a configuration device. 13. The computer-implemented method of claim 12 , wherein: the configuration data is generated by the configuration device from selections made by an operator of a level of quality of service (QoS) for the first volume, a storage capacity for the first volume, and at least one component of the first node in response to a presentation by the configuration device of an assortment of levels of QoS, an assortment of storage capacities and an assortment of components on a display; each level of QoS is associated with a rate of throughput specified as a ratio between an amount of client device data stored and a rate of throughput per amount of client device data stored; the configuration device recurringly calculates the first maximum rate of throughput based on the rate of throughput associated with the selected level of QoS and the selected storage capacity of the first volume, and determines whether the at least one selected component is able to support the first maximum rate of throughput; and the configuration device presents an indication on the display of an inability of the at least one selected component to support the combination of selected level of QoS and selected storage capacity of the first volume

Assignees

Inventors

Classifications

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

  • H04L47/805Primary

    QOS or priority aware · CPC title

  • 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

  • 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 US9843536B2 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 device data stored within a volume defined within a storage device …
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 Dec 12 2017 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).