Systems and methods for providing a distributed file system incorporating a virtual hot spare
First Claim
1. A method for providing a virtual hot spare in an intelligent distributed file system comprising:
- designating a first cluster comprised of a plurality of storage modules, the plurality of storage modules having free space which is not currently allocated and which is available for use to store data of sufficient value that error correction is desirable for such data;
upon failure of one of the plurality of storage modules, dynamically allocating storage space within the free space for recovery of data stored on the failed one of the plurality of storage modules;
receiving information from the plurality of data storage units in the first cluster relating to performance; and
using the received information to dynamically adjust the allocation of free space for storing incoming data in order to comply with defined system parameters including the need for free space to store recreated data in the event of a malfunction resulting in a loss of data.
20 Assignments
0 Petitions
Accused Products
Abstract
The intelligent distributed file system enables the storing of file data among a plurality of smart storage units which are accessed as a single file system. The intelligent distributed file system utilizes a metadata data structure to track and manage detailed information about each file, including, for example, the device and block locations of the file'"'"'s data blocks, to permit different levels of replication and/or redundancy within a single file system, to facilitate the change of redundancy parameters, to provide high-level protection for metadata, to replicate and move data in real-time, and to permit the creation of virtual hot spares among the smart storage units without the need to idle any single smart storage unit in the intelligent distributed file system.
-
Citations
12 Claims
-
1. A method for providing a virtual hot spare in an intelligent distributed file system comprising:
-
designating a first cluster comprised of a plurality of storage modules, the plurality of storage modules having free space which is not currently allocated and which is available for use to store data of sufficient value that error correction is desirable for such data; upon failure of one of the plurality of storage modules, dynamically allocating storage space within the free space for recovery of data stored on the failed one of the plurality of storage modules; receiving information from the plurality of data storage units in the first cluster relating to performance; and using the received information to dynamically adjust the allocation of free space for storing incoming data in order to comply with defined system parameters including the need for free space to store recreated data in the event of a malfunction resulting in a loss of data. - View Dependent Claims (2, 3, 4)
-
-
5. A virtual hot spare useful in the event of a loss of data comprising:
-
a plurality of storage devices that work together as a single data storage system; a storage allocation module configured to write incoming data across at least two of said plurality of storage devices; a failure recovery module configured to recreate lost data, said failure recovery module in communication with said storage allocation module; wherein said storage allocation module is configured to locate unallocated free space among said plurality of storage units; and wherein said unallocated free space is open for use to write incoming protected data and to write said recreated data received from said failure recovery module; wherein said storage allocation module is further configured to estimate the amount of parity protected data that can be written to said unallocated free space so as to leave sufficient storage space in said unallocated free space for said recreated data. - View Dependent Claims (6, 7)
-
-
8. A system for storing data which dynamically provides for space to store recreated data when data is lost comprising:
-
a plurality of data storage units; a module in communication with said data storage units to route queries to and receive responses from any one or more of said data storage units; said plurality of data storage units collectively having free space which is not currently allocated and which is available for use to store data of sufficient value that error correction is desirable for such data; a storage allocation module configured to allocate space in said free space for storage of recreated data lost due to a malfunction in the data storage system, wherein the storage allocation module is configured to receive information from the data storage units relating to performance and use this information to dynamically adjust the allocation of free space for storing incoming data in order to comply with defined system parameters including the need for free space to store recreated data in the event of a malfunction resulting in a loss of data. - View Dependent Claims (9, 10, 11, 12)
-
Specification