US9135115B2ActiveUtilityA1

Storing data in multiple formats including a dispersed storage format

Assignee: CLEVERSAFE INCPriority: Feb 27, 2010Filed: Aug 8, 2014Granted: Sep 15, 2015
Est. expiryFeb 27, 2030(~3.6 yrs left)· nominal 20-yr term from priority
G06F 11/1076G06F 11/1092G06F 2211/1028G06F 11/2094
65
PatentIndex Score
1
Cited by
109
References
21
Claims

Abstract

A method begins by a processing module of a dispersed storage network (DSN) receiving data in a redundant array of independent disks (RAID) format and converting from the RAID format to an original format of the data. The method continues with the processing module dispersed storage error encoding a data segment of the data in the original format to produce a set of encoded data slices, where a set of encoded data slices includes a decode threshold sub-set of encoded data slices and an error correcting sub-set of encoded data slices. The method continues with the processing module converting the decode threshold sub-set of encoded data slices into a RAID formatted data segment, storing the RAID formatted data segment in RAID memory, and storing at least the error correcting sub-set of encoded data slices in DSN memory.

Claims

exact text as granted — not AI-modified
What is claimed is:  
     
       1. A method for execution by one or more processing modules of one or more computing devices of a dispersed storage network (DSN), the method comprises:
 receiving data in a redundant array of independent disks (RAID) format; 
 converting from the RAID format to an original format of the data; 
 dispersed storage error encoding a data segment of the data in the original format to produce a set of encoded data slices, wherein the set of encoded data slices includes a decode threshold sub-set of encoded data slices and an error correcting sub-set of encoded data slices; 
 converting the decode threshold sub-set of encoded data slices into a RAID formatted data segment; 
 storing the RAID formatted data segment in RAID memory; and 
 storing at least the error correcting sub-set of encoded data slices in DSN memory. 
 
     
     
       2. The method of  claim 1  further comprises:
 storing the set of encoded data slices in the DSN memory. 
 
     
     
       3. The method of  claim 1 , wherein the converting the decode threshold sub-set of encoded data slices into the RAID formatted data segment comprises:
 generating data blocks from the decode threshold sub-set of encoded data slices; and 
 generating a parity data block from the data blocks. 
 
     
     
       4. The method of  claim 3  further comprises:
 detecting a failure within the RAID memory that adversely affects storage of one or more of the data blocks and the parity data block; 
 determining whether to repair the one or more of the data blocks and the parity data block using RAID rebuilding or DSN rebuilding; 
 when the DSN rebuilding is determined:
 retrieving the data blocks from the RAID memory that were not adversely affected; 
 retrieving the at least the error correcting sub-set of encoded data slices from the DSN memory; and 
 recovering the data segment having the original format of the data from the data blocks from the RAID memory that were not adversely affected and the at least the error correcting sub-set of encoded data slices. 
 
 
     
     
       5. The method of  claim 4  further comprises:
 converting the recovered data segment having the original format of the data into the RAID formatted data segment; and 
 storing the RAID formatted data segment in the RAID memory. 
 
     
     
       6. The method of  claim 4  further comprises:
 dispersed storage error encoding the recovered data segment having the original format of the data to produce one or more new encoded data slices; and 
 storing the one or more new encoded data slices in the DSN memory, wherein a new set of encoded data slices includes the one or more new encoded data slices and wherein the data segment is recoverable from a decode threshold number of encoded data slices of the new set of encoded data slices. 
 
     
     
       7. The method of  claim 1  further comprises:
 storing the set of encoded data slices in the DSN memory; and 
 for a read request of the data segment:
 retrieving from the RAID memory while RAID memory failures are below a first level; and 
 retrieving from the DSN memory when the RAID memory failures are above a second level. 
 
 
     
     
       8. A non-transitory computer readable storage medium comprises:
 at least one memory section that stores operational instructions that, when executed by one or more processing modules of one or more computing devices of a dispersed storage network (DSN), causes the one or more computing devices to: 
 receive data in a redundant array of independent disks (RAID) format; 
 convert from the RAID format to an original format of the data; 
 dispersed storage error encode a data segment of the data in the original format to produce a set of encoded data slices, wherein the set of encoded data slices includes a decode threshold sub-set of encoded data slices and an error correcting sub-set of encoded data slices; 
 convert the decode threshold sub-set of encoded data slices into a RAID formatted data segment; 
 store the RAID formatted data segment in RAID memory; and 
 store at least the error correcting sub-set of encoded data slices in DSN memory. 
 
     
     
       9. The non-transitory computer readable storage medium of  claim 8  further comprises:
 the at least one memory section stores further operational instructions that, when executed by the one or more processing modules, causes the one or more computing devices of the DSN to: 
 store the set of encoded data slices in the DSN memory. 
 
     
     
       10. The non-transitory computer readable storage medium of  claim 8 , wherein the one or more processing modules functions to execute the operational instructions stored by the at least one memory section to cause the one or more computing devices of the DSN to convert the decode threshold sub-set of encoded data slices into the RAID formatted data segment by:
 generating data blocks from the decode threshold sub-set of encoded data slices; and 
 generating a parity data block from the data blocks. 
 
     
     
       11. The non-transitory computer readable storage medium of  claim 10  further comprises:
 the at least one memory section stores further operational instructions that, when executed by the one or more processing modules, causes the one or more computing devices of the DSN to: 
 detect a failure within the RAID memory that adversely affects storage of one or more of the data blocks and the parity data block; 
 determine whether to repair the one or more of the data blocks and the parity data block using RAID rebuilding or DSN rebuilding; 
 when the DSN rebuilding is determined:
 retrieve the data blocks from the RAID memory that were not adversely affected; 
 retrieve the at least the error correcting sub-set of encoded data slices from the DSN memory; and 
 recover the data segment having the original format of the data from the data blocks from the RAID memory that were not adversely affected and the at least the error correcting sub-set of encoded data slices. 
 
 
     
     
       12. The non-transitory computer readable storage medium of  claim 11  further comprises:
 the at least one memory section stores further operational instructions that, when executed by the one or more processing modules, causes the one or more computing devices of the DSN to: 
 convert the recovered data segment having the original format of the data into the RAID formatted data segment; and 
 store the RAID formatted data segment in the RAID memory. 
 
     
     
       13. The non-transitory computer readable storage medium of  claim 11  further comprises:
 the at least one memory section stores further operational instructions that, when executed by the one or more processing modules, causes the one or more computing devices of the DSN to: 
 dispersed storage error encode the recovered data segment having the original format of the data to produce one or more new encoded data slices; and 
 store the one or more new encoded data slices in the DSN memory, wherein a new set of encoded data slices includes the one or more new encoded data slices and wherein the data segment is recoverable from a decode threshold number of encoded data slices of the new set of encoded data slices. 
 
     
     
       14. The non-transitory computer readable storage medium of  claim 8  further comprises:
 the at least one memory section stores further operational instructions that, when executed by the one or more processing modules, causes the one or more computing devices of the DSN to: 
 store the set of encoded data slices in the DSN memory; and 
 for a read request of the data segment:
 retrieve from the RAID memory while RAID memory failures are below a first level; and 
 retrieve from the DSN memory when the RAID memory failures are above a second level. 
 
 
     
     
       15. A computing device of a dispersed storage network (DSN), the computing device comprises:
 an interface; and 
 a processing module operably coupled to the interface, wherein the processing module functions to:
 receive data in a redundant array of independent disks (RAID) format; 
 convert from the RAID format to an original format of the data; 
 dispersed storage error encode a data segment of the data in the original format to produce a set of encoded data slices, wherein the set of encoded data slices includes a decode threshold sub-set of encoded data slices and an error correcting sub-set of encoded data slices; 
 convert the decode threshold sub-set of encoded data slices into a RAID formatted data segment; 
 store the RAID formatted data segment in RAID memory; and 
 store, via the interface, at least the error correcting sub-set of encoded data slices in DSN memory. 
 
 
     
     
       16. The computing device of  claim 15 , wherein the processing module further functions to:
 store, via the interface, the set of encoded data slices in the DSN memory. 
 
     
     
       17. The computing device of  claim 15 , wherein the processing module functions to convert the decode threshold sub-set of encoded data slices into the RAID formatted data segment by:
 generating data blocks from the decode threshold sub-set of encoded data slices; and 
 generating a parity data block from the data blocks. 
 
     
     
       18. The computing device of  claim 17 , wherein the processing module further functions to:
 detect a failure within the RAID memory that adversely affects storage of one or more of the data blocks and the parity data block; 
 determine whether to repair the one or more of the data blocks and the parity data block using RAID rebuilding or DSN rebuilding; 
 when the DSN rebuilding is determined:
 retrieve the data blocks from the RAID memory that were not adversely affected; 
 retrieve the at least the error correcting sub-set of encoded data slices from the DSN memory; and 
 recover the data segment having the original format of the data from the data blocks from the RAID memory that were not adversely affected and the at least the error correcting sub-set of encoded data slices. 
 
 
     
     
       19. The computing device of  claim 18 , wherein the processing module further functions to:
 convert the recovered data segment having the original format of the data into the RAID formatted data segment; and 
 store the RAID formatted data segment in the RAID memory. 
 
     
     
       20. The computing device of  claim 18 , wherein the processing module further functions to:
 dispersed storage error encode the recovered data segment having the original format of the data to produce one or more new encoded data slices; and 
 store, via the interface, the one or more new encoded data slices in the DSN memory, wherein a new set of encoded data slices includes the one or more new encoded data slices and wherein the data segment is recoverable from a decode threshold number of encoded data slices of the new set of encoded data slices. 
 
     
     
       21. The computing device of  claim 15 , wherein the processing module further functions to:
 store, via the interface, the set of encoded data slices in the DSN memory; and 
 for a read request of the data segment:
 retrieve from the RAID memory while RAID memory failures are below a first level; and 
 retrieve, via the interface, from the DSN memory when the RAID memory failures are above a second level.

Join the waitlist — get patent alerts

Track US9135115B2 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.