Adaptive backup model for optimizing backup performance

US9052952B1 · US · B1

Patent metadata
FieldValue
Publication numberUS-9052952-B1
Application numberUS-201213618039-A
CountryUS
Kind codeB1
Filing dateSep 14, 2012
Priority dateSep 14, 2012
Publication dateJun 9, 2015
Grant dateJun 9, 2015

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.

This disclosure relates to a method, article of manufacture, and apparatus of adaptive storage system management for optimizing performance. In some embodiments, this includes polling attributes associated with a workload of a storage system to obtain corresponding values at a time instance, analyzing the values and the attributes to determine a need for modifying a set of the values corresponding to a set of the attributes when the workload is not at an optimized level, modifying the set of the values in response to the determination, and storing the time instance, the attributes, the values, and the modification.

First claim

Opening claim text (preview).

What is claimed is: 1. A method comprising: polling attributes associated with a workload of a storage system having different data sources with different data storage needs, to obtain corresponding values at a time instance, wherein each of the attributes is associated with a type and a name, wherein the storage system includes an application configured to run a plurality of processes concurrently in an operating system producing a portion of the workload, wherein each of the plurality of processes is associated with a process identifier; analyzing the values and the attributes to determine a need for modifying a set of the values corresponding to a set of the attributes when the workload is not at an optimized level with respect to a number of active sessions running concurrently by the application utilizing system resources to satisfy the different storage needs; determining an optimum percentage of system resources allocated to run the application; and modifying the set of the values to adapt the workload to optimize utilization of the system resources to minimize an under or over utilization condition based on the optimum percentage. 2. The method as recited in claim 1 , wherein the optimum percentage of system resources allocated to run the application is obtained from one of received user inputs or derived user requirements, the method further comprising: obtaining a configuration for the modifying; determining a need for immediate recalibration based on the configuration; performing the polling, the analyzing, the modifying, and the storing processing immediately after the storing based on the need for immediate recalibration; and performing the polling, the analyzing, the modifying, and the storing processing at a time interval. 3. The method as recited in claim 1 , further comprising storing the time instance, the attributes, the values, and the modification; and reporting the stored time instance, the attributes, the values, and the modification. 4. The method as recited in claim 1 , wherein the storage system includes one or more servers, one or more data sources, and one or more storage devices, wherein each of the one or more servers is associated with a database, wherein the database contains a set of attributes and a set of corresponding values. 5. The method as recited in claim 4 , wherein the polling comprises for each of the attributes: determining for an attribute whether the type is related to the operating system; if the type of attribute is related to the operating system, inspecting the storage system to obtain a value corresponding to the attribute; and if the type of attribute is not related to the operating system, querying the database for a corresponding value of the attribute, and obtaining the corresponding value. 6. The method as recited in claim 1 , wherein the analyzing step facilitates dynamic tuning of the storage system by adapting to workload changes caused by the application and other applications in the storage system, and wherein analyzing the values and the attributes to determine the need for modifying the set of the values corresponding to the set of the attributes comprises: obtaining policies, wherein each of the policies is associated with an operation to a value within the set of the values, wherein each of the policies specifies a description including, but not limited to, a status, and a condition for performing the operation, wherein the condition specifies parameters including, but not limited to, minimum, maximum, and a subset of the attributes to be considered; searching the policies for operations to the set of the values; finding a set of the policies and locating one or more operations associated with the set of the policies, wherein the set of the policies contains conditions satisfied by the set of the values and the set of the attributes; and determining a need for modifying the set of the values based on the finding of the set of the policies. 7. The method as recited in claim 6 , wherein the system resources comprise processor time, memory space, and input/output bandwidth, the active sessions comprise a plurality of backup and recovery operations to and from storage devices of the storage system, and further wherein the step of modifying the set of the values comprises reducing the number of active sessions of one or more backup or recovery operations. 8. The method as recited in claim 6 , wherein optimized utilization of the system resources comprises one of optimizing a number of backup clients to backup simultaneously or optimizing throughput in the storage system, and wherein modifying the set of the values in response to the determination comprises for each of the set of the policies: determining if the status indicates the workload of the storage system is not at the optimized level; if the status indicates the workload of the storage system is below the optimized level, performing the operations by modifying the set of the values to increase the workload of the storage system; and if the status indicates the workload of the storage system is above the optimized level, performing the operations by modifying the set of the values to decrease the workload of the storage system. 9. The method as recited in claim 8 , wherein the increasing the workload of the storage system includes increasing a number of the plurality of processes running concurrently to increase the portion of the workload. 10. The method as recited in claim 8 , wherein the decreasing the workload of the storage system includes decreasing a number of the plurality of processes running concurrently to decrease the portion of the workload. 11. A storage system comprising: system resources provided by one or more servers, one or more data sources with different data storage needs, and one or more storage devices, wherein the one or more servers store data from the one or more data sources to the one or more storage devices as backups; a workload using the system resources; a polling engine for polling attributes associated with the workload of the storage system to obtain corresponding values at a time instance, wherein each of the attributes is associated with a type and a name, wherein the storage system includes an application configured to run a plurality of processes concurrently in an operating system producing a portion of the workload, wherein each of the plurality of processes is associated with a process identifier; an analyzer for analyzing the values and the attributes to determine a need for modifying a set of the values corresponding to a set of the attributes when the workload is not at an optimized level with respect to a number of active sessions running concurrently by the plurality of processes utilizing system resources to satisfy the different storage needs; a component determining an optimum percentage of system resources allocated to run the plurality of processes; and; a calibrator for modifying the set of the values in response to the determination to adapt the workload to optimize utilization of the system resources to minimize an under or over utilization condition based on the optimum percentage. 12. The method as recited in claim 11 , wherein the storage system provides a user interface that provides an input to specify a polling interval for the polling engine to run. 13. The method as recited in claim 11 , wherein the optimum percentage of system resources allocated to run the application is obtained from one of received user inputs or derived user requirements, and wherein the storage system provides a user interface that provides an option that, when chosen, causes an

Assignees

Inventors

Classifications

  • G06F3/067Primary

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

  • considering hardware capabilities · CPC title

  • considering software capabilities, i.e. software resources associated or available to the machine · CPC title

  • Techniques for rebalancing the load in a distributed system · CPC title

  • the resource being the memory · 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 US9052952B1 cover?
This disclosure relates to a method, article of manufacture, and apparatus of adaptive storage system management for optimizing performance. In some embodiments, this includes polling attributes associated with a workload of a storage system to obtain corresponding values at a time instance, analyzing the values and the attributes to determine a need for modifying a set of the values correspond…
Who is the assignee on this patent?
Chopra Shelesh, Gupta Rajendra Kumar, Emc Corp
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 Jun 09 2015 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 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).