IP Library › Granted Patent US 12,056,358
Granted Patent B2
US 12,056,358 · App. 17/975,660 · Granted Aug 6, 2024

Predicting storage array response times

Inventors: Hagay Dagan (Pardes Hanna, IL); Ron Arnan (Nes Ziona, IL); Gil Ratsaby (Jerusalem, IL)
Assignee: Dell Products L.P.
G06F3/0611G06F3/0665G06F3/067G06F11/3447
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 12,056,358
App. No.
17/975,660
Granted
Aug 6, 2024
Kind
B2
Abstract

One or more aspects of the present disclosure relate to predicting one or more performance metrics of a storage array configuration. In embodiments, a storage array configuration can be generated based on one or more array-configuration related parameters. In addition, IO workload metrics corresponding to an IO workload received by an array corresponding to the storage array configuration can be recorded. Further, at least one response time (RT) prediction can be generated based on the IO workload metrics. Accordingly, another storage array configuration can be generated based on the RT predictions and according to performance requirements defined by a service level objective (SLO).

Claims (60)

1. A method comprising:

generating a storage array configuration based on one or more array-configuration-related parameters;

recording IO workload metrics corresponding to an IO workload received by an array corresponding to the storage array configuration;

generating at least one response time (RT) prediction based on the IO workload metrics;

generating another storage array configuration based on the at least one RT prediction and according to performance requirements defined by a service level objective (SLO);

analyzing the IO workload's IO types, IO sizes, and IO compression states;

determining a workload type of the IO workload; and

measuring a current RT of the IO workload based on results of the analysis and workload type, wherein determining the current RT includes using an inverse distance weighting interpolation (IDW) engine to process the analysis results and workload type.

2. The method of claim 1 , further comprising:

generating a virtual storage array based on the storage array configuration;

obtaining one or more sample IO workloads with measured RT results from a physical storage array having a deployed configuration similar to the virtual storage array's configuration; and

determining workload types of the one or more sample IO workloads.

3. The method of claim 2 , further comprising:

generating the IO workload using the one or more sample IO workloads;

processing the IO workload using the virtual storage array; and

identifying the IO workload's maximum IOs per second (IOPS); and

analyzing one or more of the IO workload's IO requests.

4. The method of claim 3 , further comprising:

determining at least one or more IO types, IO sizes, and IO compression states corresponding to the IO workload's IO requests.

5. The method of claim 3 , further comprising:

determining a current IOPS and related metrics of the IO workload.

6. The method of claim 1 , further comprising:

measuring the current RT when the IO workload's current IOPS reaches one or more threshold percentiles of the IO workload's maximum IOPS.

7. The method of claim 6 , further comprising:

predicting RTs corresponding to one or more anticipated IO workloads for one or more storage array hardware configurations based on one or more current RT measurements.

8. The method of claim 7 , further comprising:

determining an IOPS growth factor based on the IO workload metrics, type, and IO workload analysis; and

determining the IO workload's current IOPS percentile of its maximum IOPS using the IOPS growth factor.

9. The method of claim 8 , further comprising:

determining when one or more of the storage array's components reach 100% utilization.

10. A system with a processor and memory, the system configured to:

generate a storage array configuration based on one or more array-configuration-related parameters;

record IO workload metrics corresponding to an IO workload received by an array corresponding to the storage array configuration;

generate at least one response time (RT) prediction based on the IO workload metrics;

generate another storage array configuration based on the at least one RT prediction and according to performance requirements defined by a service level objective (SLO));

analyze the IO workload's IO types, IO sizes, and IO compression states;

determine a workload type of the IO workload; and

measure a current RT of the IO workload based on results of the analysis and workload type, wherein determining the current RT includes using an inverse distance weighting interpolation (IDW) engine to process the analysis results and workload type.

11. The system of claim 10 , further configured to:

generate a virtual storage array based on the storage array configuration;

obtain one or more sample IO workloads with measured RT results from a physical storage array having a deployed configuration similar to the virtual storage array's configuration; and

determine workload types of the one or more sample IO workloads.

12. The system of claim 11 , further configured to:

generate the IO workload using the one or more sample IO workloads;

process the IO workload using the virtual storage array; and

identify the IO workload's maximum IOs per second (IOPS); and

analyze one or more of the IO workload's IO requests.

13. The system of claim 12 , further configured to:

determine at least one or more IO types, IO sizes, and IO compression states corresponding to the IO workload's IO requests.

14. The system of claim 12 , further configured to:

determine a current IOPS and related metrics of the IO workload.

15. The system of claim 10 , further configured to:

measure the current RT when the IO workload's current IOPS reaches one or more threshold percentiles of the IO workload's maximum IOPS.

16. The system of claim 15 , further configured to:

predict RTs corresponding to one or more anticipated IO workloads for one or more storage array hardware configurations based on one or more current RT measurements.

17. The system of claim 16 , further configured to:

determine an IOPS growth factor based on the IO workload metrics, type, and IO workload analysis; and

determine the IO workload's current IOPS percentile of its maximum IOPS using the IOPS growth factor.

18. The system of claim 17 , further configured to:

determine when one or more of the storage array's components reach 100% utilization.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 16, 2023
From: DAGAN, HAGAY; ARNAN, RON; RATSABY, GIL
To: DELL PRODUCTS L.P.
Reel/Frame 062715/0363 →
Continuity (1)
Related Publication 20240143175A1 · May 2, 2024