Proposed storage system solution selection for service level objective management

US9635101B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9635101-B2
Application numberUS-201514981730-A
CountryUS
Kind codeB2
Filing dateDec 28, 2015
Priority dateJan 28, 2011
Publication dateApr 25, 2017
Grant dateApr 25, 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.

Described herein is a system and method for dynamically managing service-level objectives (SLOs) for workloads of a cluster storage system. Proposed states/solutions of the cluster may be produced and evaluated to select one that achieves the SLOs for each workload. A planner engine may produce a state tree comprising nodes, each node representing a proposed state/solution. New nodes may be added to the state tree based on new solution types that are permitted, or nodes may be removed based on a received time constraint for executing a proposed solution or a client certification of a solution. The planner engine may call an evaluation engine to evaluate proposed states, the evaluation engine using an evaluation function that considers SLO, cost, and optimization goal characteristics to produce a single evaluation value for each proposed state. The planner engine may call a modeler engine that is trained using machine learning techniques.

First claim

Opening claim text (preview).

What is claimed is: 1. A method comprising: determining a first plurality of proposed solutions for a clustered storage system, wherein each of the first plurality of proposed solutions comprises a set of configuration settings of the clustered storage system for the proposed solution and a set of one or more specific actions to execute on the clustered storage system to implement the proposed solution; for each of the first plurality of proposed solutions, determining a first service level objective evaluation value for a first service level objective of a workload of the clustered storage system, wherein determining the first service level objective evaluation value uses a first predicted value for a first service level objective metric of the first service level objective and a first target value of the first service level objective metric; determining a proposed solution evaluation value for the proposed solution based, at least in part, on the first service level objective evaluation value and a first predicted value for a first cost metric corresponding to the proposed solution; selecting a first proposed solution from the first plurality of proposed solutions based, at least in part, on the proposed solution evaluation values computed for the first plurality of proposed solutions; and applying the selected first proposed solution to the clustered storage system. 2. The method of claim 1 , wherein determining the first plurality of proposed solutions is based on detection of a trigger, wherein the trigger comprises one of a service level objective violation, addition of a workload to the clustered storage system, removal of a workload from the clustered storage system, modification of one of the workloads of the clustered storage system, addition of a storage resource to the clustered storage system, removal of a storage resource from the clustered storage system, and modification of a storage resource in the clustered storage system. 3. The method of claim 1 , wherein applying the selected first proposed solution comprises executing a set of one or more specific actions indicated for the first proposed solution. 4. The method of claim 3 further comprising determining dependencies among the set of specific actions, wherein executing the set of specific actions is in accordance with the determined dependencies. 5. The method of claim 3 , wherein a specific action comprises any one of throttling, migrating a storage object, resizing a storage object, provisioning a resource of the clustered storage system, compressing a storage object, deduplicating a storage object, backing up a storage object, and taking a snapshot of a storage object. 6. The method of claim 1 further comprising: for each of the first plurality of proposed solutions, determining the first predicted value for the first cost metric corresponding to the proposed solution. 7. The method of claim 6 , wherein determining the first predicted value for the first cost metric comprises computing the first predicted value in accordance with a weight assigned to the first cost metric, wherein the weight corresponds to a resource based optimization goal. 8. The method of claim 1 , wherein determining the first service level objective evaluation value comprises computing the first service level objective evaluation value in accordance with a priority value assigned to the first service level objective. 9. The method of claim 1 further comprising ranking the first plurality of proposed solutions based, at least in part, on the first service level objective evaluation values, wherein selecting the first proposed solution is based, at least in part, on the ranking. 10. The method of claim 9 , further comprising removing one or more nodes from a state tree based, at least in part, on evaluation of the first service level objective evaluation values against a threshold, wherein determining the first plurality of proposed solutions comprises generating the state tree with a node for each of the first plurality of proposed solutions. 11. The method of claim 10 further comprising generating a second plurality of proposed solutions based, at least in part, on remaining ones of the first plurality of proposed solutions, wherein the nodes for the first plurality of proposed solutions are at a first level of the state tree and the second plurality of proposed solutions are represented by nodes at a lower, second level of the state tree. 12. One or more non-transitory computer readable media comprising program instructions, the program instructions to: determine a plurality of proposed solutions for a clustered storage system, wherein each of the plurality of proposed solutions comprises a set of configuration settings of the clustered storage system for the proposed solution and a set of one or more specific actions to execute on the clustered storage system to implement the proposed solution; for each of the plurality of proposed solutions, determine a service level objective evaluation value for a service level objective of a workload of the clustered storage system, wherein the instructions to determine the service level objective evaluation value comprises instructions to use a first predicted value for a first service level objective metric of the service level objective and a first target value of the service level objective metric; determine a proposed solution evaluation value for the proposed solution based, at least in part, on the service level objective evaluation value determined for the proposed solution and a first predicted value for a first cost metric corresponding to the proposed solution; select a first proposed solution from the plurality of proposed solutions based, at least in part, on the proposed solution evaluation values determined for the plurality of proposed solutions; and apply the selected first proposed solution to the clustered storage system. 13. The non-transitory computer readable media of claim 12 , wherein the program instructions to determine the plurality of proposed solutions is based on detection of a trigger, wherein the trigger comprises one of a service level objective violation, addition of a workload to the clustered storage system, removal of a workload from the clustered storage system, modification of one of the workloads of the clustered storage system, addition of a storage resource to the clustered storage system, removal of a storage resource from the clustered storage system, and modification of a storage resource in the clustered storage system. 14. The non-transitory computer readable media of claim 12 , wherein the program instructions to apply the proposed solution comprise program instructions to execute a set of one or more specific actions indicated for the selected proposed solution. 15. The non-transitory computer readable media of claim 14 further comprising program instructions to determine dependencies among the set of specific actions, wherein the program instructions to execute the set of specific actions is in accordance with the determined dependencies. 16. The non-transitory computer readable media of claim 12 further comprising program instructions to: for each of the plurality of proposed solutions, determine the first predicted value for the first cost metric corresponding to the proposed solution. 17. An apparatus comprising: a processor; a memory having program instructions executable by the processor to cause the apparatus to, determine a plurality of proposed solutions for a clustered storage system, wherein each of the plurality o

Assignees

Inventors

Classifications

  • 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

  • for planning or managing the needed capacity · CPC title

  • Determining service level performance parameters or violations of service level contracts, e.g. violations of agreed response time or mean time between failures [MTBF] · CPC title

  • Store-and-forward switching systems  (packet switching systems H04L45/00, H04L47/00) · CPC title

  • for I/O devices · 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 US9635101B2 cover?
Described herein is a system and method for dynamically managing service-level objectives (SLOs) for workloads of a cluster storage system. Proposed states/solutions of the cluster may be produced and evaluated to select one that achieves the SLOs for each workload. A planner engine may produce a state tree comprising nodes, each node representing a proposed state/solution. New nodes may be add…
Who is the assignee on this patent?
Netapp Inc
What technology area does this patent fall under?
Primary CPC classification H04L67/1097. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Apr 25 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).