Automated data relocation among storage tiers based on storage load
First Claim
1. A method for relocating data in a physical storage pool comprising a plurality of storage tiers having differing performance characteristics, the physical storage pool being mapped into one or more logical units, each logical unit comprising a plurality of logical slices of data storage, the method comprising:
- receiving a relocation list, the relocation list including, for each of a plurality of logical slices, a slice identifier, a temperature value, and a current physical location;
determining a destination tier for each logical slice on the relocation list;
evaluating for each logical slice on the relocation list a performance gain expected to be achieved by moving the logical slice from its current physical location to a new location in the destination tier; and
relocating data in a logical slice from its current physical location to the new location based on the evaluation;
wherein the destination tier comprises a plurality of RAID groups, each RAID group having an expected temperature value and a performance capability value, the performance capability value being proportional to the throughput of the RAID group; and
wherein the new location is in a destination RAID group selected based on a ratio of expected temperature value to performance capability value.
9 Assignments
0 Petitions
Accused Products
Abstract
Methods and systems are disclosed for relocating data in a physical storage pool comprising a plurality of storage tiers having differing performance characteristics, the physical storage pool being mapped into one or more logical units, each logical unit comprising a plurality of logical slices of data storage. The methods and systems can involve receiving a relocation list, the relocation list including, for each of a plurality of logical slices, a slice identifier, a temperature value, and a current physical location, determining a destination tier for each logical slice on the relocation list, evaluating for each logical slice on the relocation list a performance gain expected to be achieved by moving the logical slice from its current physical location to a new location in the destination tier, and relocating data in a logical slice from its current physical location to the new location based on the evaluation.
-
Citations
19 Claims
-
1. A method for relocating data in a physical storage pool comprising a plurality of storage tiers having differing performance characteristics, the physical storage pool being mapped into one or more logical units, each logical unit comprising a plurality of logical slices of data storage, the method comprising:
-
receiving a relocation list, the relocation list including, for each of a plurality of logical slices, a slice identifier, a temperature value, and a current physical location; determining a destination tier for each logical slice on the relocation list; evaluating for each logical slice on the relocation list a performance gain expected to be achieved by moving the logical slice from its current physical location to a new location in the destination tier; and relocating data in a logical slice from its current physical location to the new location based on the evaluation; wherein the destination tier comprises a plurality of RAID groups, each RAID group having an expected temperature value and a performance capability value, the performance capability value being proportional to the throughput of the RAID group; and wherein the new location is in a destination RAID group selected based on a ratio of expected temperature value to performance capability value. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17)
-
-
18. A storage system comprising:
-
a physical storage pool including a plurality of storage tiers having differing performance characteristics, the physical storage pool being mapped into one or more logical units, each logical unit comprising a plurality of logical slices of data storage; a processor coupled to memory and in communication with the physical storage pool; wherein the processor is programmed to relocate data in a physical storage pool by; receiving a relocation list, the relocation list including, for each of a plurality of logical slices, a slice identifier, a temperature value, and a current location, the current location including a current physical location; determining a destination tier for each logical slice on the relocation list; evaluating for each logical slice on the relocation list a performance gain expected to be achieved by moving the logical slice from its current physical location to a new location in the destination tier; and relocating data in a logical slice from its current physical location to the new location based on the evaluation; wherein the destination tier comprises a plurality of RAID groups, each RAID group having an expected temperature value and a performance capability value, the performance capability value being proportional to the throughput of the RAID group; and wherein the new location is in a destination RAID group selected based on a ratio of expected temperature value to performance capability value.
-
-
19. A method for relocating data in a physical storage pool comprising a plurality of storage tiers having differing performance characteristics, the physical storage pool being mapped to a plurality of logical units, each logical unit comprising at least one slice, the method comprising:
-
receiving a pool candidate list including, for each of a plurality of slices, an entry comprising a slice identifier, a current tier, an optimal tier, and a temperature value, wherein the current tier for each listed slice is different from the optimal tier; dividing the pool candidate list into a plurality of logical unit candidate lists, each logical unit candidate list including only entries corresponding to slices within a single logical unit; generating an execution list that only includes, for each of the logical unit candidate lists, an entry corresponding to the slice in that logical unit candidate list with the highest temperature value; and relocating the data corresponding to each slice in the execution list from a first physical location in the slice'"'"'s current tier to a second physical location in the slice'"'"'s optimal tier in order of expected performance gain.
-
Specification