发明名称 |
Writing data slices to ready and non-ready distributed storage units in a distributed storage network |
摘要 |
A distributed storage network includes a distributed storage processing unit, which generates multiple data slices from a single data segment, and multiple different storage units to store the data slices. Each data slice is assigned to a particular storage unit for storage. The distributed storage processing unit determines which of the storage units are in a ready state, and sends data slices to the ready storage units. Data slices assigned to storage units that are not in a ready state are temporarily stored in a temporary memory, e.g. cache memory, until the storage unit becomes ready. If the intended storage unit remains in a non-ready status for too long, the slices stored in cache memory can be sent to a substitute storage unit, or discarded and reconstructed at a later time. |
申请公布号 |
US8918534(B2) |
申请公布日期 |
2014.12.23 |
申请号 |
US201012777864 |
申请日期 |
2010.05.11 |
申请人 |
Cleversafe, Inc. |
发明人 |
Baptist Andrew |
分类号 |
G06F7/00;G06F12/00;G06F13/00;G06F15/16;G06F11/10;G06F3/06;H04N21/231;H04N21/24;G06F17/30;H04L29/08;H04N21/442;G06F12/08 |
主分类号 |
G06F7/00 |
代理机构 |
Garlick & Markison |
代理人 |
Garlick & Markison |
主权项 |
1. A method of operating a distributed storage processing unit, the method comprising:
creating a plurality of data slices from a data segment in accordance with an error coding function, wherein n number of data slices are created when error coding the data segment and wherein at least a threshold number k of the n data slices are needed to reconstruct the data segment, where k is less than n, in which n data slices are to be stored in n storage units of a distributed storage network; identifying the n storage units for respective ones of the n storage units to store a different data slice of the n data slices; determining which of the n storage units are in a ready status, wherein a ready status indicates a readiness to receive respective data slices for storage; when all n storage units are in the ready status, sending n data slices to the n storage units for storage in the n storage units; when less than k storage units are in the ready status, not sending the data slices to the storage units; and when less than n, but more than or equal to k storage units are in the ready status, sending respective data slices to respective storage units that are in the ready status for storage and temporarily storing in a temporary memory, data slice or slices destined to storage unit or units in a non-ready status. |
地址 |
Chicago IL US |