Dynamically expandable and contractible fault-tolerant storage system with virtual hot spare
First Claim
1. A method of recovering from loss of a given storage device from a set of storage devices having a plurality of storage devices, each of the storage devices storing fixed-size blocks of data, the method comprising:
- under control of a storage manager external to the set of storage devices, storing data in a fault tolerant manner across a plurality of storage devices in the set of storage devices without mirroring the data within a single storage device; and
in response to a loss of the given storage device from the set, the given storage device having stored thereon a portion of the data used to provide fault tolerant storage of the data, such loss resulting in a reduced set having one or more remaining storage devices, causing, under control of the storage manager, automatic reconfiguring of storage of the data using information in the reduced set to store the fixed-size blocks of such data within the reduced set in a fault tolerant manner, such reconfiguring including causing a single selected storage device of the reduced set having an unmirrored copy of the portion to store a mirrored copy of the portion such that storage of the portion is converted from mirroring across two storage devices to mirroring in only the single storage device when fault tolerance cannot be provided for the portion across a plurality of the remaining storage devices or when the reduced set includes only the single selected storage device.
14 Assignments
0 Petitions
Accused Products
Abstract
A dynamically expandable and contractible fault-tolerant storage system employs a virtual hot spare that is created from unused storage capacity across a plurality of storage devices. This unused storage capacity is available if and when a storage device fails for storage of data recovered from the remaining storage device(s). On an ongoing basis, the storage system may determine the amount of unused storage capacity that would be required for the virtual hot spare (e.g., based on the number of storage devices, the capacities of the various storage devices, the amount of data stored, and the manner in which the data is stored) and generate a signal if additional storage capacity is needed for a virtual hot spare.
127 Citations
28 Claims
-
1. A method of recovering from loss of a given storage device from a set of storage devices having a plurality of storage devices, each of the storage devices storing fixed-size blocks of data, the method comprising:
-
under control of a storage manager external to the set of storage devices, storing data in a fault tolerant manner across a plurality of storage devices in the set of storage devices without mirroring the data within a single storage device; and in response to a loss of the given storage device from the set, the given storage device having stored thereon a portion of the data used to provide fault tolerant storage of the data, such loss resulting in a reduced set having one or more remaining storage devices, causing, under control of the storage manager, automatic reconfiguring of storage of the data using information in the reduced set to store the fixed-size blocks of such data within the reduced set in a fault tolerant manner, such reconfiguring including causing a single selected storage device of the reduced set having an unmirrored copy of the portion to store a mirrored copy of the portion such that storage of the portion is converted from mirroring across two storage devices to mirroring in only the single storage device when fault tolerance cannot be provided for the portion across a plurality of the remaining storage devices or when the reduced set includes only the single selected storage device. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)
-
-
15. A storage system comprising:
-
a set of storage devices including a plurality of storage devices, each of the storage devices storing fixed-size blocks of data; and a storage manager, external to the set of storage devices, coupled to the set of storage devices, configured to (i) receive storage commands that pertain to fixed-size blocks of data and (ii) map such storage commands to the set of storage devices so as to cause storage of the blocks of data in a fault tolerant manner across a plurality of storage devices in the set of storage devices without mirroring the data within a single storage device, wherein, in response to a loss of a given storage device from the set, the given storage device having stored thereon a portion of the data used to provide fault tolerant storage of the data, such loss resulting in a reduced set having one or more remaining storage devices, the storage manager automatically reconfigures storage of the data using information in the reduced set to store the fixed-size blocks of such data within the reduced set in a fault tolerant manner, such reconfiguration including causing a single selected storage device of the reduced set having an unmirrored copy of the portion to store a mirrored copy of the portion such that storage of the portion is converted from mirroring across two storage devices to mirroring in only the single storage device when fault tolerance cannot be provided for the portion across a plurality of the remaining storage devices or when the reduced set includes only the single selected storage device. - View Dependent Claims (16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28)
-
Specification