Data storage resource allocation by employing dynamic methods and blacklisting resource request pools
First Claim
1. A system having a processor for dynamically assigning data storage requests to data storage resources, the system comprising:
- a means for receiving an initial request plan specifying how an alternate data path is to be chosen when preferred data storage resources are not available;
a means for building a grid allocation table by grouping data storage resources in columns or rows of the grid allocation table according to common characteristics of the data storage resources;
a means for assigning, when preferred resources are available, a row or column, respectively, of the grid allocation table to a data allocation request using preferred data storage resources;
a means for assigning, when preferred data storage resources are not available, an alternate set of data storage resources to the data storage request;
wherein each column or row of the grid allocation table operates independently on separate data storage requests;
a means for determining whether requested resources from a failed request comprise common or unique resources; and
a means for selectively adding the failed request to the blacklist table when the failed request corresponded to a common resource, and not adding the failed request to the blacklist table when the failed request corresponded to a unique requested resource.
4 Assignments
0 Petitions
Accused Products
Abstract
A resource allocation system begins with an ordered plan for matching requests to resources that is sorted by priority. The resource allocation system optimizes the plan by determining those requests in the plan that will fail if performed. The resource allocation system removes or defers the determined requests. In addition, when a request that is performed fails, the resource allocation system may remove requests that require similar resources from the plan. Moreover, when resources are released by a request, the resource allocation system may place the resources in a temporary holding area until the resource allocation returns to the top of the ordered plan so that lower priority requests that are lower in the plan do not take resources that are needed by waiting higher priority requests higher in the plan.
-
Citations
21 Claims
-
1. A system having a processor for dynamically assigning data storage requests to data storage resources, the system comprising:
-
a means for receiving an initial request plan specifying how an alternate data path is to be chosen when preferred data storage resources are not available; a means for building a grid allocation table by grouping data storage resources in columns or rows of the grid allocation table according to common characteristics of the data storage resources; a means for assigning, when preferred resources are available, a row or column, respectively, of the grid allocation table to a data allocation request using preferred data storage resources; a means for assigning, when preferred data storage resources are not available, an alternate set of data storage resources to the data storage request; wherein each column or row of the grid allocation table operates independently on separate data storage requests; a means for determining whether requested resources from a failed request comprise common or unique resources; and a means for selectively adding the failed request to the blacklist table when the failed request corresponded to a common resource, and not adding the failed request to the blacklist table when the failed request corresponded to a unique requested resource. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A method of dynamically assigning data storage requests to data storage resources, the method comprising:
-
receiving an initial request plan specifying how an alternate data path is to be chosen when preferred data storage resources are not available; building a grid allocation table by grouping data storage resources in columns or rows of the grid allocation table according to common characteristics of the data storage resources; assigning, when preferred resources are available, a row or column, respectively, of the grid allocation table to a data allocation request using preferred data storage resources; assigning, when preferred data storage resources are not available, an alternate set of data storage resources to the data storage request; wherein each column or row of the grid allocation table operates independently on separate data storage requests; determining whether requested resources from a failed request comprise common or unique resources; and selectively adding the failed request to the blacklist table when the failed request corresponded to a common resource, and not adding the failed request to the blacklist table when the failed request corresponded to a unique requested resource. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A non-transitory computer-readable medium encoded with instructions for controlling a computer system in performing data management operations on data objects located at different physical locations, by a method comprising:
-
determining, for each of multiple data management operation, whether each of multiple requested resources for use in performing the data management operation has been blacklisted by comparing a received data storage request to a generated blacklist table to blacklist that operation based on a resource requirement category of that operation; creating a data structure for allocating the data management resources, wherein the created data structure for resource allocation selects one or more data management resources to perform each of the multiple data management operations based at least in part on— a determined location of the one or more data objects affected by the data management operation, and a grouping of at least two of the data management resources based on a similarity of at least one determined characteristic; performing the data management operations based on the created logical data structure for resource allocation; determining whether requested resources from a failed request comprise common or unique resources; and selectively adding the failed request to the blacklist table when the failed request failed because of requested common resources and not adding the failed request to the blacklist table when the failed request failed because of unique requested resources. - View Dependent Claims (16, 17, 18, 19, 20, 21)
-
Specification