IP Library › Granted Patent US 10,817,348
Granted Patent B2
US 10,817,348 · App. 16/275,649 · Granted Oct 27, 2020

Methods and systems for managing service level objectives in a networked storage environment

Inventors: Alma Dimnaku (Wellesley, MA); Jeffrey Scott MacFarland (Wake Forest, NC)
Assignee: NETAPP, INC.
G06F9/5083G06F9/455G06F9/45533G06F9/45558G06F9/48G06F9/485G06F9/4806G06F9/4843G06F9/4856G06F9/4881G06F9/50G06F9/5005G06F9/505G06F9/5011G06F9/5016G06F9/5022G06F9/5027G06F9/5044G06F9/5055H04L41/0896H04L41/50H04L41/5003H04L41/5009H04L41/5012H04L41/5025H04L67/1097G06F2009/4557G06F2009/45583H04L41/5096
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,817,348
App. No.
16/275,649
Granted
Oct 27, 2020
Kind
B2
Abstract

Methods and systems for a networked storage system are provided. One method includes determining by a processor, a demand pattern for a first workload that is assigned a service level objective (SLO) for using a resource of a networked storage system. The SLO is defined by an allotted performance parameter, and the demand pattern identifies a first duration when a SLO allotment for the first workload is underutilized, and a second duration when the SLO allotment is being utilized. The SLO allotment is dynamically adjusted for the first duration by modifying a parameter associated with the performance parameter, while maintaining the SLO allotment for the second duration. This makes additional performance capacity of the resource available for re-allocation. The additional available performance capacity is dynamically allocated for an identified second workload that needs an increase in SLO allotment for a certain duration and/or for provisioning a new workload.

Claims (37)

1. A method, comprising:

setting, by a processor, an attribute for a first workload for enabling dynamic service level objective (SLO) adjustment in a networked storage system;

determining by the processor, a demand pattern for the first workload that is assigned a SLO for using a resource of the networked storage system, the SLO defined by an allotted performance parameter for storing and retrieving data from the network storage system;

utilizing, by the processor, the demand pattern to identify a first duration when SLO allotment for the first workload is underutilized, and a second duration when the SLO allotment is being utilized;

based on the set attribute, dynamically adjusting the SLO allotment by the processor for the first duration by modifying a parameter associated with the allotted performance parameter, while maintaining the SLO allotment for the second duration;

upon modifying the parameter, determining by the processor, additional performance capacity of the resource available for re-allocation; the additional available performance capacity of the resource is based on a relationship between latency and utilization of the resource, the relationship selected from latency and utilization relationships generated by a model based technique and an observation based technique; and

dynamically allocating the additional available performance capacity by the processor for an identified second workload that needs an increase in SLO allotment for a certain duration.

2. The method of claim 1 , further comprising: dynamically allocating the additional performance capacity of the resource by the processor for provisioning a new workload in the networked storage system.

3. The method of claim 1 , further comprising: utilizing a number of input/output operations per second (IOPS) as the modified parameter, the number of IOPS budgeted for the resource for storing and retrieving data.

4. The method of claim 1 , further comprising: utilizing a target latency for the first workload as the modified parameter, the target latency associated with a throughput, where the throughput is the allotted performance parameter.

5. The method of claim 1 , further comprising: for the model based technique, using by the processor, a queuing model with inter-arrival time and service time for processing workload requests to generate a relationship between latency and utilization.

6. The method of claim 1 , further comprising: for the observation based technique, using by the processor measured latency and utilization of the resource to generate a relationship between latency and utilization.

7. The method of claim 1 , wherein the allotted performance parameter is a number of input/output operations per second (IOPS) allotted to the first workload for storing and retrieving data.

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:

determine a demand pattern for a first workload that is assigned a service level objective (SLO) for using a resource of a networked storage system, the SLO defined by an allotted performance parameter for storing and retrieving data from the network storage system;

utilize the demand pattern to identify a first duration when SLO allotment for the first workload is underutilized and a second duration when the SLO allotment is being utilized;

based on a set attribute of the first workload, dynamically adjust the SLO allotment for the first duration, by modifying a parameter associated with the allotted performance parameter, while maintaining the SLO allotment for the second duration;

upon modifying the parameter, determine additional performance capacity of the resource available for re-allocation; the additional available performance capacity of the resource is based on a relationship between latency and utilization of the resource, the relationship selected from latency and utilization relationships generated by a model based technique and an observation based technique; and

dynamically allocate the additional available performance capacity for an identified second workload that needs an increase in SLO allotment for a certain duration.

9. The storage medium of claim 8 , wherein the machine executable code further causes the machine to: dynamically allocate the additional performance capacity of the resource for provisioning a new workload in the networked storage system.

10. The storage medium of claim 8 , wherein the machine executable code further causes the machine to: utilize a number of input/output operations per second (IOPS) as the modified parameter, the number of IOPS budgeted for the resource for storing and retrieving data.

11. The storage medium of claim 8 , wherein the machine executable code further causes the machine to: utilize a target latency for the first workload as the modified parameter, the target latency associated with a throughput, where the throughput is the allotted performance parameter.

12. The storage medium of claim 8 , wherein the machine executable code further causes the machine to: use a queuing model with inter-arrival time and service time for processing workload requests to generate a relationship between latency and utilization for the model based technique.

13. The storage medium of claim 8 , wherein the machine executable code further causes the machine to: use measured latency and utilization of the resource to generate a relationship between latency and utilization for the observation based technique.

14. The storage medium of claim 8 , wherein the allotted performance parameter is a number of input/output operations per second (IOPS) allotted to the first workload for storing and retrieving data.

15. A system comprising:

a memory containing machine readable medium comprising machine executable code having stored thereon instructions; and a processor coupled to the memory, the processor configured to execute the machine executable code to:

determine a demand pattern for a first workload that is assigned a service level objective (SLO) for using a resource of a networked storage system, the SLO defined by an allotted performance parameter for storing and retrieving data from the network storage system;

utilize the demand pattern to identify a first duration when SLO allotment for the first workload is underutilized, and a second duration when the SLO allotment is being utilized;

based on a set attribute for the first workload, dynamically adjust the SLO allotment for the first duration by modifying a parameter associated with the allotted performance parameter, while maintaining the SLO allotment for the second duration;

upon modifying the parameter, determine additional performance capacity of the resource available for re-allocation; the additional available performance capacity of the resource is based on a relationship between latency and utilization of the resource, the relationship selected from latency and utilization relationships generated by a model based technique and an observation based technique; and

dynamically allocate the additional available performance capacity for an identified second workload that needs an increase in SLO allotment for a certain duration.

16. The system of claim 8 , wherein the processor further executes the machine executable code to: dynamically allocate the additional performance capacity of the resource for provisioning a new workload in the networked storage system.

17. The system of claim 15 , wherein the processor further executes the machine executable code to: utilize a number of input/output operations per second (IOPS) as the modified parameter, the number of IOPS budgeted for the resource for storing and retrieving data.

18. The system of claim 15 , wherein the processor further executes the machine executable code to: use a queuing model with inter-arrival time and service time for processing workload requests to generate a relationship between latency and utilization for the model based technique.

19. The system of claim 15 , wherein the processor further executes the machine executable code to: use measured latency and utilization of the resource to generate a relationship between latency and utilization for the observation based technique.

20. The system of claim 15 , wherein the allotted performance parameter is a number of input/output operations per second (IOPS) allotted to the first workload for storing and retrieving data.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 14, 2019
From: DIMNAKU, ALMA; MACFARLAND, JEFFREY SCOTT
To: NETAPP, INC.
Reel/Frame 048333/0486 →
Continuity (2)
Continuation In Part 15090878 · Apr 5, 2016
Related Publication 20190179679A1 · Jun 13, 2019