Fetching Query Results Through Cloud Object Stores
US-2024394271-A1 · Nov 28, 2024 · US
US9635101B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-9635101-B2 |
| Application number | US-201514981730-A |
| Country | US |
| Kind code | B2 |
| Filing date | Dec 28, 2015 |
| Priority date | Jan 28, 2011 |
| Publication date | Apr 25, 2017 |
| Grant date | Apr 25, 2017 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
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.
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
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
Related publications grouped by family.
Answers are generated from the same data shown on this page.