Self-healing computer system storage
First Claim
1. A method to manage storage of an object in a computer system having a first and a second storage management process, the stored object including a data portion, a metadata portion and a fault tolerance data portion, the method comprising:
- receiving a memory access request from a client process;
routing the memory access request to the first storage management process;
determining the first storage management process has failed;
routing the memory access request to the second storage management process, wherein the second storage management process reconstructs at least a portion of the metadata portion, identifies the fault tolerance data portion based on the reconstructed portion of the metadata portion, and modifies the fault tolerance data portion in accordance with the memory access request;
receiving a result from the second storage management process; and
returning at least a portion of the result to the client process.
11 Assignments
0 Petitions
Accused Products
Abstract
A method to manage storage of an object in a computer system having a first and a second storage management process (wherein the stored object has a data portion, a metadata portion and a fault tolerance data portion) includes receiving a memory access request from a client process, routing the memory access request to the first storage management process, determining the first storage management process has failed, routing the memory access request to the second storage management process (having access to the fault tolerance data portion), receiving a result from the second storage management process, and returning at least a portion of the result to the client process. The second storage management process may reconstruct at least a portion of the metadata portion, modify the fault tolerance data portion in accordance with the memory access request, and store the modified fault tolerance information.
105 Citations
18 Claims
-
1. A method to manage storage of an object in a computer system having a first and a second storage management process, the stored object including a data portion, a metadata portion and a fault tolerance data portion, the method comprising:
-
receiving a memory access request from a client process;
routing the memory access request to the first storage management process;
determining the first storage management process has failed;
routing the memory access request to the second storage management process, wherein the second storage management process reconstructs at least a portion of the metadata portion, identifies the fault tolerance data portion based on the reconstructed portion of the metadata portion, and modifies the fault tolerance data portion in accordance with the memory access request;
receiving a result from the second storage management process; and
returning at least a portion of the result to the client process. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
transmitting at least one health status query signal to the first storage management process after a first specified time period; and
determining the first storage management process has failed if it fails to reply to at least one of the at least one health status queries within a second specified time period.
-
-
4. The method of claim 3, wherein the first specified time period is between approximately 10 and 1,000 milliseconds and the second specified time period is between approximately 1,000 and 4,000 milliseconds.
-
5. The method of claim 1, wherein the act of determining the first storage management process has failed comprises failing to receive a heartbeat signal from the first storage management process within a specified time period.
-
6. The method of claim 5, wherein the specified time period is between approximately 1,000 and 4,000 milliseconds.
-
7. The method of claim 1, wherein the act of routing the memory access request to the second storage management process further causes the second storage management process to store an indication of the modified fault tolerance data.
-
8. The method of claim 7, wherein the method to manage storage of an object further comprises routing the stored indication of the modified fault tolerance data to the first storage management process when it is restored to operation.
-
9. The method of claim 1, wherein the fault tolerance data portion comprises parity information.
-
10. A method to process a memory access request by a storage management process, the memory access request directed to a stored object having a data portion, a metadata portion and a fault tolerance data portion, the method comprising:
-
reconstructing at least a portion of the metadata portion;
identifying the fault tolerance data portion based on the reconstructed portion of the metadata portion;
modifying at least a portion of the fault tolerance data portion in accordance with the memory access request; and
storing the modified fault tolerance data. - View Dependent Claims (11, 12, 13)
-
-
14. A program storage device, readable by a programmable control device, comprising:
-
instructions stored on the program storage device to perform a memory access operation on a stored object, the stored object having a data portion, a metadata portion and a fault tolerance data portion, the instructions causing the programmable control device to reconstruct at least a portion of the metadata portion;
identify the fault tolerance data portion based on the reconstructed portion of the metadata portion;
modify the at least a portion of the fault tolerance data portion in accordance with the memory access operation; and
store the modified fault tolerance data. - View Dependent Claims (15, 16, 17, 18)
-
Specification