IP Library › Granted Patent US 10,469,582
Granted Patent B2
US 10,469,582 · App. 15/098,007 · Granted Nov 5, 2019

Methods and systems for managing provisioning requests in a networked storage environment

Inventors: Alma Dimnaku (Wellesley, MA); Curtis Hrischuk (Holly Springs, NC); Abhishek Hiregoudar (Boston, MA); Michael James Rydeen (Fremont, NH)
Assignee: NETAPP, INC.
H04L67/1097G06F3/067H04L41/0893
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,469,582
App. No.
15/098,007
Filed
Apr 13, 2016
Granted
Nov 5, 2019
Kind
B2
Art Unit
2445
USPC
709/223
Abstract

Methods and systems for a networked storage system are provided. A provisioning engine assigns a plurality of performance parameters in response to a provisioning request for provisioning a workload for storing data in a networked storage environment; identifies a demand for a plurality of resources of the networked storage environment for meeting the provisioning request, transforms historical available performance capacity by filtering any historical performance capacity data related to any transient event; and identifies at least a resource pair that can meet the identified demand based on the transformed historical performance capacity data.

Claims (39)

1. A method, comprising:

transforming by a processor executable provisioning application programming interface (API), a request to provision a workload into a demand that a plurality of resources of a networked storage system have to meet for the request for using the networked storage system,

wherein a performance parameter based on a service level objective (SLO) is assigned to the request, when the request indicates that it is SLO based;

wherein the demand to meet the assigned performance parameter is based on a historical demand on the plurality of resources for workloads similar to the workload, the historical demand identified after discarding historical demand data for any transient event associated with the workloads;

modifying by the API, performance capacity of the plurality of resources by removing performance capacity data associated with any transient event associated with the plurality of resources;

wherein the performance capacity is a function of latency and optimum utilization of the plurality of resources; and the performance capacity is determined by selecting a relationship from a plurality of latency and utilization relationships determined by a model based technique and an observation based technique;

adjusting by the API, the modified performance capacity based on any change in demand on the plurality of resources due to the plurality of workloads;

wherein the adjustment is weighted over time for tracking an impact of the plurality of workloads such that the adjustment is higher immediately after a load is added or removed from the plurality of resources and the adjustment decreases over time after the load is added or removed from the plurality of resources; and

identifying by the API, a resource from the plurality of resources that can meet the demand for the workload based on the adjusted performance capacity; wherein the workload is assigned to the resource for storing and retrieving data from the networked storage system.

2. The method of claim 1 , wherein the resource includes a resource pair of a storage system node and an aggregate that includes at least a storage device for storing data.

3. The method of claim 1 , wherein a performance capacity trend of the resource is tracked for assigning other provisioning requests received by the API.

4. The method of claim 1 , wherein a weighting function is used for adjusting the modified performance capacity such that adjustment is higher immediately after any workload is removed or added to any resource.

5. The method of claim 1 , wherein a tag in the request indicates that the request is SLO based and the request is assigned the performance parameter defined by the SLO for the workload.

6. The method of claim 1 , wherein the request is assigned the performance parameter obtained from a policy associated with the workload, when the request indicates it is not SLO based.

7. The method of claim 4 , wherein the weighting function reduces the adjustment over time after any workload is added or removed from the plurality of resources.

8. A non-transitory, machine readable storage medium having stored thereon instructions for performing a method, comprising machine executable code which when executed by at least one machine, causes the machine to:

transform by a processor executable provisioning application programming interface (API), a request to provision a workload into a demand that a plurality of resources of a networked storage system have to meet for the request for using the networked storage system, wherein a performance parameter based on a service level objective (SLO) is assigned to the request, when the request indicates that it is SLO based;

wherein the demand to meet the assigned performance parameter is based on a historical demand on the plurality of resources for workloads similar to the workload, the historical demand identified after discarding historical demand data for any transient event associated with the workloads;

modify by the API, performance capacity of the plurality of resources by removing performance capacity data associated with any transient event; wherein the performance capacity is a function of latency and optimum utilization of the plurality of resources;

adjust by the API, the modified performance capacity based on any change in demand on the plurality of resources due to the plurality of workloads; wherein the adjustment is weighted over time for tracking an impact of the plurality of workloads such that the adjustment is higher immediately after a load is added or removed from the plurality of resources and the adjustment decreases over time after the load is added or removed from the plurality of resources; and

identify by the API, a resource from the plurality of resources that can meet the demand for the workload based on the adjusted performance capacity; wherein the workload is assigned to the resource for storing and retrieving data from the networked storage system.

9. The non-transitory, storage medium of claim 8 , wherein the resource includes a resource pair of a storage system node and an aggregate that includes at least a storage device for storing data.

10. The non-transitory, storage medium of claim 8 , wherein a performance capacity trend of the resource is tracked for assigning other provisioning requests received by the API.

11. The non-transitory, storage medium of claim 8 , wherein a weighting function is used for adjusting the modified performance capacity such that adjustment is higher immediately after any workload is removed or added to any resource.

12. The non-transitory, storage medium of claim 8 , wherein a tag in the request indicates that the request is SLO based and the request is assigned the performance parameter defined by the SLO for the workload.

13. The non-transitory, storage medium of claim 8 , wherein the request is assigned the performance parameter obtained from a policy associated with the workload, when the request indicates it is not SLO based.

14. The non-transitory, storage medium of claim 11 , wherein the weighting function reduces the adjustment over time after any workload is added or removed from the plurality of resources.

15. A system comprising:

a memory containing machine readable medium comprising machine executable code having stored thereon instructions; and a processor module coupled to the memory, the processor module configured to execute the machine executable code for a provisioning application programming interface (API) to:

transform a request to provision a workload into a demand that a plurality of resources of a networked storage system have to meet for request for using the networked storage system, wherein a performance parameter based on a service level objective (SLO) is assigned to the request, when the request indicates that it is SLO based;

wherein the demand to meet the assigned performance parameter is based on a historical demand on the plurality of resources for workloads similar to the workload, the historical demand identified after discarding historical demand data for any transient event associated with the workloads;

modify performance capacity of the plurality of resources by removing performance capacity data associated with any transient event; wherein the performance capacity is a function of latency and optimum utilization of the plurality of resources;

adjust the modified performance capacity based on any change in demand on the plurality of resources due to the plurality of workloads; wherein the adjustment is weighted over time for tracking an impact of the plurality of workloads such that the adjustment is higher immediately after a load is added or removed from the plurality of resources and the adjustment decreases over time after the load is added or removed from the plurality of resources; and

identify a resource from the plurality of resources that can meet the demand for the workload based on the adjusted performance capacity; wherein the workload is assigned to the resource for storing and retrieving data from the networked storage system.

16. The system of claim 15 , wherein the resource includes a resource pair of a storage system node and an aggregate that includes at least a storage device for storing data.

17. The system of claim 15 , wherein a performance capacity trend of the resource is tracked for assigning other provisioning requests received by the API.

18. The system of claim 15 , wherein a weighting function is used for adjusting the modified performance capacity such that adjustment is higher immediately after any workload is removed or added to any resource.

19. The system of claim 15 , wherein a tag in the request indicates that the request is SLO based and the request is assigned the performance parameter defined by the SLO for the workload.

20. The system of claim 15 , wherein the request is assigned the performance parameter obtained from a policy associated with the workload, when the request indicates it is not SLO based.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 13, 2016
From: DIMNAKU, ALMA; HRISCHUK, CURTIS; HIREGOUDAR, ABHISHEK; RYDEEN, MICHAEL JAMES
To: NETAPP, INC.
Reel/Frame 038272/0042 →
Continuity (1)
Related Publication 20170302738A1 · Oct 19, 2017
Cited By (2)
US 12,314,581 US 12,395,553