Dynamically expandable and contractible fault-tolerant storage system permitting variously sized storage devices and method
AssigneeData Robotics, Inc.
InventorGeoffrey S. Barrall
Life of this patent
Estimating the term…
Abstract
A dynamically expandable and contractible fault-tolerant storage system permits variously sized storage devices. Data is stored redundantly across one or more storage devices if possible. The layout of data across the one or more storage devices is automatically reconfigured as storage devices are added or removed in order to provide an appropriate level of redundancy for the data to the extent possible. A hash-based compression technique may be used to reduce storage consumption. Techniques for freeing unused storage blocks are also disclosed.
Claims72
A method of storing data in a set of storage devices, the data being stored in fixed-size data blocks, the set having at least two storage devices, the method comprising:
- automatically causing fault-tolerant storage of the blocks of the data across a plurality of the storage devices to the extent that sufficient storage therefor is deemed available by an electronic storage manager;
- and
- to the extent that there is a shortfall in storage deemed available therefor, automatically causing fault-tolerant storage of the data blocks of the shortfall in only a single one of the storage devices by mirroring the data blocks of the shortfall on a block-by-block basis.
A system for storing data, the system comprising:
- a set of storage devices, the set having at least two storage devices, each of the devices storing data in fixed-size data blocks;
- and
- a storage manager for storing the blocks of data in the set of storage devices, wherein the storage manager:
- monitors the extent to which sufficient storage capacity is available for the storage of blocks of data;
- automatically causes fault-tolerant storage of the blocks of data across a plurality of the storage devices to the extent that sufficient storage therefor is deemed available, and
- to the extent that there is a shortfall in storage deemed available therefor, automatically causes fault-tolerant storage of the data blocks of the shortfall in only a single one of the storage devices by mirroring the data blocks of the shortfall on a block-by-block basis.
Dependencies are inferred from the claim text.