Disk array having hot spare resources and methods for using hot spare resources to store user data
First Claim
1. A method for providing storage space in a hierarchic storage disk array for use in rebuilding in the event a storage disk fails, the disk array having a plurality of storage disks that define a physical storage space the physical storage space being mapped into a RAID-level virtual storage space that presents the physical storage space as multiple RAID areas including mirror and parity RAID areas, the method comprising the following steps:
- prior to a disk failure, storing user data in both the mirror and parity RAID areas in a manner that the user data is distributed across all of the storage disks;
storing redundant data on at least one of the storage disks;
ensuring that a sufficient quantity of storage space can be made available for reconstructing the user data and restoring redundancy in the event one of the storage disks fails so that the user data is stored in both the mirror and parity RAID areas on all storage disks before and after the storage disk failure; and
using the quantity of storage space to store both user and redundant data until the storage disk failure occurs.
6 Assignments
0 Petitions
Accused Products
Abstract
A disk array data storage system has a plurality of storage disks and a disk array controller for coordinating transfer of user data to and from the storage disks. A memory manager is provided to manage memory allocation and data storage on the disk array. The memory manager maintains a sufficient quantity of hot spare storage space that can be made available for reconstructing the user data and restoring redundancy in the event one of the storage disks fails. Until a disk fails, however, the memory manager uses the hot spare space to store user and redundant data while guaranteeing that the storage space can be used for rebuilding following a storage disk failure. In this manner, all storage disks in the array are used to store user data, and additionally to maintain storage space that can be easily made available for purposes of hot spare in the event of disk failure.
-
Citations
20 Claims
-
1. A method for providing storage space in a hierarchic storage disk array for use in rebuilding in the event a storage disk fails, the disk array having a plurality of storage disks that define a physical storage space the physical storage space being mapped into a RAID-level virtual storage space that presents the physical storage space as multiple RAID areas including mirror and parity RAID areas, the method comprising the following steps:
-
prior to a disk failure, storing user data in both the mirror and parity RAID areas in a manner that the user data is distributed across all of the storage disks; storing redundant data on at least one of the storage disks; ensuring that a sufficient quantity of storage space can be made available for reconstructing the user data and restoring redundancy in the event one of the storage disks fails so that the user data is stored in both the mirror and parity RAID areas on all storage disks before and after the storage disk failure; and using the quantity of storage space to store both user and redundant data until the storage disk failure occurs. - View Dependent Claims (2, 3, 4)
-
-
5. A method for providing storage space for use in rebuilding in a hierarchic data storage system, the data storage system comprising a disk array of more than two storage disks of selected capacities that define a physical storage space, the method comprising the following steps:
-
mapping the physical storage space into a RAID-level virtual storage space which presents the physical storage space as multiple RAID areas, the RAID areas including mirror RAID areas which store data according to mirror redundancy and parity RAID areas which store data according to parity redundancy, the mirror and parity RAID areas extending across all of the storage disks in the disk array; storing user data in both the mirror and parity RAID areas in a manner that the user data is distributed across all of the storage disks in the disk array; ensuring that a sufficient quantity of the RAID-level virtual storage space can be made available for reconstructing user data and restoring redundancy in the event of a storage disk failure; using the quantity of the RAID-level virtual storage space to store data until the storage disk failure occurs; and in the event of a storage disk failure, performing one of the following two steps;
(a) using unused storage space which is not allocated as mirror or parity RAID areas as the storage space to reconstruct user data and restore redundancy from the failed storage disk, or (b) migrating user data from mirror RAID areas to parity RAID areas and packing the mirror RAID areas to free up storage space to compensate for the space lost from the failed storage disk;wherein each storage disk stores data according to both mirror and parity redundancy before and after storage disk failure. - View Dependent Claims (6, 7, 8, 9, 10)
-
-
11. A data storage system comprising:
-
a hierarchic disk array having a plurality of storage disks that define a physical storage space; a disk array controller coupled to the disk array for coordinating transfer of user data to and from the storage disks; a memory manager operatively coupled to the disk array controller to manage a map of the physical storage space into a RAID-level virtual storage space which presents the physical storage space as multiple RAID areas including mirror RAID areas which store data according to mirror redundancy and parity RAID areas which store data according to parity redundancy, the memory manager storing user data in both the mirror and parity RAID areas in a manner that the user data is distributed across all of the storage disks in the disk array prior to any disk failure; and the memory manager maintaining a sufficient quantity of storage space that can be made available for reconstructing the user data and restoring redundancy in the event one of the storage disks fails, the memory manager using the quantity of storage space to store both user and redundant data while guaranteeing that the storage space can be made available for rebuilding following a storage disk failure so that each storage disk stores the user data according to both mirror and parity redundancy before and after storage disk failure. - View Dependent Claims (12, 13, 14, 15, 16)
-
-
17. A method for operating a hierarchic data storage system, the data storage system comprising a disk array of plural storage disks of selected capacities that define a physical storage space, the physical storage space being mapped into a RAID-level virtual storage space which presents the physical storage space as multiple RAID areas, the RAID areas including mirror RAID areas which store data according to mirror redundancy and parity RAID areas which store data according to parity redundancy, the RAID areas extending across the storage disks in the disk arrays, the method comprising the following steps:
-
storing user data in the minor and parity RAID areas in a manner that the user data is distributed across all of the storage disks in the disk array and all of the storage disks store the user data according to both minor and parity RAID redundancy; ensuring that a sufficient quantity of the RAID-level virtual storage space can be made available for reconstructing user data and restoring redundancy in the event of a storage disk failure; dynamically migrating the user data between the mirror and parity RAID areas; in the event of a storage disk failure, continuously migrating the user data from mirror RAID areas to parity RAID areas and rebuilding redundancy; and wherein each storage disk stores the user data according to both mirror and parity redundancy before and after storage disk failure. - View Dependent Claims (18, 19, 20)
-
Specification