Claims Analysis
Total Claims: 10
Claim 1
Independent Claim
197 words
A method for using a reserved amount of unused storage space in a hierarchic data storage system (10); the data storage system comprising multiple storage disks (12) that define a physical storage space (34); the method comprising the following steps: mapping the physical storage space (34) into a RAID-level virtual storage space (40) having multiple first and second RAID areas, the first RAID areas having first allocation blocks which store data according to a first RAID level and the second RAID areas having second allocation blocks which store data according to a second RAID level; providing a reserved amount of unused storage space within the RAID-level virtual storage space (40); mapping the RAID-level virtual storage space (40) into an application-level virtual storage space (50) having multiple virtual blocks; migrating data from a first used allocation block to a second used allocation block so that the data once stored according to one of the first or second RAID levels is now stored according to the other of the first or second RAID levels, whereby following said migrating, the second allocation block is used and the first allocation block becomes unused, thereby conserving the amount of unused storage space.
Claim 2
Dependent Claim
53 words
A method according to claim 1 further comprising: providing N storage disks in the data storage system (10); and providing a reserved amount of unused storage space that is equivalent to at least a number of virtual blocks that can be stored in a largest possible RAID area of a multiple of N-1.
Claim 3
Independent Claim
264 words
A method for using reserved storage space in a hierarchic data storage system (10); the data storage system comprising multiple storage disks (12) that define a physical storage space (34); the method comprising the following steps: mapping the physical storage space (40) into a RAID-level virtual storage space (40) having mirror, parity, and unused RAID areas; the mirror RAID areas having mirror allocation blocks which store data according to mirror redundancy, the parity RAID areas having parity allocation blocks which store data according to parity redundancy, and the unused RAID areas containing no data; providing a minimum reserved amount of unused storage space within the RAID-level virtual storage space (40) that can be allowed to distribute across the storage disks; mapping the RAID-level virtual storage space (40) into an application-level virtual storage space (50) having multiple virtual blocks; attempting to locate a usable mirror allocation block; in the event that a usable mirror allocation block is located, writing data to the mirror allocation block; and in the event that no usable mirror allocation block is located, creating a usable mirror allocation block to receive the data by conducting at least one of the following additional steps: (1) locating an unused RAID area and converting it to a mirror RAID area containing a usable mirror allocation block; (2) gathering empty mirror allocation blocks or empty parity allocation blocks into an unused RAID area that may be used to create a mirror RAID area; and (3) migrating data from mirror allocation blocks to parity allocation blocks and gathering unused mirror allocation blocks into unused RAID areas.
Claim 4
Dependent Claim
179 words
A method according to claim 3 wherein the step of creating a usable mirror allocation block comprises the following steps in sequential order until a usable mirror allocation block is created: (1) locating an unused RAID area and converting it to a mirror RAID area containing a usable mirror allocation block; (2) gathering empty parity allocation blocks into an unused RAID area and converting the unused RAID area to a mirror RAID area containing a usable mirror allocation block; and (3) alternately performing the following steps (a) and (b) until an unused RAID area is created, then performing step (c): (a) migrating data from a mirror allocation block to a parity allocation block to empty the mirror allocation block; (b) gathering the empty mirror allocation block into an unused RAID area; and (c) following said steps (3)(a) and (3)(b), converting the unused RAID area into a parity RAID area; repeating said steps (3)(a)-(3)(c) until an unused RAID area is created that can be converted into a mirror RAID area without violating the minimum reserved amount of unused storage space.
Claim 5
Independent Claim
208 words
A method for using a reserved amount of unused reserved storage space in a hierarchic data storage system (10); the data storage system comprising multiple storage disks (12) that define a physical storage space (34); the method comprising the following steps: mapping the physical storage space (34) into a RAID-level virtual storage space (40) having multiple first and second RAID areas, the first RAID areas having first allocation blocks which store data according to a first RAID level and the second RAID areas having second allocation blocks which store data according to a second RAID level; providing a minimum number of unused allocation blocks within the RAID-level virtual storage space (40) that can be distributed across the storage disks; mapping the RAID-level virtual storage space (40) into an application-level virtual storage space (50) having multiple virtual blocks; migrating data between the first and second allocation blocks so that the data once stored according to one of the first or second RAID levels is now stored according to the other of the first or second RAID levels; locating a first or second RAID area that is partially filled with data; and emptying the located RAID area by moving the data from the located RAID area to unused allocation blocks.
Claim 6
Dependent Claim
53 words
A method according to claim 5 further comprising: providing N storage disks in the data storage system (10); and providing a reserved amount of unused storage space that is equivalent to at least a number of virtual blocks that can be stored in a largest possible RAID area of a multiple of N-1.
Claim 7
Dependent Claim
27 words
A method according to claim 5 wherein the locating step comprises locating a first or second RAID area that contains the least amount of data stored therein.
Claim 8
Dependent Claim
24 words
A method according to claim 5 further comprising the additional step of rewriting data from a whole RAID area to the emptied RAID area.
Claim 9
Dependent Claim
26 words
A method according to claim 5 further comprising the additional step of converting the emptied RAID area to one of a mirror or parity RAID area.
Claim 10
Dependent Claim
73 words
A method according to claim 5 wherein: the step of providing a minimum number of unused allocation blocks comprises providing unused allocation blocks in both the first and second RAID areas; and the step of emptying a located RAID area comprises moving data from the located RAID area to unused allocation blocks in both the first RAID areas of the first RAID level and the second RAID areas of the second RAID level.