Memory systems with data storage redundancy management
First Claim
Patent Images
1. A method for managing data on a disk array, comprising the following steps:
- providing physical storage space on a disk array of plural disks;
mapping the physical storage space into a first virtual storage space having first and second RAID areas, the first RAID area having first allocation blocks for holding data according to a first RAID level and the second RAID area having second allocation blocks for holding data according to a second RAID level;
mapping the first virtual storage space into a second virtual storage space having multiple virtual blocks, the first and second virtual blocks being associated with the first and second allocation blocks in respective RAID areas via a virtual block table;
selecting a first virtual block associated with a first allocation block in a first RAID area;
locating a second allocation block in a second RAID area;
transferring selected data from said first allocation block to said second allocation block so that the selected data once stored according to the first RAID level is now stored according to the second RAID level; and
modifying the virtual block table to reflect the transfer data to the second RAID area.
3 Assignments
0 Petitions
Accused Products
Abstract
A disk array has a plurality of disks, a disk array controller for coordinating data transfer to and from the disks, and a RAID management system for mapping two different RAID areas onto the disks. The RAID management system stores data in one of the RAID areas according to mirror redundancy, and stores data in the other RAID area according to parity redundancy. The RAID management system then shifts or migrates data between the mirror and parity RAID areas on the disks in accordance with a predefined performance protocol, such as data access recency or access frequency.
297 Citations
11 Claims
-
1. A method for managing data on a disk array, comprising the following steps:
-
providing physical storage space on a disk array of plural disks; mapping the physical storage space into a first virtual storage space having first and second RAID areas, the first RAID area having first allocation blocks for holding data according to a first RAID level and the second RAID area having second allocation blocks for holding data according to a second RAID level; mapping the first virtual storage space into a second virtual storage space having multiple virtual blocks, the first and second virtual blocks being associated with the first and second allocation blocks in respective RAID areas via a virtual block table; selecting a first virtual block associated with a first allocation block in a first RAID area; locating a second allocation block in a second RAID area; transferring selected data from said first allocation block to said second allocation block so that the selected data once stored according to the first RAID level is now stored according to the second RAID level; and modifying the virtual block table to reflect the transfer data to the second RAID area. - View Dependent Claims (2, 7, 8)
-
-
3. A method for managing data on a disk array, comprising the following steps:
-
providing physical storage space on a disk array of plural disks; mapping the physical storage space into a first virtual storage space having first and second RAID areas, the first RAID areas having first allocation blocks for holding data according to a first RAID level and the second RAID areas having second allocation blocks for holding data according to a second RAID level; mapping the first virtual storage space into a second virtual storage space having multiple blocks, the virtual blocks being associated with the first and second allocation blocks in respective first and second RAID areas via a virtual block table; selecting a first virtual block associated with a first allocation block in a first RAID area; creating a second allocation block in a second RAID area according to at least one of the following steps; (a) converting an unused and undesignated RAID area into a second RAID area having multiple second allocation blocks; (b) locating an unused allocation block in the first RAID area and migrating data from a used allocation block in a second RAID area to the unused allocation block to render the used allocation block available as the second allocation block; and (c) establishing an Unused and undesignated RAID area by migrating data in at least one allocation block in the first RAID area to an allocation block in the second RAID area, the unused and undesignated RAID area established in this step (c) then being converted to a second RAID area according to step (a); transferring selected data from the first allocation block to the second allocation block so that the selected data once stored according to the first RAID level is now stored according to the second RAID level; and modifying the virtual block table to reflect the transfer of data to the second RAID area. - View Dependent Claims (4, 5, 6)
-
-
9. A method for managing data on a disk array, comprising the following steps:
-
providing physical storage space on a disk array of plural disks;
mapping the physical storage space into a virtual storage space having mirror and parity RAID areas, the mirror RAID areas having mirror allocation blocks for holding data according to RAID level 1 and the parity RAID area having parity allocation blocks for holding data according to a RAID level 5; andmigrating data between the mirror and parity allocation blocks in the virtual storage space. - View Dependent Claims (10, 11)
-
Specification