Managing data in a multi-level raid storage array
First Claim
1. A processor-readable medium in a multi-level RAID (redundant array of independent disks) storage array comprising processor-executable instructions configured for:
- initiating a data migration process;
searching for migratable data;
checking an array utilization rate if migratable data is found; and
migrating the migratable data if the array utilization rate does not exceed a minimum threshold.
3 Assignments
0 Petitions
Accused Products
Abstract
A system and methods implemented within a multi-level RAID (redundant array of independent disks) storage array operate to initially write data to a lower performing RAID level within the array. In addition, data is migrated between lower and higher performing RAID levels via data migration processes that function as background processes. Benefits of the disclosed system and methods include a non-disruptive environment for servicing host I/O (input/output) requests. Array response times are significantly reduced by not allowing initial data writes to interfere with higher performing RAID levels and by migrating data between lower and higher performing RAID levels in the background when the array is less busy servicing host I/O requests.
-
Citations
45 Claims
-
1. A processor-readable medium in a multi-level RAID (redundant array of independent disks) storage array comprising processor-executable instructions configured for:
-
initiating a data migration process;
searching for migratable data;
checking an array utilization rate if migratable data is found; and
migrating the migratable data if the array utilization rate does not exceed a minimum threshold. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A processor-readable medium in a multi-level RAID (redundant array of independent disks) storage array comprising processor-executable instructions configured for:
-
periodically initiating a data promotion process;
as part of the data promotion process, determining if data blocks in a lower performing RAID level are promotion candidates;
if the lower performing RAID level contains a promotion candidate, initiating a utilization check process to monitor array utilization; and
if the array utilization reaches a threshold level, promoting promotion candidates from the lower performing RAID level to a higher performing RAID level. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19, 20, 21)
-
-
22. A processor-readable medium in a multi-level RAID (redundant array of independent disks) storage array comprising processor-executable instructions configured for:
-
periodically initiating a data demotion process;
as part of the data demotion process, determining if old data blocks in a higher performing RAID level are demotion candidates;
if the higher performing RAID level contains a demotion candidate, initiating a utilization check process to monitor array utilization; and
if the array utilization reaches a threshold level, demoting demotion candidates from the higher performing RAID level to a lower performing RAID level.
-
-
23. A processor-readable medium in a multi-level RAID (redundant array of independent disks) storage array comprising processor-executable instructions configured for:
-
periodically checking age of data stored in a higher performing RAID level and a lower performing RAID level;
if a lower performing RAID level data block has been updated more recently than a higher performing RAID level data block, initiating a utilization check process to monitor array utilization; and
if the array utilization reaches a threshold level, promoting the lower performing RAID level data block to the higher performing RAID level and demoting the higher performing RAID level data block to the lower performing RAID level.
-
-
24. A method for migrating data in a multi-level RAID (redundant array of independent disks) storage array comprising:
-
initiating a data migration process in a multi-level RAID (redundant array of independent disks) storage array;
searching for migratable data;
checking an array utilization rate if migratable data is found; and
migrating the migratable data if the array utilization rate is at or below a minimum threshold.
-
-
25. A method of managing data in a multi-level RAID (redundant array of independent disks) storage array comprising:
-
periodically initiating a data promotion process;
as part of the data promotion process, determining if data blocks in a lower performing RAID level are promotion candidates;
if the lower performing RAID level contains a promotion candidate, initiating a utilization check process to monitor array utilization; and
if the array utilization reaches a threshold level, promoting promotion candidates from the lower performing RAID level to a higher performing RAID level. - View Dependent Claims (26)
-
-
27. A method of managing data in a multi-level RAID (redundant array of independent disks) storage array comprising:
-
periodically checking the age of data stored in a higher performing RAID level and a lower performing RAID level;
if a lower performing RAID level data block has been updated more recently than a higher performing RAID level data block, initiating a utilization check process to monitor array utilization; and
if the array utilization reaches a threshold level, promoting the lower performing RAID level data block to the higher performing RAID level and demoting the higher performing RAID level data block to the lower performing RAID level.
-
-
28. A virtual RAID (redundant array of independent disks) storage array comprising:
-
disk drives employing a lower performing RAID level and a higher performing RAID level;
a data migration module configured to determine migratable data and migrate the migratable data between RAID levels; and
a utilization module to monitor a utilization rate of the array and determine when to migrate the migratable data. - View Dependent Claims (29)
-
-
30. A virtual storage array comprising:
-
storage components employing a lower performing storage level and a higher performing storage level;
a data migration module configured to determine migratable data and migrate the migratable data between storage levels; and
a utilization module to monitor a utilization rate of the array and determine when to migrate the migratable data. - View Dependent Claims (31, 32)
-
-
33. A virtual RAID (redundant array of independent disks) storage array comprising:
-
disk drives employing a lower performing RAID level and a higher performing RAID level;
a data promotion module configured to execute periodically to determine promotion candidates and to promote the promotion candidates from the lower performing RAID level to the higher performing RAID level at a time when the array is not busy; and
a utilization module configured to monitor a utilization rate of the array and to determine the time when the array is not busy.
-
-
34. A virtual RAID (redundant array of independent disks) storage array comprising:
-
disk drives employing a lower performing RAID level and a higher performing RAID level;
a data demotion module configured to execute periodically to determine demotion candidates and to demote the demotion candidates from the higher performing RAID level to the lower performing RAID level at a time when the array is not busy; and
a utilization module configured to monitor a utilization rate of the array and to determine the time when the array is not busy.
-
-
35. A system comprising:
-
a RAID (redundant array of independent disks) storage array to service data requests from a host computer, the RAID storage array having disk drives employing a lower performing RAID level and a higher performing RAID level;
a data migration module configured to execute periodically and migrate data between RAID levels; and
a utilization module configured to execute when migratable data is located and to inform the data migration module when to migrate the migratable data.
-
-
36. A multi-level RAID (redundant array of independent disks) storage array comprising:
-
means for initiating a data migration process;
means for searching for migratable data;
means for checking an array utilization rate if migratable data is found; and
means for migrating the migratable data if the array utilization rate does not exceed a minimum threshold. - View Dependent Claims (37, 38, 39, 40, 41, 42, 43, 44, 45)
-
Specification