Abstract:
A method begins by a processing module receiving a large data file for storage in a dispersed storage network (DSN) and determining initial dispersed storage error encoding parameters. The method continues with the processing module encoding, during a first time interval of receiving the large data file, first data segments of the large data file using the initial dispersed storage error encoding parameters to produce a first plurality of sets of encoded data slices. The method continues with the processing module writing the first plurality of sets of encoded data slices to the DSN and monitoring processing of the writing to produce first write processing performance information. When the first write processing performance information compares unfavorably to a desired write performance range, the method continues with the processing module adjusting, for a second time interval, the initial dispersed storage error encoding parameters to produce adjusted dispersed storage error encoding parameters.
Abstract:
A method for writing a set of encoded data slices to memory of a dispersed storage network (DSN) begins by a processing module identifying an encoded data slice of the set of encoded data slices for a redundant write operation to produce an identified encoded data slice. The method continues with the processing module generating a set of first write requests regarding the set of encoded data slices less the identified encoded data slice and generating a set of second write requests regarding the identified encoded data slice. The method continues with the processing module sending the set of first write requests to storage units of the DSN and sending the set of second write requests to a set of storage units of the DSN, where each storage unit of the set of storage units is sent a corresponding one of the set of second write requests.
Abstract:
When an access metric regarding an encoded data object exceeds an access threshold, a method begins by a processing module of a dispersed storage network (DSN) retrieving encoded data slices of a first plurality of sets of encoded data slices and recovering the data object utilizing first dispersed storage error encoding parameters. The method continues with the processing module re-encoding the recovered data object using second dispersed storage error encoding parameters to produce a re-encoded data object, where the re-encoded data object includes a second plurality of sets of encoded data slices. The method continues with the processing module outputting the second plurality of sets of encoded data slices to storage units of the DSN for storage therein and sending a message to retrieving devices of the DSN, where the message indicates use of the second plurality of sets of encoded data slices for the data object.
Abstract:
A method begins by storage units of a dispersed storage network (DSN) receiving a retrieval request for a data object, where each storage unit stores a unique group of encoded data slices of the data object and a local set of encoded recovery data slices. The method continues with some storage units sending the unique group of encoded data slices to a requesting computing device and with one storage unit sending an encoded recovery data slice to the requesting computing device. The method continues with the requesting computing device identifying an errant unique group encoded data slice, correcting the errant encoded data slice based on received data slices to produce an updated unique group of encoded data slices, and dispersed storage error decoding the updated unique group of encoded data slices and the unique groups of encoded data slices from other storage units to recover the data object.
Abstract:
A method begins by a set of storage units of a dispersed storage network (DSN) storing a plurality of encoded data slices, where each storage unit stores a unique sub-set of encoded data slices. The method continues with each storage unit dispersed storage error encoding at least a recovery threshold number of encoded data slices to produce a local set of encoded recovery data slices. In response to a retrieval request, the method continues with a device identifying a storage unit of an initial recovery number of storage units having a rebuilding issue and determining whether the rebuilding issue is correctable at a DSN level. When the rebuilding issue is correctable at the DSN level the method continues with the device selecting another storage unit to replace the storage unit to produce a recovery number of storage units and sending retrieve requests to the recovery number of storage units.
Abstract:
A method includes a dispersed storage (DS) processing module receiving a request. The method continues by identifying a session associated with the request. The method continues by queueing one or more tasks associated with the request. The method continues by determining whether the session is still active. When the session is not active, the method continues by cancelling the one or more tasks associated with the session prior to execution. When the session is still active, the method continues by executing the first task of the one or more tasks when a task resource is available.
Abstract:
A method includes a set of execution units of a dispersed storage network (DSN) receiving sets of sub-task requests from a computing device and storing the sets of sub-task requests, where each execution unit stores a request of each of the sets of sub-task requests to produce a corresponding plurality of sub-task requests. The method continues with each execution unit generating sub-task estimation data and adjusting timing, sequencing, or processing of the corresponding plurality of sub-task requests based on the estimation data to produce a plurality of partial results, where, due to one or more difference factors from a list of difference factors, the execution units process pluralities of sub-task requests at difference paces, where the list of difference factors includes differences in amounts of data to be processed per sub-task request, processing capabilities, memory storage capabilities, and networking capabilities.
Abstract:
A method begins by a dispersed storage (DS) processing module dividing a very large data object into a plurality of data regions and generating a data object storage tracking table that includes sections for identifying one or more data regions that are available or unavailable for retrieval. The method continues with the DS processing module dividing a first data region into data segments and disperse storage error encoding the data segments to produce sets of encoded data slices. The method continues with the DS processing module sending DSN write requests regarding storing the sets of encoded data slices to storage units and when at least a write threshold number of write responses is received for each of the sets of encoded data slices, updating the data object storage tracking table to indicate that the first data region is available for retrieval.
Abstract:
A method begins by a processing module of a dispersed storage network (DSN) dividing data into a plurality of data units and generating a plurality of encryption keys from a master key associated with the data and a data identifier associated with the data. The method continues with the processing module encrypting the plurality of data units using the plurality of encryption keys to produce a plurality of encrypted data units and sending the plurality of encrypted data units to a first set of storage units of the DSN for storage. The method continues with the processing module encoding the master key to produce a plurality of encoded master key units and sending the plurality of encoded master key units to a second set of storage units of the DSN for storage.
Abstract:
A method begins by a set of storage units of a dispersed storage network (DSN) storing a plurality of encoded data slices, where each storage unit stores a unique sub-set of encoded data slices. The method continues with each storage unit dispersed storage error encoding at least a recovery threshold number of encoded data slices to produce a local set of encoded recovery data slices. In response to a retrieval request, the method continues with a device identifying a storage unit of an initial recovery number of storage units having a rebuilding issue and determining whether the rebuilding issue is correctable at a DSN level. When the rebuilding issue is correctable at the DSN level the method continues with the device selecting another storage unit to replace the storage unit to produce a recovery number of storage units and sending retrieve requests to the recovery number of storage units.