Storage resource management employing performance analytics

US9971548B1 · US · B1

Patent metadata
FieldValue
Publication numberUS-9971548-B1
Application numberUS-201715451013-A
CountryUS
Kind codeB1
Filing dateMar 6, 2017
Priority dateMar 6, 2017
Publication dateMay 15, 2018
Grant dateMay 15, 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.

Performance of a computing system is improved by avoiding and/or eliminating overload conditions in storage systems. Performance utilization calculations are used to predict that a candidate placement configuration of storage resources within the storage systems will avoid overload conditions. The performance utilization calculations use performance profiles in conjunction with workload profiles to account for both storage system performance and actual workload traffic. Performance utilization calculations can also be used to report storage controller utilization information.

First claim

Opening claim text (preview).

What is claimed is: 1. A method comprising: generating by a storage resource manager a performance profile for a destination storage controller, wherein the performance profile comprises peak read input/output operations per second (IOPS) values for at least two different read input/output (I/O) request block sizes and peak write IOPS values for at least two different write I/O request block sizes; generating by the storage resource manager a workload profile for the destination storage controller, wherein the workload profile comprises contribution values for each of the at least two different read I/O request block sizes and contribution values for each of the at least two different write I/O request block sizes; calculating by the storage resource manager a performance utilization value for the destination storage controller using the performance profile and the workload profile; selecting by the storage resource manager a new placement configuration for a storage resource using the performance utilization value, wherein the new placement specifies adding the storage resource to the destination storage controller; and directing by the storage resource manager, in response to selecting the new placement configuration, the destination storage controller to perform a system management action to add the storage resource to the destination storage controller, wherein calculating the performance utilization value for the destination storage controller comprises: calculating a peak total read IOPS value according to a sum of products, wherein each product is calculated by multiplying a peak read IOPS value for each of the at least two different read I/O request block sizes by a corresponding ratio, wherein the ratio is calculated by dividing a read contribution value for the I/O request block size by a sum of read contribution values summed over a set of read I/O request block sizes; calculating a peak total write IOPS value according to a sum of products, wherein each product is calculated by multiplying a peak write IOPS value for each of the at least two different write I/O request block sizes by a corresponding ratio, wherein the ratio is calculated by dividing a write contribution value for the I/O request block size by a sum of write contribution values summed over a set of write I/O request block sizes; assigning a peak net IOPS value to be either a sum of the peak total read IOPS value and the peak total write IOPS value, or a weighted minimum of the peak total read IOPS value and the peak total write IOPS value; and calculating a ratio of total IOPS at the destination storage controller and the peak net IOPS value. 2. The method of claim 1 , wherein the set of read I/O request block sizes comprises each valid read I/O request block size for the destination storage controller and the set of write I/O request block sizes comprises each valid write I/O request block size for the destination storage controller. 3. The method of claim 1 , wherein the set of read I/O request block sizes comprises one read I/O request block size and the set of write I/O request block sizes comprises one write I/O request block size. 4. The method of claim 1 , wherein the at least two different read I/O request block sizes comprise at least a four kilobyte I/O request block size and an eight kilobyte I/O request block size, and the at least two different write I/O request block sizes comprise at least a four kilobyte I/O request block size and an eight kilobyte I/O request block size. 5. An apparatus, comprising: a computing system coupled to a storage controller, the computing system configured to: generate by a storage resource manager a performance profile for a destination storage controller, wherein the performance profile comprises peak read input/output operations per second (IOPS) values for at least two different read input/output (I/O) request block sizes and peak write IOPS values for at least two different write I/O request block sizes; generate by the storage resource manager a workload profile for the destination storage controller, wherein the workload profile comprises contribution values for each of the at least two different read I/O request block sizes and contribution values for each of the at least two different write I/O request block sizes; calculate by the storage resource manager a performance utilization value for the destination storage controller using the performance profile and the workload profile; select by the storage resource manager a new placement configuration for a storage resource using the performance utilization value, wherein the new placement specifies adding the storage resource to the destination storage controller; and direct by the storage resource manager, in response to selecting the new placement configuration, the destination storage controller to perform a system management action to add the storage resource to the destination storage controller, wherein to calculate the performance utilization value for the storage controller, the computing system is configured to: calculate a peak total read IOPS value according to a sum of products, wherein each product is calculated by multiplying a peak read IOPS value for each of the at least two different read I/O request block sizes by a corresponding ratio, wherein the ratio is calculated by dividing a read contribution value for the I/O request block size by a sum of read contribution values summed over a set of read I/O request block sizes; calculate a peak total write IOPS value according to a sum of products, wherein each product is calculated by multiplying a peak write IOPS value for each of the at least two different write I/O request block sizes by a corresponding ratio, wherein the ratio is calculated by dividing a write contribution value for the I/O request block size by a sum of write contribution values summed over a set of write I/O request block sizes; assign a peak net IOPS value to be either a sum of the peak total read IOPS value and the peak total write IOPS value, or a weighted minimum of the peak total read IOPS value and the peak total write IOPS value; and calculate a ratio of total IOPS at the storage controller and the peak net IOPS value. 6. The apparatus of claim 5 , wherein the set of read I/O request block sizes comprises each valid read I/O request block size for the destination storage controller and the set of write I/O request block sizes comprises each valid write I/O request block size for the destination storage controller. 7. The apparatus of claim 5 , wherein the set of read I/O request block sizes comprises one read I/O request block size and the set of write I/O request block sizes comprises one write I/O request block size. 8. The apparatus of claim 5 , wherein the at least two different read I/O request block sizes comprise at least a four kilobyte I/O request block size and an eight kilobyte I/O request block size, and the at least two different write I/O request block sizes comprise at least a four kilobyte I/O request block size and an eight kilobyte I/O request block size. 9. A method comprising: generating by a storage resource manager a source performance profile for a source storage controller, wherein the source performance profile comprises source peak read input/output operations per second (IOPS) values for at least two different read input/output (I/O) request block sizes for the source storage controller and source peak write IOPS values for at least two different write I/O request block sizes for the source storage controller; generating by a storage resource manager a destination performance profile for a destination storage controller, wherein the destination performance profile comprises des

Assignees

Inventors

Classifications

  • G06F3/067Primary

    Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS] · CPC title

  • Migration mechanisms · CPC title

  • in relation to throughput · CPC title

  • Monitoring storage devices or systems · CPC title

  • where the computing system component is a storage system, e.g. DASD based or network based (digital input from or digital output to record carriers G06F3/06; digital recording or reproducing G11B20/18; 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], H04L67/1097) · 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 US9971548B1 cover?
Performance of a computing system is improved by avoiding and/or eliminating overload conditions in storage systems. Performance utilization calculations are used to predict that a candidate placement configuration of storage resources within the storage systems will avoid overload conditions. The performance utilization calculations use performance profiles in conjunction with workload profile…
Who is the assignee on this patent?
Pernixdata Inc, Nutanix Inc
What technology area does this patent fall under?
Primary CPC classification G06F3/067. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue May 15 2018 00:00:00 GMT+0000 (Coordinated Universal Time) (B1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 1 related publication on this page (citations in our corpus or others sharing the same primary CPC).