Claims
- 1. A data storage system comprising:a plurality of data storage devices; a plurality of data stores, each of said plurality of data stores capable of binding to one of said plurality of data storage devices; a control connected to said plurality of data storage devices for moving at least one of said plurality of data stores among said plurality of storage devices in a plurality of steps from an initial configuration to a goal configuration; and a parallelization migration plan generator connected to said control and responsive to said initial configuration and said goal configuration to provide a migration plan capable of causing said control to move said plurality of data stores in parallel moves during one of the plurality of steps from said initial configuration to said goal configuration, said parallelization migration plan generator includes a migration planner capable of providing a migration plan for moving at least one of said plurality of data stores directly from at least one of said plurality of data storage devices in said initial configuration to at least one of said plurality of data storage devices in said goal configuration in a terminal move, said migration planner provides a migration plan for moving at least one of said plurality of said data stores from said plurality of data storage devices to an intermediate data storage device in said plurality of data storage devices in a shunt move when no terminal moves are possible whereby a data store is moved to one of said plurality of data storage devices which is not part of the goal configuration before moving to at least one of said plurality of data storage devices in said goal configuration.
- 2. The data storage system as claimed in claim 1 wherein:said migration planner is capable of providing a migration plan in which said shunt move is the result of a migration plan selected from a group consisting of Greedy, Cycle, Hillclimbing, Simulated Annealing, and a combination thereof; and said parallelization migration plan generator includes a parallelization mechanism capable of providing a migration plan in which terminal moves and shunt moves can be made in parallel.
- 3. The data storage system as claimed in claim 1 including:a data storage network connected to said plurality of data storage devices; and a plurality of hosts connected to said data storage network.
- 4. The data storage system as claimed in claim 1 wherein:said migration plan generator includes a migration planner capable of providing a migration plan for moving at least one of said plurality of data stores to and from said plurality of data storage devices based on a plan selected from a group consisting of Simple, Greedy Simple, Greedy, Cycle, Hillclimbing, Simulated Annealing, Other, and a combination thereof; and said parallelization migration plan generator includes a parallelization mechanism capable of providing a migration plan in which terminal moves and shunt moves can be made in parallel.
- 5. A data storage system comprising:plurality of data storage devices; a plurality of data stores, each of said plurality of data stores capable of binding to one of said plurality of data storage devices; a control connected to said data storage devices for moving said plurality of data stores among said plurality of data storage devices in a plurality of steps from an initial configuration to a goal configuration while meeting the constraints of each of said plurality of data storage devices; a parallelization migration plan generator connected to said control responsive to said initial configuration and said goal configuration to provide a heuristic migration plan capable of causing said control to move said plurality of data stores in parallel moves during one of the plurality of steps from said initial configuration data storage devices to said goal configuration data storage devices, said parallelization migration plan generator includes a migration planner capable of providing a migration plan for moving said plurality of data stores among said plurality of data storage devices in terminal moves until no terminal move can be made, the terminal moves made in an order based on an order selected from a group consisting of Random Selection, Preset Ordering, a Function of each of said plurality of data stores, and a combination thereof; said parallelization migration plan generator includes a dependency identification mechanism capable of determining dependencies of moves; said parallelization migration plan generator includes a parallelization mechanism capable of providing a migration plan in which moves not having dependencies can be performed in parallel with moves having dependencies; said parallelization migration plan generator includes a migration planner capable of providing a migration plan for moving said plurality of data stores among said plurality of data storage devices in terminal moves until no terminal move can be made when a shunt move will be made which leads to the lowest contention for said plurality of data storage devices; said parallelization migration plan generator includes an existence dependency identification mechanism for identifying when one move of said data store is dependent on another move of said data store; said parallelization plan generator includes a utilization dependency identification mechanism for identifying when one of said plurality of data storage devices is the destination for a move which removes said data store from said one of said plurality of data storage devices; and said parallelization migration plan generator includes a parallelization mechanism capable of providing a migration plan in which existence and utilization dependent moves are run in parallel with independent moves.
- 6. The data storage system as claimed in claim 5 wherein:said parallelization migration plan generator includes a migration planner capable of providing a migration plan for moving said plurality of data stores in parallel moves among said plurality of data storage devices in terminal moves until no terminal move can be made when a shunt move will be made that leads to the lowest contention for the sum of said plurality of data storage devices, and then said migration plan continues to make terminal moves.
- 7. The data storage system as claimed in claim 5 wherein:said parallelization migration plan generator includes a migration planner capable of providing a migration plan for moving said plurality of data stores in parallel moves among said plurality of data storage devices in terminal moves until no terminal move can be made when a shunt move is found by finding cycles with small stores Greedily and then shunting the largest data store in the cycle to any of said plurality of data storage devices for which the constraints can be met.
- 8. The data storage system as claimed in claim 5 wherein:said parallelization migration plan generator includes a migration planner capable of providing a migration plan for moving said plurality of data stores in parallel moves among said plurality of data storage devices in selected moves that minimize the global contention of the sum of said plurality of data storage devices.
- 9. The data storage system as claimed in claim 5 wherein:said parallelization migration plan generator includes a migration planner capable of providing a migration plan for moving said plurality of data stores in parallel moves among said plurality of data storage devices in selected moves based on Simulated Annealing using a contention metric as an energy function.
- 10. The data storage system as claimed in claim 5 wherein:said parallelization migration plan generator includes a migration planner capable of providing a migration plan for moving said plurality of data stores in parallel moves among said plurality of data storage devices in selected moves while switching from plans selected from a group consisting of Simple, Greedy Simple, Greedy, Cycle, Hillclimbing, Simulated Annealing, Other, and a Meta plan.
- 11. The data storage system as claimed in claim 5 including:a data storage network connected to said plurality of data storage devices; and a plurality of hosts connected to said data storage network.
- 12. The data storage system as claimed in claim 5 wherein:said parallelization migration plan generator includes a migration planner capable of providing a migration plan for moving said plurality of data stores in parallel among said plurality of data storage devices in moves which use the lowest energy plan where the sequence of said moves is proportional to the energy of said plan.
- 13. The data storage system as claimed in claim 5 wherein:said parallelization migration plan generator includes a migration planner capable of providing a migration plan for moving said plurality of data stores in parallel among said plurality of data storage devices in moves which use genetic programming on a population of said plans from a group consisting of Greedy, Cycle, Hillclimbing, and Simulated Annealing plans to determine the migration plan.
- 14. The data storage system as claimed in claim 5 wherein:said parallelization migration plan generator includes a migration planner capable of providing a migration plan for moving said plurality of data stores in parallel among said plurality of data storage devices in moves which use a graph-theoretical heuristic to determine the moves.
- 15. The data storage system as claimed in claim 5 wherein:said parallelization migration plan generator includes a migration planner capable of providing a migration plan for moving said plurality of data stores in parallel among said plurality of data storage devices in moves which will be designated as a “fail” when a migration plan is not generated within a predetermined period of time.
- 16. The data storage system as claimed in claim 5 wherein:said parallelization migration plan generator includes an existence dependency identification mechanism for identifying when one move of said data store is dependent on another move of said data store; said parallelization plan generator includes a utilization dependency identification mechanism for identifying when one of said plurality of data storage devices is the destination for a move which removes said data store from said one of said plurality of data storage devices; said parallelization migration plan generator includes a parallelization mechanism capable of providing a migration plan in which existence and utilization dependent moves are run in parallel with independent moves; and said existence and utilization dependency identification mechanisms operate in parallel.
CROSS-REFERENCE TO RELATED APPLICATION(S)
The present application contains subject matter related to a concurrently filed U.S. patent application Ser. No. 09/394,221 by Elizabeth L. Borowsky, Richard A. Golding, and Dushyanth Narayanan entitled “COMPUTER DATA STORAGE SYSTEM WITH MIGRATION PLAN GENERATOR” now U.S. Pat. No. 6,381,619. This related application is being filed contemporaneously herewith, and is hereby incorporated by reference.
US Referenced Citations (5)
Number |
Name |
Date |
Kind |
5214768 |
Martin et al. |
May 1993 |
A |
5719983 |
Henderson et al. |
Feb 1998 |
A |
5894560 |
Carmichael et al. |
Apr 1999 |
A |
6108748 |
Ofek et al. |
Aug 2000 |
A |
6279074 |
Pence |
Aug 2001 |
B1 |