IP Library Granted Patent US 10,949,116
Granted Patent B2
US 10,949,116 · App. 16/526,006 · Granted Mar 16, 2021

Storage resource capacity prediction utilizing a plurality of time series forecasting models

Inventors: Vibhor Kaushik (Shrewsbury, MA); Zachary W. Arnold (Concord, MA); Siva Kottapalli (North Chelmsford, MA); Peter Beale (Acton, MA); Karthik Hubli (Shrewsbury, MA)
Assignee: EMC IP Holding Company LLC
G06F3/0653G06F3/0614G06F3/0629G06F3/0683G06F11/3034G06F11/3051G06F11/3409G06F11/3452
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,949,116
App. No.
16/526,006
Granted
Mar 16, 2021
Kind
B2
Abstract

A method includes obtaining historical storage resource utilization data for a given set of storage resources of one or more storage systems, and generating a plurality of model-specific storage resource capacity predictions utilizing the historical storage resource utilization data and respective ones of a plurality of time series capacity prediction forecasting models. The method also includes selecting a subset of the model-specific storage resource capacity predictions having one or more designated characteristics, determining an overall storage resource capacity prediction based at least in part on a combination of the selected subset of the model-specific storage resource capacity predictions, and modifying a provisioning of storage resources of the one or more storage systems based at least in part on the overall storage resource capacity prediction.

Claims (50)

1. A method comprising:

monitoring one or more storage systems to obtain historical storage resource utilization data characterizing resource utilization for a given set of storage resources of the one or more storage systems for a first period of time;

generating a plurality of different model-specific storage resource capacity predictions of resource utilization for the given set of storage resources for a second period of time subsequent to the first period of time, the plurality of different model-specific storage resource capacity predictions being generated by applying the historical storage resource utilization data as input to respective ones of a plurality of different time series capacity prediction forecasting models that take into account one or more different factors, including at least one of a seasonality factor and a trend factor;

evaluating the plurality of different model-specific storage resource capacity predictions utilizing one or more empirical conditions, the one or more empirical conditions comprising at least one of noise and uncertainty;

selecting a subset of the plurality of model-specific storage resource capacity predictions having one or more designated characteristics, the one or more designated characteristics comprising at least one of a level of noise below a designated noise threshold and a level of uncertainty below a designated uncertainty threshold;

determining an overall storage resource capacity prediction based at least in part on a combination of the selected subset of the model-specific storage resource capacity predictions; and

modifying a provisioning of storage resources of the one or more storage systems based at least in part on the overall storage resource capacity prediction;

wherein the method is performed by at least one processing device comprising a processor coupled to a memory.

2. The method of claim 1 wherein the given set of storage resources comprises a storage pool allocated for a given user, the storage pool comprising a first set of storage resources allocated from a first one of the one or more storage systems and a second set of storage resources allocated from a second one of the one or more storage systems.

3. The method of claim 1 wherein the given set of storage resources comprises a portion of a storage pool allocated for a given user, the portion of the storage pool comprising storage resources allocated from a single one of the one or more storage systems.

4. The method of claim 1 wherein the plurality of time series capacity prediction forecasting models comprises:

at least a first time series capacity prediction forecasting model that takes into account a first type of seasonality and trend factors; and

at least a second time series capacity prediction forecasting model that takes into account a second type of seasonality and trend factors.

5. The method of claim 1 wherein the first time series capacity prediction forecasting model comprises at least one of a Seasonality Trend using Loess (STL) model and an Autoregressive Integrated Moving Average (ARIMA)-based model.

6. The method of claim 1 wherein generating the plurality of model-specific storage resource capacity predictions further comprises applying pre-processing by passing the historical storage resource utilization data through one or more filters.

7. The method of claim 6 wherein the one or more filters comprises at least one of:

a first filter configured to impute missing data in the historical storage resource utilization data;

a second filter configured to remove additive outliers in the historical storage resource utilization data; and

a third filter configured to remove level change outliers in the historical storage resource utilization data.

8. The method of claim 1 wherein the model-specific storage resource capacity predictions comprise respective forecasts each with an associated cone of uncertainty defined by a forecast storage resource utilization value, an upper bound on the forecast utilization value, and a lower bound on the forecast storage resource utilization value.

9. The method of claim 8 wherein selecting the subset of the model-specific storage resource capacity predictions having the one or more designated characteristics comprises selecting respective ones of the model-specific storage resource capacity predictions having associated cones of uncertainty with differences between the upper bound and the lower bound less than the designated uncertainty threshold.

10. The method of claim 1 wherein selecting the subset of the model-specific storage resource capacity predictions having the one or more designated characteristics comprises selecting respective ones of the model-specific storage resource capacity predictions having associated noise less than the designated noise threshold.

11. The method of claim 1 wherein determining the overall storage resource capacity prediction comprises calculating the overall storage resource capacity prediction as a weighted average of the selected subset of the model-specific storage resource capacity predictions, wherein weights for the selected subset of the model-specific storage resource capacity predictions are based at least in part on historical performance of respective ones of the time series capacity prediction forecasting models used to generate the selected subset of the model-specific storage resource capacity predictions.

12. The method of claim 1 further comprising determining a given one of a plurality of different time ranges when available storage resources of the one or more storage systems is expected to fall below a designated capacity threshold based on the overall storage resource capacity prediction, and wherein modifying the provisioning of the storage resources of the one or more storage systems is based at least in part on the given time range when the available storage resources of the one or more storage systems is expected to fall below the designated capacity threshold.

13. The method of claim 12 wherein when the given time range is within a designated time from a current time, modifying the provisioning of the storage resources of the one or more storage systems comprises increasing storage resources of the one or more storage systems.

14. The method of claim 12 wherein when the given time range is greater than a designated time from a current time, modifying the provisioning of the storage resources of the one or more storage systems comprises generating an alert indicating an expected time when the available storage resources of the one or more storage systems is expected to fall below the designated capacity threshold.

15. A computer program product comprising a non-transitory processor-readable storage medium having stored therein program code of one or more software programs, wherein the program code when executed by at least one processing device causes the at least one processing device:

to monitor one or more storage systems to obtain historical storage resource utilization data characterizing resource utilization for a given set of storage resources of the one or more storage systems for a first period of time;

to generate a plurality of different model-specific storage resource capacity predictions of resource utilization for the given set of storage resources for a second period of time subsequent to the first period of time, the plurality of different model-specific storage resource capacity predictions being generated by applying the historical storage resource utilization data as input to respective ones of a plurality of different time series capacity prediction forecasting models that take into account one or more different factors, including at least one of a seasonality factor and a trend factor;

to evaluate the plurality of different model-specific storage resource capacity predictions utilizing one or more empirical conditions, the one or more empirical conditions comprising at least one of noise and uncertainty;

to select a subset of the plurality of model-specific storage resource capacity predictions having one or more designated characteristics, the one or more designated characteristics comprising at least one of a level of noise below a designated noise threshold and a level of uncertainty below a designated uncertainty threshold;

to determine an overall storage resource capacity prediction based at least in part on a combination of the selected subset of the model-specific storage resource capacity predictions; and

to modify a provisioning of storage resources of the one or more storage systems based at least in part on the overall storage resource capacity prediction.

16. The computer program product of claim 15 wherein:

the model-specific storage resource capacity predictions comprise respective forecasts each with an associated cone of uncertainty defined by a forecast storage resource utilization value, an upper bound on the forecast utilization value, and a lower bound on the forecast storage resource utilization value; and

selecting the subset of the model-specific storage resource capacity predictions having the one or more designated characteristics comprises selecting respective ones of the model-specific storage resource capacity predictions having associated cones of uncertainty with differences between the upper bound and the lower bound less than the designated uncertainty threshold.

17. The computer program product of claim 15 wherein selecting the subset of the model-specific storage resource capacity predictions having the one or more designated characteristics comprises selecting respective ones of the model-specific storage resource capacity predictions having associated noise less than the designated noise threshold.

18. An apparatus comprising:

at least one processing device comprising a processor coupled to a memory;

the at least one processing device being configured:

to monitor one or more storage systems to obtain historical storage resource utilization data characterizing resource utilization for a given set of storage resources of the one or more storage systems for a first period of time;

to generate a plurality of different model-specific storage resource capacity predictions of resource utilization for the given set of storage resources for a second period of time subsequent to the first period of time, the plurality of different model-specific storage resource capacity predictions being generated by applying the historical storage resource utilization data as input to respective ones of a plurality of different time series capacity prediction forecasting models that take into account one or more different factors, including at least one of a seasonality factor and a trend factor;

to evaluate the plurality of different model-specific storage resource capacity predictions utilizing one or more empirical conditions, the one or more empirical conditions comprising at least one of noise and uncertainty;

to select a subset of the plurality of model-specific storage resource capacity predictions having one or more designated characteristics, the one or more designated characteristics comprising at least one of a level of noise below a designated noise threshold and a level of uncertainty below a designated uncertainty threshold;

to determine an overall storage resource capacity prediction based at least in part on a combination of the selected subset of the model-specific storage resource capacity predictions; and

to modify a provisioning of storage resources of the one or more storage systems based at least in part on the overall storage resource capacity prediction.

19. The apparatus of claim 18 wherein:

the model-specific storage resource capacity predictions comprise respective forecasts each with an associated cone of uncertainty defined by a forecast storage resource utilization value, an upper bound on the forecast utilization value, and a lower bound on the forecast storage resource utilization value; and

selecting the subset of the model-specific storage resource capacity predictions having the one or more designated characteristics comprises selecting respective ones of the model-specific storage resource capacity predictions having associated cones of uncertainty with differences between the upper bound and the lower bound less than the designated uncertainty threshold.

20. The apparatus of claim 18 wherein selecting the subset of the model-specific storage resource capacity predictions having the one or more designated characteristics comprises selecting respective ones of the model-specific storage resource capacity predictions having associated noise less than the designated noise threshold.

Assignments (9)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053546/0001) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC IP HOLDING COMPANY LLC
Reel/Frame 071642/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053311/0169) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
Reel/Frame 060438/0742 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (050724/0571) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
Reel/Frame 060436/0088 →
RELEASE OF SECURITY INTEREST AT REEL 050406 FRAME 421 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
Reel/Frame 058213/0825 →
SECURITY INTEREST Recorded Jun 5, 2020
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 053311/0169 →
SECURITY AGREEMENT Recorded Apr 22, 2020
From: CREDANT TECHNOLOGIES INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 053546/0001 →
PATENT SECURITY AGREEMENT (NOTES) Recorded Oct 15, 2019
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 050724/0571 →
SECURITY AGREEMENT Recorded Sep 17, 2019
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 050406/0421 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 30, 2019
From: KAUSHIK, VIBHOR; ARNOLD, ZACHARY W.; KOTTAPALLI, SIVA; BEALE, PETER; HUBLI, KARTHIK
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 049903/0918 →