Monitoring and automatic scaling of data volumes
First Claim
1. A computer-implemented method of scaling storage capacity in a data environment using a separate control environment, comprising:
- under control of one or more computer systems configured with executable instructions,obtaining performance information for a logical data volume in the data environment, the performance information including at least one of storage usage information or storage capacity information for the logical data volume, the logical data volume corresponding to data stored among one or more physical volumes;
extracting historical information for the logical data volume, the historical information representing values of at least some of the performance information over a period of time;
analyzing the performance information and the historical information using at least one prediction algorithm to predict that an anticipated usage value will fall outside of at least one specified range within at least one specified time period;
selecting a scaling action for adjusting a storage capacity of the logical data volume for the anticipated usage value to fall inside the at least one specified range within the at least one specified time period based at least in part upon determining that a cost of implementing the scaling action is a lowest cost among a plurality of scaling options;
determining whether authorization is granted for implementing the scaling option based at least in part upon the cost of implementing the scaling option not exceeding a specified cost threshold; and
executing a workflow in the separate control environment for adjusting the storage capacity of the logical data volume in the data environment based at least in part upon the scaling option in response to determining that the authorization is granted, the storage capacity being adjusted in the data environment by;
(a) changing a number of the one or more physical volumes that collectively provide the storage capacity for the logical data volume without reducing availability of the logical data volume and (b) balancing input output performance among the one or more physical volumes.
1 Assignment
0 Petitions
Accused Products
Abstract
Aspects of a data environment, such as various capacities of data stores and instances, can be managed using a separate control environment. A monitoring component of the control environment can periodically communicate with the data environment to obtain performance information. The information is analyzed, using algorithms such as trending and extrapolation algorithms, to determine any recommended scaling of resources in the data environment. The scaling can be performed automatically, or as authorized by a customer. A workflow can be instantiated that includes tasks necessary to perform the scaling. The scaling of storage capacity can be performed without affecting the availability of the data store.
-
Citations
23 Claims
-
1. A computer-implemented method of scaling storage capacity in a data environment using a separate control environment, comprising:
under control of one or more computer systems configured with executable instructions, obtaining performance information for a logical data volume in the data environment, the performance information including at least one of storage usage information or storage capacity information for the logical data volume, the logical data volume corresponding to data stored among one or more physical volumes; extracting historical information for the logical data volume, the historical information representing values of at least some of the performance information over a period of time; analyzing the performance information and the historical information using at least one prediction algorithm to predict that an anticipated usage value will fall outside of at least one specified range within at least one specified time period; selecting a scaling action for adjusting a storage capacity of the logical data volume for the anticipated usage value to fall inside the at least one specified range within the at least one specified time period based at least in part upon determining that a cost of implementing the scaling action is a lowest cost among a plurality of scaling options; determining whether authorization is granted for implementing the scaling option based at least in part upon the cost of implementing the scaling option not exceeding a specified cost threshold; and executing a workflow in the separate control environment for adjusting the storage capacity of the logical data volume in the data environment based at least in part upon the scaling option in response to determining that the authorization is granted, the storage capacity being adjusted in the data environment by;
(a) changing a number of the one or more physical volumes that collectively provide the storage capacity for the logical data volume without reducing availability of the logical data volume and (b) balancing input output performance among the one or more physical volumes.- View Dependent Claims (2, 3)
-
4. A computer-implemented method of scaling aspects of a data environment using a separate control environment, comprising:
under control of one or more computer systems configured with executable instructions, obtaining performance information for at least one resource of a database in the data environment, the performance information including at least one of usage information or capacity information for the at least one resource, the at least one resource associated with a logical device corresponding to one or more physical devices; extracting historical information for the at least one resource, the historical information representing values of at least some of the performance information over a period of time; analyzing the performance information and the historical information using at least one prediction algorithm to predict that an anticipated usage value for the at least one resource will fall outside of at least one specified range within at least one specified time period; selecting a scaling action, from among a plurality of scaling options, for adjusting a capacity of the at least one resource, the capacity of the at least one resource being adjusted based at least in part upon the anticipated usage value, the scaling action being selected based at least in part upon a respective cost corresponding to each of the plurality of scaling actions; determining whether authorization is granted for the scaling option based at least in part upon the cost corresponding to the scaling option; and executing a workflow in the separate control environment for adjusting the capacity of the at least one resource in the data environment based at least in part upon the scaling option in response to determining that the authorization is granted, the capacity being adjusted in the data environment by;
(a) changing a number of the one or more physical devices that collectively provide the capacity for the logical device and (b) balancing input output performance among the one or more physical devices.- View Dependent Claims (5, 6, 7, 8, 9, 10, 11, 12, 13)
-
14. A system for scaling aspects of a data environment using a separate control environment, comprising:
-
at least one hardware processor; and hardware memory including instructions that, when executed by the at least one processor, cause the system to; obtain performance information for at least one resource of a database in the data environment, the performance information including at least one of usage information or capacity information for the at least one resource, the at least one resource including a logical device volume corresponding to one or more physical devices; extract historical information for the at least one resource, the historical information representing values of at least some of the performance information over a period of time; analyze the performance information and the historical information using at least one prediction algorithm to predict that an anticipated usage value for the at least one resource will fall outside of at least one specified range within at least one specified time period; select a scaling action, from among a plurality of scaling options, for adjustment of a capacity of the at least one resource, the adjustment being based at least in part upon the anticipated usage value, selection of the scaling action being based at least in part upon a respective cost corresponding to each of the plurality of scaling actions; determine whether authorization is granted for the scaling option based at least in part upon the cost corresponding to the scaling option; and execute a workflow in the separate control environment for the adjustment of the capacity of the at least one resource in the data environment based at least in part upon the scaling option in response to a determination that the authorization is granted, the adjustment including (a) a changing of a number of the one or more physical devices that collectively provide the capacity for the logical device and (b) a balancing of input output performance among the one or more physical devices. - View Dependent Claims (15, 16, 17, 18)
-
-
19. A computer program product embedded in a non-transitory computer-readable storage medium and including instructions that, when executed by at least one computing device, cause the at least one computing device to:
-
obtain performance information for at least one resource of a database in a data environment, the performance information including at least one of usage information or capacity information for the at least one resource, the at least one resource including a logical device corresponding to one or more physical devices; extract historical information for the at least one resource, the historical information representing values of at least some of the performance information over a period of time; analyze the performance information and the historical information using at least one prediction algorithm to predict that an anticipated usage value for the at least one resource will fall outside of at least one specified range within at least one specified time period; select a scaling action, from among a plurality of scaling options, for adjustment of a capacity of the at least one resource, the adjustment being based at least in part upon the anticipated usage value, selection of the scaling action being based at least in part upon a respective cost corresponding to each of the plurality of scaling actions; determine whether authorization is granted for the scaling option based at least in part upon the cost corresponding to the scaling option; and execute a workflow in a control environment for the adjustment of the capacity of the at least one resource in the data environment based at least in part upon the scaling option in response to a determination that the authorization is granted, the adjustment including;
(a) a changing of a number of the one or more physical devices that collectively provide the capacity for the logical device and (b) a balancing of input output performance among the one or more physical devices. - View Dependent Claims (20, 21, 22, 23)
-
Specification