CLEVERSAFE, INC. Patent applications |
Patent application number | Title | Published |
20160124657 | DETERMINISTICALLY SHARING A PLURALITY OF PROCESSING RESOURCES - A method for deterministic sharing of a plurality of processing resources with respect to one or more distributed network actionable items begins by the plurality of processing resources executing a scoring function using one or more properties of the one or more distributed network actionable items and one or more properties of each of the plurality of processing resources to produce a plurality of scoring resultants. The method continues with each of the plurality of processing resources independently determining a first priority processing resource of the plurality of processing resources based on a corresponding one of the plurality of scoring resultants for a first distributed network actionable item of the one or more distributed network actionable items. The method continues with the first priority processing resource assuming by responsibility for the first distributed network actionable item and executing one or more functions regarding the first distributed network actionable item. | 05-05-2016 |
20160070719 | CONSISTENCY BASED ACCESS OF DATA IN A DISPERSED STORAGE NETWORK - A method begins by a requesting entity sending a normal data segment access request to first and second groups of storage units of a dispersed storage network. The method continues with the requesting entity sending a group failure data segment access request to the first group of storage units when the second group of storage units has less than a decode threshold number of encoded data slices of a set of encoded data slices available. When the second group of storage units has reestablished that the at least the decode threshold number of encoded data slices is available, the method continues with the requesting entity sending a re-integration data segment write request to the first and second groups of storage units and sending a re-integration data segment read request to the first group of storage units. | 03-10-2016 |
20160070617 | MAINTAINING A DESIRED NUMBER OF STORAGE UNITS - A method begins by a processing module of a dispersed storage network (DSN) determining that a set of storage units has less than a desired number of active storage units, where the DSN includes a plurality of storage units that randomly are active or inactive. The method continues with the processing module identifying another active storage unit of the storage units that is not currently part of the set of storage units and adding the other active storage unit to the set of storage units. For encoded data stored by the set of storage units, the method continues with the processing module increasing a pillar width number of a dispersed storage error encoding function, maintaining a decode threshold number of the dispersed storage error encoding function, creating new encoded data slices for the encoded data, and storing the new encoded data slices in the other active storage unit. | 03-10-2016 |
20160055061 | VIRTUAL MEMORY MAPPING IN A DISPERSED STORAGE NETWORK - A method for generating virtual dispersed storage network (DSN) addresses includes dispersed storage error encoding a data segment of a data object to produce a set of encoded data slices of a plurality of sets of encoded data slices of the pluralities of sets of encoded data slices. The method further includes generating, for each encoded data slice of the set of encoded data slices, a virtual DSN address having a slice name that includes a vault identifier, a slice index, a data object identifier, and a data segment identifier. The method further includes obtaining a mapping of a vault to a set of storage units of the DSN, wherein the mapping indicates how the set of encoded data slices are to be stored. The method further includes outputting the set of encoded data slices to the set of storage units in accordance with the mapping. | 02-25-2016 |
20160055060 | UTILIZING A LOCAL AREA NETWORK MEMORY AND A DISPERSED STORAGE NETWORK MEMORY TO ACCESS DATA - A method includes storing, by non-local DSN memory, redundancy encoded data slices of a set of encoded data slices. The method includes storing, by each DS processing module, a copy of the decode threshold number of encoded data slices in local memory. The method includes receiving, by the plurality of DS processing modules, read requests for the set of encoded data slices from user devices. The method includes, in response to a read request, determining, by a DS processing module, that at least one encoded data slice is unavailable; retrieving, by the DS processing module, at least one of the redundancy encoded data slices from the non-local DSN memory; and processing, by the DS processing module, the read request based on the retrieved at least one of the redundancy encoded data slice and available encoded data slices of the local copy of the decode threshold number of encoded data slices. | 02-25-2016 |
20160026529 | RETRIEVING DATA SEGMENTS FROM A DISPERSED STORAGE NETWORK - A method includes dividing a data file into a plurality of data regions. For each data region, the method includes determining a segmentation approach; determining a dispersed storage error encoding function; segmenting the data region into a plurality of data segments in accordance with the segmentation approach; and dispersed storage error encoding the plurality of data segments to produce a plurality of sets of encoded data slices in accordance with the dispersed storage error encoding function. The method includes creating a segment allocation table (SAT) for the data file and dispersed storage error encoding the segment allocation table to produce a set of encoded SAT slices. The method includes outputting the set of encoded SAT slices with at least one of the pluralities of sets of encoded data slices for storage in storage units of the DSN. | 01-28-2016 |
20160026405 | STORING DATA IN A DISPERSED STORAGE NETWORK - A method begins by a computing device generating a set of write requests regarding a set of encoded data slices and sending the set of write requests to a set of storage units, where each write request includes an encoded data slice, a corresponding slice name, and a transaction number. The method continues with each of at least some of the storage units generating a write response that includes the transaction number and a list of revision levels corresponding to the slice name. The method continues with the computing device receiving the write responses from the at least some of the storage units, determining a most current revision level based on the lists of revision levels and generating a set of write commit messages, where a write commit message includes the transaction number and a new revision level for the set of encoded data slices. | 01-28-2016 |
20150381731 | IDENTIFYING A TASK EXECUTION RESOURCE OF A DISPERSED STORAGE NETWORK - A method begins by a plurality of dispersed storage network (DSN) units of a DSN determining to perform a DSN level task for a range of DSN addresses. The method continues with each of the plurality of DSN units executing a scoring function using one or more properties of the range of DSN addresses and one or more properties of each of the plurality of DSN units to produce a scoring resultant. The method continues with each of the plurality of DSN units identifying a DSN unit of the plurality of DSN units to execute the DSN level task based on the scoring resultant. The method continues with the identified DSN unit executing the DSN level task for the range of DSN addresses. | 12-31-2015 |
20150381730 | ACCESSING A DISPERSED STORAGE NETWORK - A method begins by a dispersed storage (DS) processing module of a dispersed storage network (DSN) receiving a DSN access request regarding at least one data segment of a data object. The method continues with the processing module performing a scoring function using one or more properties of the DSN access request and one or more properties of DSN memory of the DSN to produce a storage scoring resultant, where the DSN memory includes a plurality of storage units that are logically arranged into a plurality of storage pools. The method continues with the processing module utilizing the storage scoring resultant to identify a set of storage units of the plurality of storage units affiliated with a given storage pool of the plurality of storage pools. The method continues with the processing module sending a set of access requests to the set of storage units regarding the DSN access request. | 12-31-2015 |
20150381600 | AUTHENTICATING A DATA ACCESS REQUEST TO A DISPERSED STORAGE NETWORK - A method includes sending, by a user device, a plurality of data access requests to storage units. The method further includes sending, by one the storage units, an authentication request to an authenticating module. The method further includes forwarding, by the one of the storage units, a verification request to the user device. The method further includes forwarding, by the one of the storage units, a verification response to the authenticating module. The method further includes executing, by at least some of the storage units, corresponding ones of the plurality of data access requests when an authentication response of the authenticating module is favorable. | 12-31-2015 |
20150378827 | ADJUSTING A DATA STORAGE ADDRESS MAPPING IN A MAINTENANCE FREE STORAGE CONTAINER - A method includes sending, by a computing device, an access request to one or more site controllers. The method further includes identifying, by a site controller, storage containers based on DSN addresses. The method includes sending, by the site controller, the access request to the identified storage containers. The method includes interpreting, by a container controller, the access request to identify storage units affiliated with some of the DSN addresses. The method includes determining, by the container controller, whether the storage units are in a storage failure mode. The method includes when the storage units are in the storage failure mode, determining, by the container controller, whether to rebuild, to change virtual to physical address mapping, or to migrate encoded data slices. The method includes, when the encoded data slices are to be rebuild, facilitating, by the container controller, rebuilding of the encoded data slices. | 12-31-2015 |
20150378825 | SECURELY STORING DATA IN A DISPERSED STORAGE NETWORK - A method includes monitoring write processing performance while storing a plurality of sets of encoded data slices in storage units. The method includes comparing the write processing performance with a desire write performance range. When the write processing performance compares unfavorably to the desire write performance range, the method includes establishing a data partition between the data segments of the data encoded using the first dispersed storage error encoding parameters and subsequent data segments of the data; determining second dispersed storage error encoding parameters based on the unfavorable comparison between the write processing performance and the desired write performance range; encoding the subsequent data segments of the data using the second dispersed storage error encoding parameters to produce a second plurality of sets of encoded data slices; and monitoring write processing performance while storing the second plurality of sets of encoded data slices in the storage units. | 12-31-2015 |
20150378824 | MANAGING MEMORY UTILIZATION IN A DISTRIBUTED STORAGE AND TASK NETWORK - A method includes encoding data into pluralities of sets of encoded data slices. The method further includes outputting the pluralities of sets of encoded data slices to DST units, wherein each of the DST units stores a slice grouping of encoded data slices. The method further includes dividing the task into a decode threshold number of partial tasks. The method further includes sending a slice deletion policy to the DST units. On a data chunkset by data chunkset basis: the method further includes selecting a decode threshold number of DST units; assigning the decode threshold number of partial tasks to the decode threshold number of DST units; executing the decode threshold number of partial tasks on the slice groupings to produce partial results; and deleting the plurality of sets of encoded data slices of the given data chunkset in accordance with the slice deletion policy. | 12-31-2015 |
20150378822 | RECOVERING AN ENCODED DATA SLICE IN A DISPERSED STORAGE NETWORK - A method begins by a processing module of a dispersed storage network (DSN) receiving a DSN retrieval request regarding a data object and performing a scoring function using properties of the DSN retrieval request and properties of DSN memory of the DSN to produce a storage scoring resultant. The method continues with the processing module identifying a set of primary storage units based on the storage scoring resultant and sending a set of retrieval requests to the set of primary storage units. When a primary storage unit does not provide a favorable response, using the storage scoring resultant to identify an alternative storage unit. When the alternative storage unit is identified, sending a corresponding retrieval request to the alternative storage unit. | 12-31-2015 |
20150378626 | ACCESSING DATA WHILE MIGRATING STORAGE OF THE DATA - A method begins by a plurality of storage units of a dispersed storage network (DSN) receiving updated properties of DSN memory. The method continues with a first storage unit and a second storage unit establishing a migration pairing and establishing a storage migration mechanism for migrating storage of data between the first and second storage units. While migrating the storage of data using the storage migration mechanism, the method continues with the first or the second storage unit receiving a data access request regarding data effected by the migrating the storage of data, determining status of the migrating storage of data, and determining which of the first and second storage units is to process the data access request based on the status to produce a determined storage unit. The method continues with the determined storage unit processing the data access request. | 12-31-2015 |
20150378625 | MIGRATING ENCODED DATA SLICES IN A DISPERSED STORAGE NETWORK - A method begins by a processing module of a dispersed storage network (DSN) identifying a change in DSN memory of the DSN. For a set of encoded data slices effected by the change, the method continues with the processing module ascertaining updated properties of the DSN memory and performing an updating scoring function using properties of DSN access information and the updated properties of the DSN memory to produce an updated storage scoring resultant. The method continues with the processing module utilizing the updated storage scoring resultant to identify an updated set of storage units affiliated with a given storage pool of a plurality of storage pools of the DSN memory and sending at least one data migration request to at least one storage unit of the updated set of storage units regarding migration of at least one encoded data slice of the set of encoded data slices. | 12-31-2015 |
20150378616 | ADJUSTING TIMING OF STORING DATA IN A DISPERSED STORAGE NETWORK - A method begins by a processing module of a dispersed storage network (DSN) unit of a plurality of DSN units sending a write request to DSN memory, where the write request includes a range of DSN addresses. The method continues with the DSN unit receiving an error message indicating that another DSN unit of the plurality of DSN units has current write permission to the DSN memory to the range of DSN addresses. The method continues with the DSN unit performing a scoring function using one or more properties of the range of DSN addresses and one or more properties of each of at least some of the plurality of DSN units to produce a scoring resultant, interpreting the scoring resultant to determine a re-write requesting protocol for resending the write request to the DSN memory, and resending the write request in accordance with the re-write requesting protocol. | 12-31-2015 |
20150373120 | ADJUSTING A DISPERSAL PARAMETER OF DISPERSEDLY STORED DATA - A method includes storing a first subset of encoded data slices of a set of encoded data slices in one local memory, LAN memory, and/or WAN memory. The method further includes storing a second subset of encoded data slices in a different one of the local memory, the LAN memory, and the WAN memory. The method further includes determining to make a change in storage of the set of encoded data slices. The method further includes determining to make an adjustment to the pillar width number based on the determined storage change. The method further includes generating adjusted encoded data slices for the set of encoded data slices based on the adjustment to the pillar width number. The method further includes storing the updated set of encoded data slices in accordance with the determined change in the storage of the set of encoded data slices. | 12-24-2015 |
20150370638 | EFFICIENTLY ACCESSING AN ENCODED DATA SLICE IN A MEMORY CONTAINER UTILIZING A MEMORY BIN - A method includes determining whether a substantially similar data object to a data object is stored in a dispersed storage network (DSN). When the substantially similar data object is not stored in the DSN, the method includes dividing the data object into a plurality of data segments; encoding the plurality of data segments to produce a plurality of encoded data segments, wherein an encoded data segment of the plurality of encoded data segments includes a first number of data blocks and a second number of parity blocks; arranging the data blocks and the parity blocks of the plurality of encoded data segments into a matrix; establishing a set of encoded data slices from the matrix; and outputting the set of encoded data slices to storage units of the DSN for storage therein. | 12-24-2015 |
20150356305 | SECURE DATA ACCESS IN A DISPERSED STORAGE NETWORK - 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. | 12-10-2015 |
20150355980 | RELIABLY RECOVERING STORED DATA IN A DISPERSED STORAGE NETWORK - 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. | 12-10-2015 |
20150355979 | ACCESSING DATA BASED ON A DISPERSED STORAGE NETWORK REBUILDING ISSUE - 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. | 12-10-2015 |
20150355966 | VERIFYING A STATUS LEVEL OF STORED ENCODED DATA SLICES - A method begins by a processing module of a dispersed storage network (DSN) retrieving a decode threshold number of encoded data slices of a set of encoded data slices from a first grouping of storage units of the DSN. The method continues with the processing module determining a first status level indication of the retrieved decode threshold number of encoded data slices and sending check status request messages to a second grouping of storage units of the DSN. The method continues with the processing module receiving check status response messages and processing the check response messages to produce a second status level indication. When the second status level indication is substantially equal to the first status level indication, the method continues with the processing module indicating that the decode threshold number of encoded data slices is of a common status level as other encoded data slices of encoded data slices. | 12-10-2015 |
20150355960 | MAINTAINING DATA STORAGE IN ACCORDANCE WITH AN ACCESS METRIC - 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. | 12-10-2015 |
20150339193 | SENDING A ZERO INFORMATION GAIN FORMATTED ENCODED DATA SLICE - A method includes encoding, in accordance with a dispersed storage error encoding function, a data segment of a data object to produce a set of encoded data slices. The method further includes creating a subset of encoded data slices, wherein the subset of encoded data slices includes less than the decode threshold number of encoded data slices. The method further includes creating one or more partial encoded data slices representing one or more encoded data slices of the set of encoded data slices that are not within the subset of encoded data slices based on the dispersed storage error encoding function and at least some of the encoded data slices of the subset of encoded data slices. The method further includes outputting the subset of encoded data slices to storage units of the DSN and outputting the one or more partial encoded data slices to another device of the DSN. | 11-26-2015 |
20150326251 | NON-TEMPORARILY STORING TEMPORARILY STORED DATA IN A DISPERSED STORAGE NETWORK - A method includes encoding a plurality of data objects using first dispersed storage error encoding parameters having a first level of redundancy to produce first plurality of encoded data objects. The method includes generating first storage commands for temporary storage of the first plurality of encoded data objects. The method includes selecting a set of data objects from the plurality of data objects for permanent storage. The method includes encoding the set of data objects using second dispersed storage error encoding parameters having a second level of redundancy to produce a second plurality of encoded data objects, wherein the second level of redundancy is greater than the first level of redundancy. The method includes generating second storage commands for permanent storage of the second plurality of encoded data objects. | 11-12-2015 |
20150319244 | RETRIEVING MULTI-GENERATIONAL STORED DATA IN A DISPERSED STORAGE NETWORK - A method begins by a processing module a dispersed storage network (DSN) generating, based on a data object name, a first retrieval request for retrieving metadata addressing information, where the first retrieval request is formatted in accordance with a read request format of the DSN. The method continues with the processing module generating, based on retrieved metadata addressing information, a second retrieval request for retrieving metadata, where the second retrieval request is formatted in accordance with the read request format of the DSN. The method continues with the processing module generating, based on retrieved metadata, a third retrieval request for retrieving at least a portion of a data object associated with the data object name, where the third retrieval request is formatted in accordance with the read request format of the DSN. | 11-05-2015 |
20150318995 | SELF-VALIDATING REQUEST MESSAGE STRUCTURE AND OPERATION - A method begins by a first device generating a self-validating message by creating a master key, using the master key to create a message encryption key, encrypting a message using the message encryption key to produce an encrypted message, encrypting the master key using a public key of a second device to produce an encrypted master key, and including a message authentication code of the first device in the self-validating message. The method continues by the second device receiving and decoding the self-validating message by verifying the message authentication code of the first device, and when the message authentication code of the first device is verified, decrypting the encrypted master key using a private key of the second device to recover the master key, using the master key to create the message encryption key, and decrypting the encrypted message using the message encryption key to recover the message. | 11-05-2015 |
20150317205 | RESOLVING WRITE REQUEST CONFLICTS IN A DISPERSED STORAGE NETWORK - A method to resolve conflicts arising from substantially concurrent write requests regarding a data object begins by a computing device of a dispersed storage network (DSN) issuing a write request for a dispersed storage error encoded version of the data object to storage units of the DSN. The method continues with the computing device receiving write responses, each including either a lock indication or a non-lock indication and conflict information. The method continues with the computing device determining whether at least a write threshold number of received write responses include the lock indication. When less than the at least a write threshold number of write responses have been received that include the lock indication, the method continues with the computing device processing the conflict information to identify one or more other write requests that have a higher priority than the write request and establishing a write request retry time frame. | 11-05-2015 |
20150317196 | ADJUSTING A NUMBER OF DISPERSED STORAGE UNITS - A method begins by a processing module of a dispersed storage network (DSN) determining that a set of storage units of the DSN will be substantially used for read operations of dispersed storage error encoded data. For the set of storage units, the method continues with the processing module determining an actual level of reliability in retrieving a decode threshold number of encoded data slices per read request of a plurality of read requests. The method continues with the processing module comparing the actual reliability to a desired level of reliability in retrieving the decode threshold number of encoded data slices per read request of the plurality of read requests. When the actual reliability exceeds the desired reliability by a reconfiguration threshold, the method continues with the processing module removing one or more storage units from the set of storage units. | 11-05-2015 |
20150317099 | DELEGATING ITERATIVE STORAGE UNIT ACCESS IN A DISPERSED STORAGE NETWORK - A method begins by a computing device of a dispersed storage network (DSN) determining whether a DSN access request involves an iterative storage unit access process. When the DSN access request involves the iterative storage unit access process, the method continues with the computing device determining, based on configuration of a plurality of storage units storing data objects associated with the DSN access request, that a storage unit of the plurality of storage units is capable of executing at least a portion of the iterative storage unit access process better than the computing device, sending the DSN access request and a control command to the storage unit, where the control command instructs the storage unit to perform at least a portion of the iterative storage unit access process, and receiving, from the storage unit, at least a partial response to the DSN access request. | 11-05-2015 |
20150309877 | DISPERSED STORAGE WRITE PROCESS - A method includes issuing write commands to DS storage units regarding encoded data slices. A write command causes a storage unit to store an encoded data slice, but not allow access to the stored encoded data slices. The method includes receiving write acknowledgements from at least some of DS storage units to produce received write acknowledgements. The method includes, when a write threshold number of the received write acknowledgements have been received within a given time frame, issuing commit commands to the DS storage units. A commit command causes the storage unit to allow access to the stored encoded data slice. The method includes, when the write threshold number of the received write acknowledgements have not been received within the given time frame, issuing rollback commands to the DS units. A rollback command causes the storage unit to continue to not allow access to the stored encoded data slice. | 10-29-2015 |
20150309786 | DISTRIBUTED STORAGE NETWORK FOR MODIFICATION OF A DATA OBJECT - A method for updating software in storage units of a dispersed storage network includes determining a software updating sequence pattern, which insures that, for each set of encoded data slices, a decode threshold number of encoded data slices is accessible. The method includes taking a set of the storage units off-line for software updating in accordance with the software updating sequence pattern. The method includes, when the software has been successfully updated in the set of storage units, putting the set of storage units back on-line and taking another set of the storage units off-line in accordance with the software updating sequence pattern. The method includes, when the software has been successfully updated in the other set of storage units, putting the other set of storage units back on-line and taking yet another set of the storage units off-line for software updating in accordance with the software updating sequence pattern. | 10-29-2015 |
20150301905 | DISPERSED STORAGE NETWORK WITH DATA SEGMENT BACKUP AND METHODS FOR USE THEREWITH - A method begins with a processing module providing a data segment. The method continues with the processing module retrieving a plurality of first slices, corresponding to a previous revision of the data segment, from the distributed storage network. The method continues with the processing module recreating the previous revision of the data segment from the plurality of first slices corresponding to the previous revision of the data segment. The method continues with the processing module determining if the previous revision of the data segment compares unfavorably to the data segment. The method continues with the processing module storing the data segment in the DSN when determined that the previous version of the data segment compares unfavorably to the data segment. | 10-22-2015 |
20150288680 | DISTRIBUTING REGISTRY INFORMATION IN A DISPERSED STORAGE NETWORK - A method begins by a processing module of a dispersed storage network (DSN) generating a signed registry information packet, dispersed storage error encoding the signed registry information packet to produce a set of encoded registry information slices, and generating a set of signed encoded registry information slice packets for storage in storage units of the DSN. The method continues with the processing module retrieving a decode threshold number of signed encoded registry information slice packets. For each of the decode threshold number of signed encoded registry information slice packets, the method continues with the processing module recovering an encoded registry information slice. The method continues with the processing module dispersed storage error decoding a decode threshold number of recovered encoded registry information slices to reproduce the signed registry information packet, validating the signed registry information packet, and extracting registry information when the signed registry information packet is valid. | 10-08-2015 |
20150288384 | GENERATING MOLECULAR ENCODING INFORMATION FOR DATA STORAGE - A method begins by a processing module of one or more processing modules of one or more computing devices generating a number for each encoded data slice of a set of encoded data slices based on the encoded data slice, identifying a gene based on the number to produce an identified gene, and creating a linking identifier that links the encoded data slice to the identified gene, where, for the set of encoded data slices, a set of identified genes and a set of linking identifiers are created. The method continues with the processing module generating molecular encoding information from the set of identified genes and the set of linking identifiers, where the molecular encoding information is used to create a molecular storage structure for each identified gene of the set of identified genes yielding a set of molecular storage structures. | 10-08-2015 |
20150286833 | CONTROLLING ACCESS IN A DISPERSED STORAGE NETWORK - A method begins by a set of storage units of a dispersed storage network (DSN) receiving a set of access requests from a requesting device. The method continues with a first storage unit extracting a unique identifier from a first access request, performing a deterministic function on the unique identifier to produce a first obfuscated identifier, seeking a first obfuscated access permissions list, recovering first access permissions from the first obfuscated access permissions list, and processing the first access request based on the recovered first access permissions. The method continues with the requesting device receiving a set of access responses from the set of storage units for the set of access requests for which the requesting device had favorable access permissions with at least a threshold number of storage units. | 10-08-2015 |
20150261609 | DISPERSED STORAGE NETWORK SLICE NAME VERIFICATION - A method begins by a processing module dispersed storage error encoding data to produce a plurality of sets of encoded data slices in accordance with dispersed storage error coding parameters. The method continues with the processing module determining a plurality of sets of slice names corresponding to the plurality of sets of encoded data slices. The method continues with the processing module determining integrity information for the plurality of sets of slice names and sending the plurality of sets of encoded data slices, the plurality of sets of slice names, and the integrity information to a dispersed storage network memory for storage therein. | 09-17-2015 |
20150242273 | STORAGE OF DATA WITH VERIFICATION IN A DISPERSED STORAGE NETWORK - A method begins by a computing device sending a set of redundant dispersed storage error encoding write requests regarding a data object to a set of dispersed storage (DS) processing modules. The method continues with the set of DS processing modules dispersed storage error encoding the data object to produce a group of pluralities of sets of encoded data slices. The method continues with a set of storage units temporarily storing the group of pluralities of sets of encoded data slices. The method continues with the set of storage units permanently storing encoded data slices of the group of pluralities of sets of encoded data slices based on successful execution of a storage verification process to produce a plurality of sets of encoded data slices. | 08-27-2015 |
20150242272 | CONCATENATING DATA OBJECTS FOR STORAGE IN A DISPERSED STORAGE NETWORK - A method begins by a processing module of a dispersed storage network (DSN) concatenating a plurality of independent data objects into a concatenated data object and performing a dispersed storage error encoding function on the concatenated data object to produce a set of data-based encoded data slices and a set of redundancy-based encoded data slices. The method continues with the processing module outputting the set of data-based encoded data slices to a first set of storage units for storage and outputting the set of redundancy-based encoded data slices to a second set of storage units for storage. | 08-27-2015 |
20150235032 | EFFICIENT STORAGE OF ENCRYPTED DATA IN A DISPERSED STORAGE NETWORK - A method for storing a data object includes identifying data segments of the data object. The method continues with generating key indexes for the data segments. For a data segment, the method continues with accessing data segment key information based on a corresponding key index of the plurality of key indexes to determine whether an encryption key has been generated for a similar data segment. When the encryption key has been generated for the similar data segment, the method continues with using the encryption key to encrypt the data segment to produce an encrypted data segment. The method continues with compressing the encrypted data segment to produce a compressed and encrypted data segment. The method continues with storing the compressed and encrypted data segment in a storage unit of a dispersed storage network (DSN). | 08-20-2015 |
20150234708 | MODIFYING A DISPERSED STORAGE NETWORK MEMORY DATA ACCESS RESPONSE PLAN - A method includes storing tasks in a task queue. The method continues with computing devices retrieving at least some of the plurality of tasks for execution. The method includes a computing device issuing read requests and initiate delete requests to storage units regarding an unassigned task, wherein the initiate delete requests instruct the storage units to flag for deletion, but not execute deletion, of a set of encoded task slices corresponding to the unassigned task. The method continues with the computing device receiving responses. When the responses include encoded task slices, the method continues with the computing device decoding them to recover the unassigned task. The method continues with the computing device executing the recovered task and, when execution is successful, issuing commit delete requests to the storage units that instruct the storage units to delete the set of encoded task slices for the unassigned task. | 08-20-2015 |
20150220400 | RECOVERING DATA FROM MICROSLICES IN A DISPERSED STORAGE NETWORK - A method begins by a processing module of a dispersed storage network (DSN) identifying a data segment to be retrieved from storage units of the DSN, where the data segment is encoded into a set of encoded data slices that is divided into block sets of encoded data slices, and where each storage unit stores a block set of encoded data slices. The method continues with the processing module generating a set of read requests in accordance with retrieval information which assures that at least a decode threshold number of encoded data slices of the set are retrievable, where each request includes identity of a block set a number of encoded data slices that are to be read from a storage unit. The method continues with the processing module sending the set of read requests to the storage units and decoding received encoded data slices to recover the data segment. | 08-06-2015 |
20150220396 | WRITING ENCODED DATA SLICES IN A DISPERSED STORAGE NETWORK - 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. | 08-06-2015 |
20150213279 | EFFICIENT STORAGE OF ENCRYPTED DATA IN A DISPERSED STORAGE NETWORK - A method begins with a processing module receiving a request to store a data object from a first requesting device. The method continues with the processing module determining that a substantially similar version of the data object is currently stored in a DSN. The method continues with the processing module determining that a number of unique combinations of retrieving the plurality of sets of encoded data slices has exceeded a threshold and, when so, encoding, with a same decode threshold number and an increased pillar width number, the data object to create and store a plurality of sub-set of redundancy encoded data slices. The method continues with the processing module creating a unique combination of retrieving the data object for the first requesting device based on the plurality of sets of encoded data slices and the plurality of sub-set of redundancy encoded data slices. | 07-30-2015 |
20150212887 | REBUILDING A DATA REVISION IN A DISPERSED STORAGE NETWORK - A method begins by a processing module storing a set of encoded data slices in storage units. A data segment of data is encoded, in accordance with dispersed storage error encoding parameters, to produce the set of encoded data slices. The dispersed storage error encoding parameters include a decode threshold number and a pillar width number, which is at least twice the decode threshold number. The method continues with the processing module processing a first request for retrieval of the data segment by retrieving a first sub-set of encoded data slices, which includes the decode threshold number, and decoding them to produce a first recovered data segment. The method continues with the processing module processing a second request for retrieval of the data segment by retrieving a second sub-set of encoded data slices, which includes the decode threshold number, and decoding them to produce a second recovered data segment. | 07-30-2015 |
20150193309 | CONFIGURING STORAGE RESOURCES OF A DISPERSED STORAGE NETWORK - A method begins by a processing module of a dispersed storage network (DSN) ascertaining a decode threshold value for dispersed storage error encoding data for storage in storage units of the DSN. The method continues with the processing module determining a total width value for the dispersed storage error encoding based on the decode threshold value, a number of selected sites within the DSN, and a number of selected storage units of the selected sites. The method continues with the processing module determining logical storage slots within the selected storage units based on the total width value, the number of selected, and the number of selected storage units. The method continues with the processing module writing a set of encoded data slices to a total width value of the logical storage slots within at least some of the selected storage units of the selected sites based on a slice-to-slot mapping. | 07-09-2015 |
20150186214 | ASSIGNING A DISPERSED STORAGE NETWORK ADDRESS RANGE IN A MAINTENANCE FREE STORAGE CONTAINER - A maintenance free storage container includes a container housing, storage servers, and a container controller. The container controller includes a processing module that is operable to maintain virtual storage server to physical storage server mapping information and to maintain storage server failure information. The processing module is further operable to dispersed storage error encode the virtual storage server to physical storage server mapping information to produce encoded mapping slices. The processing module is further operable to send the encoded mapping slices for dispersed storage outside of the maintenance free storage container. The processing module is further operable to dispersed storage error encode the storage server failure information to produce encoded failure data slices. The processing module is further operable to send the encoded failure data slices for dispersed storage outside of the maintenance free storage container. | 07-02-2015 |
20150178160 | Transforming Data in a Distributed Storage and Task Network - A method begins with a computing device dividing data into data partitions. For a data partition of the data partitions, the method continues with the computing device associating indexing information with the data partition. The method continues with the computing device segmenting the data partition into a plurality of data segments. The method continues with the computing device dispersed storage error encoding the plurality of data segments to produce a plurality of sets of encoded data slices. The method continues with the computing device grouping encoded data slices of the plurality of sets of encoded data slices to produce a set of groupings of encoded data slices. | 06-25-2015 |
20150156204 | ACCESSING STORAGE UNITS OF A DISPERSED STORAGE NETWORK - A method begins with a group of storage units of a dispersed storage network (DSN) receiving a common access request. The method continues with each storage unit of the group of storage units interpreting the access request to determine whether the storage unit is an intended recipient of the access request, where storage units of a sub-set of storage units of the group of storage units are intended recipients. The method continues with each storage unit of the sub-set of storage units determining a type of the access request and a level of the access request. When the access request is a read request, the method continues with each storage unit of the sub-set of storage units retrieving each encoded data slice having an identifier of its slice address substantially matching the a given identifier of the level to produce a retrieved set of encoded data slices. | 06-04-2015 |
20150155969 | ADJUSTING ROUTING OF DATA WITHIN A NETWORK PATH - A method begins by a first computing device generating an initial routing plan that identifies network paths for transmitting encoded data slices of an encoded data segment from the first computing device to a second computing device. The method continues with the first computing device sending a plurality of subsets of encoded data slices to network paths. Within a network path, the method continues by a relay unit determining whether the network path defined by the initial routing plan requires adjusting. When the network path requires adjusting, the method continues with the relay unit establishing an adjusted network path by at least one of adding a relay unit and deleting a relay unit. The method continues with the relay unit sending, via the adjusted network path, the corresponding subset of encoded data slices to the second computing device. | 06-04-2015 |
20150155968 | OPTIMIZING ROUTING OF DATA ACROSS A COMMUNICATIONS NETWORK - A method begins by a first computing device determining a routing plan to route a set of encoded data slices from the first computing device to a second computing device via a plurality of network paths of a communications network. The method continues with the second computing device receiving encoded data slices via one or more network paths. When the second computing device receives a decode threshold number of encoded data slices, the method continues with the second computing device sending a message to the communications network indicating receipt of the decode threshold number of encoded data slices. The method continues with a relay unit determining whether the relay unit is in possession of a not-yet delivered encoded data slice. When the relay unit is in possession of the not-yet delivered encoded data slice, the method continues with the relay unit ceasing forwarding of the not-yet delivered encoded data slice. | 06-04-2015 |
20150154074 | IDENTIFYING A POTENTIALLY COMPROMISED ENCODED DATA SLICE - A method begins by a dispersed storage (DS) processing module selecting a data segment and verifying integrity values of encoded data slices generated by encoding the data segment. When integrity values of a decode threshold number of encoded data slices are affirmatively verified, the method continues with the DS processing module verifying an integrity value of the data segment. When the integrity value of the data segment is affirmatively verified, the method continues with the DS processing module generating a new set of encoded data slices. The method continues with the DS processing module verifying concurrency of the set of encoded data slices with the new set of encoded data slices and for each encoded data slice having a negative concurrency verification, flagging the encoded data slice as being potentially compromised. | 06-04-2015 |
20150150082 | TIME BASED DISPERSED STORAGE ACCESS - A method begins with a managing unit establishing an access policy that designates, for a first group of user devices, a first read time window and a first write time window. The method continues with a storage unit receiving an access request from a user device. The method continues with the storage unit determine whether the access request is received within the first read time window or whether the access request is received within the first write time window. The method continues with the storage unit generating a read response that includes encoded data slices when the access request is a read request and is received within the first read time window. The method continues with the storage unit processing the write request to store encoded data slices when the access request is the write request and is received within the first write time window. | 05-28-2015 |
20150149861 | METHOD AND APPARATUS FOR NESTED DISPERSED STORAGE - A method begins by a DS processing module generating a plurality of encoded slices from a data segment using an error encoding function. The method continues with the DS processing module identifying a plurality of DS storage units for storing the plurality of encoded slices. The method continues with the DS processing module selecting an encoded slice of the plurality of encoded slices for sub-slicing using a sub-slicing encoding function to produce a selected encoded slice. The method continues with the DS processing module outputting the plurality of encoded slices to the plurality of DS storage units. The method continues with the DS processing module outputting a command to a DS storage unit of the plurality of DS storage units corresponding to the selected encoded slice, wherein the command includes an instruction to sub-slice the selected encoded slice. | 05-28-2015 |
20150127699 | OBTAINING DISPERSED STORAGE NETWORK SYSTEM REGISTRY INFORMATION - A method begins by a processing module of a dispersed storage network (DSN) obtaining an identifier (ID) piece of multiple ID pieces regarding a registry fragment of a distributed DSN registry. The method continues with the processing module performing a function on the ID piece to obtain a registry fragment alias, wherein performance of the function on the multiple ID pieces would produce multiple registry fragment aliases. The method continues with the processing module determining DSN addressing information for the registry fragment based on the registry fragment alias, wherein the DSN addressing information is determinable from any one of the multiple registry fragment aliases. The method continues with the processing module receiving a response regarding the registry fragment when a local copy of the registry fragment is not up-to-date. | 05-07-2015 |
20150113140 | ENTITY REGISTRATION IN MULTIPLE DISPERSED STORAGE NETWORKS - A method begins by receiving an access request for a user device. The method continues with the DS processing unit determining whether the user device has the DSN as a local DSN. When the user device does not have the DSN as the local DSN, the method continues with the DS processing unit determining whether the user device has a valid signed global certificate. When the user device does not have a valid signed global certificate, the method continues with the DS processing unit or by the user device sending a DSN registration request to the system authority unit. The method continues with the system authority unit generating the valid signed global certificate for the user device upon successful execution of processing the DSN registration request. The method continues with the DS processing unit executing the access request for the user device upon receipt of the valid signed global certificate. | 04-23-2015 |
20150113115 | UPDATING ERROR RECOVERY INFORMATION IN A DISPERSED STORAGE NETWORK - A method begins with a set of storage units of a dispersed storage network (DSN) receiving a plurality of read requests for encoded data slices corresponding to particular content data. The method continues with a first storage unit detecting that a corresponding portion of the plurality of read requests exceeds a heavy load condition for the first storage unit. The method continues when the corresponding portion of the plurality of read requests exceeds the heavy load condition for the first storage unit with the first storage unit identifying a first alternative storage unit of the DSN. The method continues with the first storage unit sending a copy of the first group of encoded data slices to the first alternative storage unit and redirecting some of the corresponding portion of the plurality of read requests to the first alternative storage unit for processing. | 04-23-2015 |
20150101024 | DISPERSED STORAGE SYSTEM WITH IDENTITY UNIT SELECTION AND METHODS FOR USE THEREWITH - A method for execution by one or more processing modules of a dispersed storage network (DSN) includes receiving a data access request for at least one data segment stored in the DSN. One of a plurality of identity units is selected, based on the data access request. The method determines, via the selected one of the plurality of identity units, whether to allow the data access request. The data access request is processed, when the data access request is allowed via the selected one of the plurality of identity units. | 04-09-2015 |
20150100966 | ADJUSTING EXECUTION OF TASKS IN A DISPERSED STORAGE NETWORK - 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. | 04-09-2015 |
20150100846 | DISPERSED STORAGE SYSTEM WITH VAULT UPDATING AND METHODS FOR USE THEREWITH - A method for execution by one or more processing modules of a dispersed storage network (DSN) includes storing a set of encoded data slices in an original plurality of storage units of the DSN associated as a current generation of a storage vault. The method determines whether utilization of the original plurality of storage units is greater than a utilization threshold. When the utilization of the original plurality of storage units is greater than the utilization threshold, the original plurality of storage units are updated to include at least one additional storage unit and a proper subset of the original plurality of storage units associated as the current generation of a storage vault to generate an updated plurality of storage units associated as a next generation of the storage vault. The set of encoded data slices are stored in the updated plurality of storage units of the DSN associated as the next generation of the storage vault. | 04-09-2015 |
20150100727 | MIGRATION OF ENCODED DATA SLICES IN A DISPERSED STORAGE NETWORK - A method includes a processing module of a storage unit of a dispersed storage network (DSN) monitoring input/output (IO) rates of a plurality of disk drives, where access requests for encoded data slices occur at varying rates. The method continues with the processing module determining that the IO rate of a disk drive is exceeding a desired maximum IO rate and identifying a pending access request for an encoded data slice stored in the disk drive. The method continues with the processing module evaluating disk drive processing rates of other storage units that are storing other encoded data slices of a set of encoded data slices that includes the encoded data slice to determine whether the encoded data slice is needed to satisfy the pending access request. When the encoded data slice is needed, the method continues with the processing module migrating the encoded data slice to another disk drive. | 04-09-2015 |
20150100726 | DISPERSED STORAGE SYSTEM WITH WIDTH DISPERSAL CONTROL AND METHODS FOR USE THEREWITH - A method for execution by one or more processing modules of a dispersed storage network (DSN) includes storing a set of encoded data slices in an original plurality of storage units of the DSN associated as a current generation of a storage vault. The method determines whether to increase a width dispersal parameter of the storage vault. When the width dispersal parameter of the storage vault is to be increased, the original plurality of storage units are updated to include at least one additional storage unit to generate an updated plurality of storage units associated as a next generation of the storage vault. The set of encoded data slices are stored in the updated plurality of storage units of the DSN associated as the next generation of the storage vault. | 04-09-2015 |
20150100697 | SESSION EXECUTION DECISION - 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. | 04-09-2015 |
20150100662 | UTILIZING MULTIPLE DATA STRUCTURES FOR SLICE STORAGE - A method includes a dispersed storage (DS) processing module receiving a slice access request that includes a slice name. The method continues by obtaining one or more revision numbers for the slice access request. The method continues for each combination of revision number and the slice name, by performing a deterministic function on the combination to produce a slice location table index value. The method continues by accessing a slice location table utilizing the slice location table index value to obtain a slice location. The method continues by accessing a slice utilizing the slice location. The method continues by generating a slice access response based on the accessing of the slice and sending the slice access response to a requesting entity. | 04-09-2015 |
20150100601 | DISPERSED STORAGE SYSTEM WITH SUB-VAULTS AND METHODS FOR USE THEREWITH - A method for execution by one or more processing modules of a dispersed storage network (DSN) includes receiving a data access request for at least one data segment stored in the DSN. A vault associated with data access request is identified along with one of a plurality of sub-vaults associated with the vault. Access information corresponding to the one of the plurality of sub-vaults is retrieved to determine whether the access request is allowed. When the access request is allowed, a sub-vault directory associated with the one of the plurality of sub-vaults is retrieved to identify a DSN address corresponding to the data access request, and fulfilling the data access request based on the DSN address. | 04-09-2015 |
20150089322 | DATA STORAGE SYSTEM AND METHOD BY SHREDDING AND DESHREDDING - A system and method for data storage by shredding and deshredding of the data allows for various combinations of processing of the data to provide various resultant storage of the data. Data storage and retrieval functions include various combinations of data redundancy generation, data compression and decompression, data encryption and decryption, and data integrity by signature generation and verification. Data shredding is performed by shredders and data deshredding is performed by deshredders that have some implementations that allocate processing internally in the shredder and deshredder either in parallel to multiple processors or sequentially to a single processor. Other implementations use multiple processing through multi-level shredders and deshredders. Redundancy generation includes implementations using non-systematic encoding, systematic encoding, or a hybrid combination. Shredder based tag generators and deshredder based tag readers are used in some implementations to allow the deshredders to adapt to various versions of the shredders. | 03-26-2015 |
20150089318 | DATA STORAGE SYSTEM AND METHOD BY SHREDDING AND DESHREDDING - A system and method for data storage by shredding and deshredding of the data allows for various combinations of processing of the data to provide various resultant storage of the data. Data storage and retrieval functions include various combinations of data redundancy generation, data compression and decompression, data encryption and decryption, and data integrity by signature generation and verification. Data shredding is performed by shredders and data deshredding is performed by deshredders that have some implementations that allocate processing internally in the shredder and deshredder either in parallel to multiple processors or sequentially to a single processor. Other implementations use multiple processing through multi-level shredders and deshredders. Redundancy generation includes implementations using non-systematic encoding, systematic encoding, or a hybrid combination. Shredder based tag generators and deshredder based tag readers are used in some implementations to allow the deshredders to adapt to various versions of the shredders. | 03-26-2015 |
20150088842 | DATA STORAGE SYSTEM AND METHOD BY SHREDDING AND DESHREDDING - A system and method for data storage by shredding and deshredding of the data allows for various combinations of processing of the data to provide various resultant storage of the data. Data storage and retrieval functions include various combinations of data redundancy generation, data compression and decompression, data encryption and decryption, and data integrity by signature generation and verification. Data shredding is performed by shredders and data deshredding is performed by deshredders that have some implementations that allocate processing internally in the shredder and deshredder either in parallel to multiple processors or sequentially to a single processor. Other implementations use multiple processing through multi-level shredders and deshredders. Redundancy generation includes implementations using non-systematic encoding, systematic encoding, or a hybrid combination. Shredder based tag generators and deshredder based tag readers are used in some implementations to allow the deshredders to adapt to various versions of the shredders. | 03-26-2015 |
20150088832 | DATA STORAGE SYSTEM AND METHOD BY SHREDDING AND DESHREDDING - A system and method for data storage by shredding and deshredding of the data allows for various combinations of processing of the data to provide various resultant storage of the data. Data storage and retrieval functions include various combinations of data redundancy generation, data compression and decompression, data encryption and decryption, and data integrity by signature generation and verification. Data shredding is performed by shredders and data deshredding is performed by deshredders that have some implementations that allocate processing internally in the shredder and deshredder either in parallel to multiple processors or sequentially to a single processor. Other implementations use multiple processing through multi-level shredders and deshredders. Redundancy generation includes implementations using non-systematic encoding, systematic encoding, or a hybrid combination. Shredder based tag generators and deshredder based tag readers are used in some implementations to allow the deshredders to adapt to various versions of the shredders. | 03-26-2015 |
20150074220 | SOCIAL NETWORKING UTILIZING A DISPERSED STORAGE NETWORK - Social networking data is received at the dispersed storage processing unit, the social networking data associated with at least one of a plurality of user devices. Dispersed storage metadata associated with the social networking data is generated. A full record and at least one partial record are generated based on the social networking data and further based on the dispersed storage metadata. The full record is stored in a dispersed storage network. The partial record is pushed to at least one other of the plurality of user devices via the data network. | 03-12-2015 |
20150067445 | ADJUSTING A DISPERSAL PARAMETER OF DISPERSEDLY STORED DATA - A method begins by a processing module storing data files utilizing a dispersed storage error coding function that includes a pillar width parameter and a decode threshold parameter. The method continues with the processing module determining whether to adjust redundancy of the dispersed storage error coding function based on performance of the DSN. When the redundancy of the dispersed storage error coding function is to be adjusted, changing a ratio between the pillar width parameter and the decode threshold parameter and adjusting storage of one or more sets of the plurality of sets of encoded data slices based on the changing of the ratio. | 03-05-2015 |
20150067421 | DISPERSED STORAGE WITH VARIABLE SLICE LENGTH AND METHODS FOR USE THEREWITH - A dispersed storage processing unit selects a slice length for a data segment to be stored in a dispersed storage network (DSN). The data segment is encoded using a dispersed storage error coding function to produce a set of data slices in accordance with the slice length. A storage file is selected based on the slice length. A storage file identifier (ID) is generated that indicates the storage file. A set of DSN addresses are generated corresponding to the set of data slices, wherein the set of DSN addresses each include the storage file ID and a corresponding one of a plurality of offset identifiers (IDs). The set of data slices are written in accordance with the set of DSN addresses. A directory is updated to associate the set of DSN addresses with an identifier of the data segment. | 03-05-2015 |
20150067295 | STORAGE POOLS FOR A DISPERSED STORAGE NETWORK - A method begins by a dispersed storage (DS) processing module selecting storage pools within the DSN with available capacity for storing data of a storage group. The method continues by selecting one or more dispersed storage (DS) units within each of the selected storage pools based on a selection criteria and mapping the one or more DS units to the storage group. The method continues by receiving a write request to store a data object to the storage group and by storing the data object in at least one of the mapped one or more DS units. The method continues with the DS processing module issuing an indication unutilized storage space calculated on a proportionate basis based on storage utilized for the storage group as a percentage of total storage utilized and updating a write proportion value based on received storage utilization responses. | 03-05-2015 |
20150067164 | DISPERSED STORAGE WITH COORDINATED EXECUTION AND METHODS FOR USE THEREWITH - A dispersed storage and task (DST) processing unit receives an access request. An estimated processing load, associated with the access request, is determined. A processing resource is selected based on the estimated processing load. A coordinated execution schedule is determined for a plurality of DST execution units. The access request is assigned to the processing resource in accordance with the coordinated execution schedule. | 03-05-2015 |
20150067101 | DISPERSED STORAGE BASED ON ESTIMATED LIFE AND METHODS FOR USE THEREWITH - A dispersed storage and task (DST) processing unit receives a data access request. An estimated end of life is determined for a plurality of DST execution units. A subset of the plurality of DST execution units is selected, based on a threshold number associated with the data access request and further based on the estimated end of life for the subset of the plurality of DST execution units. The data access request is executed via the subset of the plurality of DST execution units. | 03-05-2015 |
20150067100 | DISPERSED STORAGE BASED ON RANGE AVAILABILITY AND METHODS FOR USE THEREWITH - A dispersed storage and task (DST) processing unit receives a data access request corresponding to a data segment. Range availability information is obtained for a plurality of DST execution units of the DST network. A subset of the plurality of DST execution units is selected based on the range availability information and a threshold number corresponding to the data access request. Execution unit access requests are generated and sent to the subset of the plurality of DST execution units corresponding to a plurality of slices of the data segment, wherein the execution unit access requests include address information that is based on the range availability information. | 03-05-2015 |
20150067090 | STORING LOW RETENTION PRIORITY DATA IN A DISPERSED STORAGE NETWORK - A method begins by a processing module of a dispersed storage network (DSN) sending a set of low retention priority write requests to storage units of the DSN, where each low retention priority write request includes a low retention priority query. For each storage unit of the storage units that receives a low retention priority write request of the set of low retention priority write requests, the method continues with the processing module determining a low retention priority response regarding availability for storing low retention priority data based on current storage of low priority data objects and available memory for storing the low retention priority data. The method continues with the processing module sending the low retention priority response. When a threshold number of favorable low retention priority responses have been received, the method continues at the processing module facilitating storage of a low retention priority data object. | 03-05-2015 |
20150066879 | DEFRAGMENTING SLICES IN DISPERSED STORAGE NETWORK MEMORY - A method begins by a dispersed storage (DS) processing module receiving access requests, processing data set requests and issuing access responses. The method continues by monitoring slice access requests to generate access records by either storing time stamped access records indicating identities of slices requested by a timestamp or by commonality of slice names. The method continues with determining a correlation of two or more slice access based on the access records when a correlation is greater than a correlation threshold and identifying two or more slices for co-location. The method continues when the two or more slices are not co-located by selecting one or more of the two or more slices for migration to a common memory device. | 03-05-2015 |
20150066875 | UPDATING DE-DUPLICATION TRACKING DATA FOR A DISPERSED STORAGE NETWORK - A method begins by a dispersed storage (DS) processing module of a dispersed storage network (DSN) determining whether a change has occurred to a data object of a set of data objects. When a change has occurred, the method continues with the DS processing module accessing de-duplication tracking data for the set of data objects. When the change is deletion of an identified data object of the set of data objects, the method continues with the DS processing module determining whether the identified data object is the only data object in the set of data objects. When the identified data object is not the only data object in the set of data objects, the method continues with the DS processing module updating the linking information to delete linking the identified data object to addressing information. | 03-05-2015 |
20150052388 | ENCRYPTING DATA FOR STORAGE IN A DISPERSED STORAGE NETWORK - A method begins by a dispersed storage (DS) processing module encrypting a plurality of data segments of the data using a plurality of encryption keys to produce a plurality of encrypted data segments and generating a plurality of deterministic values from the plurality of encrypted data segments. The method continues with the DS processing module establishing a data intermingling pattern and generating a plurality of masked keys by selecting one or more of the plurality of deterministic values in accordance with the data intermingling pattern and performing a masking function on the plurality of encryption keys and the selected one or more of the plurality of deterministic values. The method continues with the DS processing module appending the plurality of masked keys to the plurality of encrypted data segments to produce a plurality of secure data packages and outputting the plurality of secure data packages. | 02-19-2015 |
20150046769 | PRE-FETCHING DATA SEGMENTS STORED IN A DISPERSED STORAGE NETWORK - A method begins by a processing module receiving a data segment retrieval request regarding a data segment, which is stored in a dispersed storage network (DSN) memory. The method continues with the processing module processing the data segment retrieval request, determining pre-fetch segment buffering information, and when the pre-fetch segment buffering information indicates pre-fetching one or more other data segments, generating one or more pre-fetch segment retrieval requests for the one or more other data segments, receiving, one or more sets of at least a decode threshold number of encoded data slices, decoding, in accordance with a dispersed storage error coding function, the one or more sets of at least a decode threshold number of encoded data slices to reproduce the one or more other data segments, and updating a pre-fetch segment buffer with the one or more other data segments. | 02-12-2015 |
20150043732 | STORAGE OF SENSITIVE DATA IN A DISPERSED STORAGE NETWORK - A method begins by a processing module applying a share encoding function on data to produce a plurality of encoded shares and generating a corresponding plurality of random numbers for the plurality of encoded shares. The method continues with the processing module generating an encryption key based on a common password and a corresponding one of the corresponding plurality of random numbers and encrypting the encoded share utilizing the encryption key to produce an encrypted share for each encoded share of the plurality of encoded shares. The method continues with the processing module facilitating storage of the corresponding plurality of random numbers and each of the encrypted shares. | 02-12-2015 |
20150040134 | DISTRIBUTED STORAGE NETWORK WITH COORDINATED PARTIAL TASK EXECUTION AND METHODS FOR USE THEREWITH - A method includes receiving a task for execution by a plurality of distributed storage and task execution units A priority level is determined for the task. A plurality of coordinated partial task requests are generated and sent to the plurality of distributed storage and task execution units, wherein the plurality coordinated partial task requests indicate a plurality of coordinated partial tasks and the priority level. A plurality of partial task results are received in response to performance of the plurality of coordinated partial tasks by the plurality of distributed storage and task execution units. A task result for the task is generated based on the plurality of partial task results. | 02-05-2015 |
20150039969 | STORING DATA IN A DIRECTORY-LESS DISPERSED STORAGE NETWORK - A method begins by a dispersed storage (DS) processing module of a dispersed storage network (DSN) sending a plurality of sets of encoded data slices to DSN memory for storage in accordance with a plurality of sets of DSN data addresses. The method continues with the DS processing module generating retrieval data that is based on a data object number and data storage information. The method continues with the DS processing module dispersed storage error encoding the retrieval data to produce a set of encoded retrieval data slices and generating a set of DSN retrieval data addresses based on the data name and on retrieval data storage information. The method continues with the DS processing module sending the set of encoded retrieval data slices to the DSN memory for storage in accordance with the set of DSN retrieval data addresses. | 02-05-2015 |
20150039936 | DISTRIBUTED STORAGE NETWORK WITH ALTERNATIVE FOSTER STORAGE APPROACHES AND METHODS FOR USE THEREWITH - A method includes encoding input data into a plurality of slices. The plurality of slices are sent to a plurality of distributed storage and task execution units for storage, the plurality of distributed storage and task execution units being located at a corresponding plurality of sites A storage failure is detected corresponding to at least one of the plurality of slices corresponding to at least one of the plurality of the distributed storage and task execution units and at least one of the corresponding plurality of sites A foster storage approach is determined. At least one alternative distributed storage and task execution unit is selected in accordance with the foster storage approach. At least one foster slice is generated corresponding to the at least one of the plurality of slices. The at least one foster slice is sent to the at least one alternative distributed storage and task execution unit. | 02-05-2015 |
20150039934 | ACCOUNTING FOR DATA THAT NEEDS TO BE REBUILT OR DELETED - A method begins by a dispersed storage (DS) processing module identifying a plurality of encoded data slices requiring rebuilding. The method continues with the DS processing module determining an amount of reserve memory required for storage of rebuilt slices for the identified plurality of encoded data slices requiring rebuilding. The method continues with the DS processing module updating memory utilization information to include the amount of reserve memory required. The method continues with the DS processing module indicating the memory utilization. The method continues with the DS processing module obtaining rebuilt slices. The method continues with the DS processing module storing the rebuilt slices in the memory and updating the memory utilization information. | 02-05-2015 |
20150039828 | TIME-BASED STORAGE WITHIN A DISPERSED STORAGE NETWORK - A method begins by a dispersed storage (DS) processing obtaining estimated future availability information for storage units and organizing a plurality of sets of encoded data slices into a plurality of group-sets of encoded data slices. For each of the plurality of group-sets of encoded data slices, the method continues with the DS processing module estimating an approximate storage completion time to produce a plurality of approximate storage completion times. The method continues with the DS processing module establishing a time-availability pattern for writing the plurality of group-sets of encoded data slices to the storage units based on the estimated future availability information and the plurality of approximate storage completion times. The method continues with the DS processing module sending the plurality of group-sets of encoded data slices to at least some of the storage units for storage therein in accordance with the time-availability pattern. | 02-05-2015 |
20150039827 | DISTRIBUTED STORAGE NETWORK WITH REPLICATION CONTROL AND METHODS FOR USE THEREWITH - A method includes encoding input data into a plurality of slices. The plurality of slices are sent to a first plurality of distributed storage and task execution units for storage, the first plurality of distributed storage and task execution units being located at a corresponding first plurality of sites. Write slice data is received from the first plurality of distributed storage and task execution units. The method determines when replication is to be applied to the plurality of slices. When replication is to be applied to the plurality of slices, a second plurality of distributed storage and task execution units are selected, a plurality of replicated slices corresponding to the plurality of slices are generated, and the plurality of replicated slices are sent to the second plurality of distributed storage and task execution units. | 02-05-2015 |
20150039666 | DISTRIBUTED STORAGE NETWORK WITH CLIENT SUBSETS AND METHODS FOR USE THEREWITH - A method includes identifying a plurality of DST client modules affiliated with data for storage in the DST network. A corresponding subset of a plurality of DST execution units are identified for each of the plurality of DST client modules. The data is encoded into a plurality of slices based on at least one dispersal parameter, the number of the plurality of slices corresponding to a number of the plurality of DST execution units included in a superset formed from the union of each subset of a plurality of DST execution units corresponding to each of the plurality of DST client modules. The plurality of slices are sent for storage in the superset formed from the union of each subset of a plurality of DST execution units. | 02-05-2015 |
20150039660 | CO-LOCATE OBJECTS REQUEST - A method begins by a dispersed storage (DS) processing module receiving a data object co-locate write request. The method continues with the DS processing module obtaining a plurality of sets of encoded data slices for a data object to co-locate. The method continues with the DS processing module generating a plurality of sets of slice names for the data object to co-locate based on another plurality of sets of slice names associated with a data object to be co-located with. The method continues with the DS processing module storing the plurality of sets of encoded data slices in the DSN using the generated plurality of sets of slice names for the data object co-locate. | 02-05-2015 |
20150026539 | UTILIZING A LOCAL AREA NETWORK MEMORY AND A DISPERSED STORAGE NETWORK MEMORY TO ACCESS DATA - A method begins by a processing module encoding data based on a decode threshold parameter and a pillar width parameter to produce a set of encoded data slices and selecting a local area network (LAN) pillar width value of encoded data slices of the set of encoded data slices for storage in LAN available memories, wherein the LAN pillar width value is based on the decode threshold parameter, the pillar width parameter, and quantities of the LAN available memories. The method continues with the processing module selecting a wide area network (WAN) pillar width value of encoded data slices of the set of encode data slices for storage in a dispersed storage network (DSN) memory of a wide area network, wherein the WAN pillar width value is based on the decode threshold parameter and the pillar width parameter. | 01-22-2015 |
20150012798 | UTILIZING LOCAL MEMORY AND DISPERSED STORAGE MEMORY TO ACCESS ENCODED DATA SLICES - A method begins by a processing module establishing a dispersed storage (DS) error coding function based on a number of local memories associated with the computing device, wherein a decode threshold number of the DS error coding function corresponds to the number of local memories. The method continues with the processing module encoding a data segment of data utilizing the DS error coding function to produce a set of encoded data slices, of which the decode threshold number of encoded data slices is required to recover the data and the set of encoded data slices includes a pillar width number of encoded data slices. The method continues with the processing module storing the decode threshold number of encoded data slices in the local memories and outputting a remaining number of encoded data slices of the set of encoded data slices to the dispersed storage network (DSN) memory for storage therein. | 01-08-2015 |
20150012797 | STORING DATA IN A DISTRIBUTED STORAGE NETWORK - A method begins by a dispersed storage (DS) processing module mapping a set of data partitions to a set of storage regions. For each data partition, the method continues with the DS processing module segmenting the data partition into a plurality of data segments and designating a first data segment. The method continues with the DS processing module generating data storage mapping information. The method continues with the DS processing module encoding the data storage mapping information to produce at least one set of encoded mapping information slices and for each data partition, encoding the plurality of data segments to produce a plurality of sets of encoded data slices. The method continues with the DS processing module outputting the at least one set of encoded mapping information slices and, for each data partition, the plurality of sets of encoded data slices to the DSN for storage therein. | 01-08-2015 |
20140380128 | DATA MIGRATION BETWEEN A RAID MEMORY AND A DISPERSED STORAGE NETWORK MEMORY - A method begins by a processing module determining to change storage format from a redundant array of independent disks (RAID) format to a dispersed storage network (DSN) format. The method continues with the processing module retrieving the data from a RAID memory that is stored in the RAID format to produce retrieved RAID data. The method continues with the processing module converting stripe-block data of the retrieved RAID data into a plurality of sets of encoded data slices and reprovisioning the RAID memory for storing DSN formatted data to produce reprovisioned memory. The method continues with the processing module outputting the plurality of sets of encoded data slices to at least one of the RAID memory and a DSN memory for storage therein. | 12-25-2014 |
20140380124 | ACQUIRING A TRUSTED SET OF ENCODED DATA SLICES - A method for execution by a computing device, the method begins in response to a data segment access request, generating a set of access requests regarding a set of encoded data slices. The method continues by sending a subset of the access requests to storage units of a dispersed storage network (DSN) and sending an access request of the set of access requests to a trusted storage unit of the DSN. The method continues by receiving a trusted encoded data slice from the trusted storage unit and receiving a subset of encoded data slices from the storage units, wherein the trusted encoded data slice is utilized to authenticate the subset of encoded data slices and when the subset of encoded data slices are authenticated, the trusted encoded data slice and the subset of encoded data slices are decoded to recover the data segment. | 12-25-2014 |
20140380121 | CONFIGURING A GENERIC COMPUTING DEVICE UTILIZING SPECIFIC COMPUTING DEVICE OPERATION INFORMATION - A method for execution, when a generic computing device is paired with a specific computing device (SCD) token, begins with the SCD token sending distributed storage network (DSN) access request to DSN memory via the generic computing device, wherein the DSN access request identifies SCD operation information that is stored as one or more of sets of encoded data slices in the DSN memory and wherein the SCD operation information was encoded using a dispersed storage error encoding function to produce the plurality of sets of encoded data slices. Then, the SCD token receives the one or more of sets of encoded data slices from the DSN memory via the generic computing device and decodes the one or more of sets of encoded data slices to retrieve the SCD operation information and enables the generic computing device to function as an SCD in accordance with the SCD operation information. | 12-25-2014 |
20140380120 | SENDING A ZERO INFORMATION GAIN FORMATTED ENCODED DATA SLICE - A method begins by a dispersed storage (DS) processing module determining whether to send an encoded data slice of set of encoded data slices in accordance with a zero information gain (ZIG) format. When the encoded data slice is to be sent in accordance with the ZIG format, the method continues with the DS processing module selecting a partial encoding threshold number of encoded data slices of the set of encoded data slices, wherein the partial encoding threshold number of encoded data slices does not include the encoded data slice and generating a set of ZIG encoded data slices based on a ZIG function and the partial encoding threshold number of encoded data slices, wherein the set of ZIG encoded data slices represents recovery information of the encoded data slice. The method continues with the DS processing module outputting the set of ZIG encoded data slices. | 12-25-2014 |
20140380064 | DELETING ENCODED DATA SLICES IN A DISPERSED STORAGE NETWORK - A method begins by a dispersed storage (DS) processing module receiving a request regarding at least a portion of corresponding encoded data slices, wherein a collection of encrypted and encoded data slices of a plurality of collections of encrypted and encoded data slices includes a common data aspect, wherein encrypted and encoded data slices of the collection of encrypted and encoded data slices are produced by individually encrypting corresponding encoded data slices using a common encrypting character string and representations of the corresponding encoded data slices. The method continues with the DS processing module identifying the common encrypting character string of the corresponding encoded data slices. When the request is to delete the corresponding encoded data slices, the method continues with the DS processing module obfuscating the common encrypting character string in a local memory such that the collection of encrypted and encoded data slices are effectively incomprehensible. | 12-25-2014 |
20140379675 | DIRECTORY SYNCHRONIZATION OF A DISPERSED STORAGE NETWORK - A method begins by independently executing a first write transaction in a dispersed storage network (DSN) to a particular write verification step of a multiple step write process, wherein the first write transaction has a first transaction identifier. The method continues by independently executing a second write transaction in the DSN to the particular write verification step, wherein the second write transaction has a second transaction identifier, and wherein subject matter of the first write transaction is related to subject matter of the second write transaction. The method continues by dependently finalizing the multiple step write process for each of the first and second write transactions utilizing the first and second transaction identifiers when each of the first and second write transactions have reached the particular write verification step. | 12-25-2014 |
20140372695 | DISPERSED STORAGE PROCESSING UNIT AND METHODS WITH DATA AGGREGATION FOR USE IN A DISPERSED STORAGE SYSTEM - A new data block to be stored in the dispersed storage system is received. When it is determined that a previous data segment contains sufficient space for the new data block, the previous data segment is retrieved from a plurality of dispersed storage units. A revised data segment is generated by aggregating the new data block with at least one existing data block of the previous data segment. A plurality of slices are generated for the revised data segment. The plurality of slices are stored in the plurality of dispersed storage units. | 12-18-2014 |
20140372607 | ADJUSTING ALLOCATION OF DISPERSED STORAGE NETWORK RESOURCES - A method begins by a processing module of a dispersed storage network (DSN) monitoring, over time for a user device, an actual service level in comparison to a subscription service level, where the subscription service level has a range of acceptable service, where the actual service level is a statistical measure of accessing the DSN, where the DSN includes a plurality of DSN resources that, in turn, includes a first performance level dispersed storage processing unit, a second performance level dispersed storage processing unit, a plurality of first performance level storage units, and a plurality of second performance level storage units. When the actual service level is outside of the range of acceptable service, the method continues with the processing module adjusting allocation of one or more DSN resources of the plurality of DSN resources to bring a future service level back inside the range of acceptable service. | 12-18-2014 |
20140365831 | DETECTING INTENTIONAL CORRUPTION OF DATA IN A DISPERSED STORAGE NETWORK - A method begins by a dispersed storage (DS) processing module of a DS unit selecting a data slice for corruption analysis and requesting integrity information for the data slice from one or more other DS units of a dispersed storage network. When the one or more requested integrity information is received, the method continues with the DS processing module analyzing the one or more received integrity information and local integrity information of the data slice stored in the DS unit. When the analysis of the one or more received integrity information and the local integrity information of the data slice is unfavorable, the method continues with the DS processing module identifying the data slice as being corrupted. | 12-11-2014 |
20140365657 | MANAGEMENT OF NETWORK DEVICES WITHIN A DISPERSED DATA STORAGE NETWORK - A method of managing devices in a dispersed data storage network is disclosed. A device list is maintained including entries for every device in the dispersed data storage network. Each entry lists a public key, a network address, and hardware identifier for the corresponding device. On startup each device sends a request to join the network. The request includes the device's public key, network address, and hardware identifier. The request is compared with the device list, and, based on the comparison, and, in some cases, administrator action, the request is granted or denied. | 12-11-2014 |
20140359349 | DISPERSED STORAGE RE-DISPERSION METHOD BASED ON A FAILURE - A method begins by identifying a storage unit of a set of storage units within a dispersed storage system as being likely to fail. The method continues by determining an approach for minimizing rebuilding the encoded data slices that are stored on an identified storage unit in an event of a failure of the identified storage unit. The approach is at least one approach option from a list of approach options that includes fostering new encoded data slices, replicating existing encoded data slices, and re-dispersing existing encoded data slices. The method continues by implementing the approach regarding the identified storage unit and when the identified storage unit fails, retrieving the encoded data slices that were stored on the identified storage unit based on the approach. | 12-04-2014 |
20140359348 | ADJUSTING DISPERSED STORAGE NETWORK TRAFFIC DUE TO REBUILDING - A method begins by a dispersed storage (DS) processing module of a dispersed storage network (DSN) monitoring network traffic within the DSN. When the network traffic compares unfavorably to a desired network traffic function, the method continues with the DS processing module reducing a portion of the network traffic due to rebuilding flagged encoded data slices by at least one of changing rebuilding criteria for the flagged encoded data slices and changing rebuilding network traffic protocols. | 12-04-2014 |
20140359276 | SECURING DATA IN A DISPERSED STORAGE NETWORK - A method begins by a source processing module securing data based on a key stream to produce secured data, where the key stream is derived from a unilateral encryption key accessible only to the source processing module, and sending the secure data to an intermediator processing module, where desecuring the secured data is divided into two partial desecuring stages. The method continues with the intermediator processing module partially desecuring the secure data in accordance with a first partial desecuring stage to produce partially desecured data and sending the partially desecured data to a destination processing module. The method continues with the destination processing module further partially desecuring the partially desecured data in accordance with a second desecuring stage to recover the data, where the destination processing module does not have access to the encryption key or to the key stream. | 12-04-2014 |
20140351891 | COOPERATIVE DATA ACCESS REQUEST AUTHORIZATION IN A DISPERSED STORAGE NETWORK - A method begins by storage units of a set of storage units receiving an access request regarding a set of encoded data slices from a user device. The method continues with a storage unit interpreting to determine whether the user device is authorized to access the set of encoded data slices. When the storage unit determines that the user device is authorized to access the set of encoded data slices as requested in the access request, the method continues with the storage unit sending a message to proceed with responding to the access request to the other storage units. When the storage unit determines that the user device is not authorized to access the set of encoded data slices as requested in the access request, the method continues with the storage unit sending a message to disregard the access request to the other storage units. | 11-27-2014 |
20140351674 | UTILIZING CACHED ENCODED DATA SLICES IN A DISPERSED STORAGE NETWORK - A method begins with a processing module of a dispersed storage network (DSN) executing a write operation to write a plurality of sets of encoded data slices to DSN memory, where the write operation includes temporarily storing encoded data slices in cache memory. The processing module receives a read request for a portion of the data object and determines whether a decode threshold number of encoded data slices of a set is stored in the cache memory. When less than the decode threshold number of encoded data slices is stored in the cache memory, the processing module retrieves encoded data slices from the DSN memory to obtain the decode threshold number of encoded data slices, decodes the decode threshold number of encoded data slices to recover a corresponding data segment, and outputs the recovered corresponding data segment. | 11-27-2014 |
20140351659 | STORING DATA IN ACCORDANCE WITH A PERFORMANCE THRESHOLD - In response to a write operation for a set of encoded data slices, a method begins by a dispersed storage (DS) processing module determining whether to use a performance threshold number of encoded data slices of the set of encoded data slices. When the performance threshold number of encoded data slices is to be used, the method continues with the DS processing module determining the performance threshold number of encoded data slices and sending a performance threshold number of initial phase write requests to storage units. When a write threshold number of write responses are received, the method continues with the DS processing module sending a number of next phase write requests to the storage units, where the number of next phase write requests is equal to or greater than the write threshold number and is less than or equal to the performance threshold number. | 11-27-2014 |
20140351633 | STORING RAID DATA AS ENCODED DATA SLICES IN A DISPERSED STORAGE NETWORK - A method begins by a processing module receiving data for storage and interpreting the data to identify the data as redundant array of independent disks (RAID) data. The method continues with the processing module interpreting the RAID data to identify at least one of RAID block data and RAID parity data. When the RAID data includes RAID block data and RAID parity data the method continues with the processing module encoding the RAID block data in accordance with error coding dispersal storage function parameters to produce at least one set of encoded data slices and outputting the at least one set of encoded data slices to a dispersed storage network memory. | 11-27-2014 |
20140351632 | STORING DATA IN MULTIPLE FORMATS INCLUDING A DISPERSED STORAGE FORMAT - 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. | 11-27-2014 |
20140351631 | STORING RAID DATA AS ENCODED DATA SLICES IN A DISPERSED STORAGE NETWORK - A method begins by a processing module receiving data for storage and interpreting the data to identify the data as redundant array of independent disks (RAID) data. The method continues with the processing module interpreting the RAID data to identify at least one of RAID block data and RAID parity data. When the RAID data includes RAID block data and RAID parity data the method continues with the processing module encoding the RAID block data in accordance with error coding dispersal storage function parameters to produce at least one set of encoded data slices and outputting the at least one set of encoded data slices to a dispersed storage network memory. | 11-27-2014 |
20140351625 | CACHING REBUILT ENCODED DATA SLICES IN A DISPERSED STORAGE NETWORK - A method begins with a processing module of a computing device of a dispersed storage network (DSN) executing a rebuild function to produce a rebuilt encoded data slice for storage in a targeted storage unit of the DSN. When the targeted storage unit is currently unavailable, the method continues with the processing module storing the rebuilt encoded data slice in local memory of the computing device, recording storage of the rebuilt encoded data slice in the local memory, and recording that the targeted storage unit is currently unavailable. When the targeted storage unit is currently available, the method continues with the processing module sending the rebuilt encoded data slice to the targeted storage unit and recording storage of the rebuilt encoded data slice by the targeted storage unit. | 11-27-2014 |
20140351624 | DATA MODIFICATION IN A DISPERSED STORAGE NETWORK - A method for modifying data stored in a dispersed storage network (DSN). In various embodiments, a data object is received for storage in DSN memory. A dispersed storage processing unit determines a number of data segments for the data object and divides the data object into a plurality of data blocks. The data blocks are allocated to the data segments in a column-row orientation (for example, columns may be populated with successive data blocks of the data object). The data segments are encoded to produce a plurality of sets of encoded data slices. Additional data received for the data object is divided into additional data blocks that are allocated to data segments to create one or more new columns, which are encoded to produce a plurality of encoded data slice addendums. The encoded data slice addendums are then appended to existing encoded data slices corresponding to the data object. | 11-27-2014 |
20140351579 | HARDWARE AUTHENTICATION IN A DISPERSED STORAGE NETWORK - A method for authenticating a node of a dispersed storage network (DSN). In various embodiments, a dispersed storage (DS) management unit receives a device list originating from a hardware certificate authority (HCA). The HCA also provides a hardware certificate to the node. Upon receiving the hardware certificate from the node, the DS management unit determines if the certificate is valid by comparing it to information contained in the device list (such as a device ID or a serial number associated with the node). If the certificate is valid, the DS management unit sends a challenge message to the node and analyzes the resulting challenge message response to determine if it is valid. If the response is valid, the DS management unit provides a signed certificate to the node for use in authenticating the node to perform dispersed storage operations within the DSN. | 11-27-2014 |
20140351528 | BALANCING STORAGE UNIT UTILIZATION WITHIN A DISPERSED STORAGE NETWORK - A method begins by a processing module determining to move a range of encoded data slices from a first storage unit to a second storage unit of a plurality of storage units, where data objects are dispersed storage error encoded to produce pluralities of sets of encoded data slices, and where the pluralities of sets of encoded data slices are stored in the plurality of storage units. The method continues with the processing module transferring the range of encoded data slices from the first storage unit to the second storage unit. In response to the transferring the range of encoded data slices from the first storage unit to the second storage unit, the method continues with the processing module transferring a corresponding range of second encoded data slices from a third storage unit to a fourth storage unit. | 11-27-2014 |
20140351457 | STORING DATA IN A DISPERSED STORAGE NETWORK - A method begins by a processing module of a dispersed storage network (DSN) sending a set of write commands to storage units of the DSN regarding storage of a set of current revision level encoded data slices and receiving a write acknowledgement in response to a write command. The method continues with the processing module determining whether a write threshold number of write acknowledgements have been received. When the write threshold number of write acknowledgements have been received, the method continues with the processing module issuing a set of commit commands to the storage units. The method continues with the processing module determining whether to issue a set of finalize commands, where a finalize command instructs a storage unit regarding storage of a corresponding current revision level encoded data slice and storage of a previous revision level encoded data. | 11-27-2014 |
20140344646 | DISTRIBUTED REBUILDING OF DATA IN A DISPERSED STORAGE NETWORK - A technique of rebuilding data slices in a dispersed storage network when detecting a plurality of data slices that require rebuilding. A plurality of rebuilding resources capable for use to rebuild the plurality of data slices are determined and based on an attribute associated with the determination, a rebuilding task is apportioned and the apportioned tasks are assigned to the plurality of rebuilding resources to rebuild the data slices. The apportionment of the tasks permit more than one rebuilding resource and associated distributed storage unit to perform the rebuild of the data slices. | 11-20-2014 |
20140344645 | DISTRIBUTED STORAGE WITH AUXILIARY DATA INTERSPERSAL AND METHOD FOR USE THEREWITH - A data segment is encrypted to produce an encrypted data segment. The encrypted data segment is dispersed storage error encoded to produce a set of encoded data slices. Auxiliary data is dispersed storage error encoded to produce a set of encoded auxiliary data slices. A sequence of output slices is generated to obscure the set of encoded data slices by interspersing the set of encoded auxiliary data slices within the set of encoded data slices. | 11-20-2014 |
20140344617 | SELECTIVE ACTIVATION OF MEMORY TO RETRIEVE DATA IN A DISPERSED STORAGE NETWORK - A technique of selectively activating inactive distributed storage units of a dispersed storage network to retrieve a threshold number of data slices that are required to recover the original data, instead of utilizing all of the distributed storage units. | 11-20-2014 |
20140344394 | Revision Deletion Markers - A method begins by receiving a delete data object request within a dispersed storage network (DSN). The method continues by determining a set of dispersed storage (DS) units within the DSN that store a set of encoded data slices associated with the data object. The method continues by determining a revision number of the set of encoded data slices. The method continues by sending a delete marker and write command to the set of DS units for deletion of the data object. The method continues by receiving at least one receive write acknowledgement from at least some DS units of the set of DS units to produce the deletion. The method continues when a write threshold is met, by sending a commit command to the DS unit storage set and receiving commit acknowledgments from the DS units and sending a finalize command to the set of DS units to delete the data object. | 11-20-2014 |
20140344318 | Digest Listing Decomposition - To identify slice errors, a processing module of a computing device in a dispersed storage network (DSN) sends first list digest requests to at least first and second dispersed storage (DS) units. The requests indicates a first range of slice names to include in a first list digest. The processing module receives digest responses from the DS units, and compares the digest responses to determine whether they identify the same slices. If they do not identify the same slices, the processing module sends second list digest requests indicating a sub-range of the first range of slice names to include in second list digests. The sub-range continues to be narrowed until the processing module identifies at least one sub-range of slice names where a slice error exists. | 11-20-2014 |
20140344284 | COMMAND LINE INTERPRETER FOR ACCESSING A DATA OBJECT STORED IN A DISTRIBUTED STORAGE NETWORK - A user device includes a DSN interface operably coupled with a DSN memory and a DS processing module for storing and retrieving a data object from the DSN memory, wherein the data object is partitioned into a plurality of data segments and wherein each of the plurality of data segments is stored in the DSN memory as a plurality of encoded data slices that are generated based on an error encoding dispersal function. The user device also includes a command line interpreter operable to interpret a file command as a request to display the data object by an application program, determine the data object is stored in the DSN memory and request the DSN processing module to retrieve the data object from the DSN memory and provide the data object to the application program. | 11-20-2014 |
20140344228 | Multiple Revision Mailbox - A method begins by determining slice names of encoded data slices stored within a dispersed storage network (DSN). The method continues by determining dispersed storage (DS) units within the DSN storing a set of the encoded data slices associated with the slice names. The method continues by determining one or more revision numbers associated with the slice names. The method continues by determining if same slice names have different associated revision numbers and, when the same slice names have different associated revision numbers, adding the slice names to a revision mailbox for subsequent correction. | 11-20-2014 |
20140344227 | Streaming Content Storage - A computing system includes a plurality of dispersed storage (DS) processing units operable to receive a continuous data stream, simultaneously disperse storage error encode the continuous data stream to produce a plurality of encoded data slices and store the plurality of encoded data slices in a DS memory. | 11-20-2014 |
20140337932 | DISPERSED STORAGE NETWORK WITH ACCESS CONTROL AND METHODS FOR USE THEREWITH - In a dispersed storage network where slices of secure user data are stored on geographically separated storage units ( | 11-13-2014 |
20140337686 | DISPERSED STORAGE HAVING SNAPSHOT CLONES AND METHODS FOR USE THEREWITH - A directory file includes a plurality of entries, wherein an entry of the plurality of entries includes a file or directory name field, and a snapshot list field that includes a snapshot list. A clone snapshot identifier (ID) is determined for a data file. The directory file is updated to produce an updated directory file, wherein the updating includes updating the snapshot list field associated with the data file to include the clone snapshot ID in the snapshot list. | 11-13-2014 |
20140337685 | DISPERSED STORAGE HAVING A PLURALITY OF SNAPSHOT PATHS AND METHODS FOR USE THEREWITH - A directory file includes a plurality of entries, wherein an entry of the plurality of entries includes a file or directory name field, and a snapshot list field that includes a snapshot list in accordance with one of a plurality of snapshot paths of a snapshot tree. A new snapshot identifier (ID) is determined for a data file. The directory file is updated to produce an updated directory file, wherein the updating includes updating the snapshot list field associated with the data file to include the new snapshot ID in the snapshot list in accordance with the one of a plurality of snapshot paths of the snapshot tree. | 11-13-2014 |
20140337684 | CHANGING DISPERSED STORAGE ERROR ENCODING PARAMETERS - A method begins with a processing module of a dispersed storage network (DSN) maintaining, over time, a continuum of time-to-repair information regarding a plurality of storage units of the DSN and maintaining, over time, a continuum of time-to-failure information regarding the plurality of storage units. When the continuum of time-to-repair information and the continuum of time-to-failure information are each below undesired levels, the method continues with the processing module changing dispersed storage error encoding parameters of a logical storage vault of the DSN by lowering a decode threshold number with respect to a current decode threshold number and increasing a pillar width number with respect to a current pillar width number. The method continues with the processing module re-encoding stored encoded data of the logical storage vault based on the increased pillar width number and the decreased decode threshold number. | 11-13-2014 |
20140337666 | DISPERSED STORAGE NETWORK WITH SLICE REBUILDING AND METHODS FOR USE THEREWITH - In a dispersed storage network where slices of secure user data are stored on geographically separated storage units ( | 11-13-2014 |
20140337661 | COOPERATIVE STORAGE SYSTEM UTILIZING DISPERSED STORAGE - A user device sends a data file, which has already been divided into multiple different data portions, to be stored in a dispersed storage network (DSN). The DSN includes multiple dispersed storage (DS) processing units, which in turn are each used to manage multiple DSN memories. Portion affiliation information, which can be stored in a data structure maintained by a DS managing unit, is used to determine particular DS processing units will handle storage and retrieval of particular data portions. The data portions are encoded by the assigned DS processing unit into at least a write threshold number of encoded slices, and stored in the DSN memories in accordance with the portion affiliation information. | 11-13-2014 |
20140337622 | DISPERSED STORAGE NETWORK WITH ENCRYPTED PORTION WITHHOLDING AND METHODS FOR USE THEREWITH - An integrity record is appended to data slices prior to being sent to multiple slice storage units. Each of the data slices includes a different encoded version of the same data segment. An integrity indicator of each data slice is computed, and the integrity record is generated based on each of the individual integrity indicators, and may be, for example, list or a hash of the combined integrity indicators. When retrieving data slices from storage, the integrity record can be stripped off, a new integrity indicator of the data slice calculated, and a new integrity record created. The new integrity record can be compared to the original integrity record, and used to verify the integrity of the data slices. | 11-13-2014 |
20140337394 | DISPERSED STORAGE WITH PARTIAL DATA OBJECT STORAGE AND METHODS FOR USE THEREWITH - A first section of the data object is received that contains less than a full amount of the data object. A processing module of a distributed storage (DS) processing unit determines that communication of the data object has been interrupted and whether to store the first section of the data object. The first section of the data object is stored in a DS network when determined to store the first section of the data object. | 11-13-2014 |
20140331330 | APPLYING DIGITAL RIGHTS MANAGEMENT TO MULTI-MEDIA FILE PLAYBACK - A method begins with a processing module of a centralized digital video storage (DVS) system that supports a plurality of subscriber units, receiving a request for playback of a stored multi-media file from a subscriber unit. The method continues with the processing module determining whether the stored multi-media file is a subscription based file or a publically available file. When the stored multi-media file is the subscription based file, the method continues with the processing module accessing digital rights management data regarding subscription based multi-media files to determine the subscriber unit's digital rights to the stored multi-media file. When the subscriber unit's digital rights include playback of the multi-media file, the method continues with the processing module sending a unique copy of the stored multi-media file to the subscriber unit in accordance with a unique slice retrieval pattern of the subscriber unit. | 11-06-2014 |
20140331104 | EFFICIENT STORAGE OF ENCRYPTED DATA IN A DISPERSED STORAGE NETWORK - A method begins with a processing module obtaining data to store and determining whether substantially similar data to the data is stored. When the substantially similar data is not stored, the method continues with the processing module generating a first encryption key based on the data, encoding the first encryption key into encoded data slices in accordance with an error coding dispersal storage function, and storing the encoded data slices in a dispersed storage network (DSN) memory. The method continues with the processing module encrypting the data using an encryption key of the substantially similar data in accordance with an encryption function to produce encrypted data, compressing the encrypted data in accordance with a compression function to produce compressed data, storing the compressed data when the substantially similar data is stored. | 11-06-2014 |
20140331103 | ENCODING MULTI-MEDIA CONTENT FOR A CENTRALIZED DIGITAL VIDEO STORAGE SYSTEM - A method begins with a processing module of a centralized digital video storage (DVS) system regarding recording of multi-media content that is to be broadcast at a particular broadcast time, determining a number of subscriber devices that have selected to record the multi-media content. At the particular broadcast time, the method continues with the processing module receiving the multi-media content as it is being broadcast. When the number of subscriber devices is less than a first value, the method continues with the processing module encoding the multi-media content using first level encoding parameters to produce sets of first level encoded data slices for storage. When the number of subscriber devices is equal to or greater than the first value, the method continues with the processing module encoding the multi-media content using second level encoding parameters to produce sets of second level encoded data slices for storage. | 11-06-2014 |
20140331100 | SELECTING STORAGE UNITS TO REBUILD AN ENCODED DATA SLICE - A method begins with a processing module of a dispersed storage network (DSN) identifying an encoded data slice of a set of encoded data slices that requires rebuilding and identifying storage units of the DSN that store the set of encoded data slices. The method continues with the processing module determining a rebuilding metric regarding the identified encoded data slice and selecting a sub-set of the storage units for retrieving a decode threshold number of encoded data slices of the set of encoded data slices based on the rebuilding metric. When the decode threshold number of encoded data slices have been retrieved, the method continues with the processing module decoding the decode threshold number of encoded data slices to produce a reconstructed data segment and generating a rebuilt encoded data slice from the reconstructed data segment. | 11-06-2014 |
20140331087 | IDENTIFYING AND CORRECTING AN UNDESIRED CONDITION OF A DISPERSED STORAGE NETWORK ACCESS REQUEST - A method begins by a processing module sending a transaction verification request to the set of dispersed storage (DS) units, wherein the transaction verification request includes a transaction number that corresponds to a particular dispersed storage network (DSN) access request. The method continues with the processing module receiving transaction verification responses from at least some of the set of DS units to produce received transaction verification responses. The method continues with the processing module identifying an undesired condition with processing the DSN access request and initiating a corrective remedy for the undesired condition when a DS unit of the set of DS units does not provide a desired transaction verification response. | 11-06-2014 |
20140331086 | PRIORITIZING REBUILDING OF STORED DATA IN A DISPERSED STORAGE NETWORK - A method begins by a dispersed storage (DS) processing module of a dispersed storage network (DSN), when in a rebuilding mode, determining a level of rebuilding urgency, where the level of rebuilding urgency is based on an inversely proportional function of a level of error encoded redundancy for error encoded data giving rise to the rebuilding mode. When the level of rebuilding urgency is at or above a critical level, the method continues with the DS processing module placing a set of storage units of the DSN in a critical rebuilding mode, where, when in the critical rebuilding mode, the set of storage units prioritize rebuilding of the error encoded data giving rise to the rebuilding mode over other error encoded data operations. | 11-06-2014 |
20140331085 | METHOD AND APPARATUS FOR DISTRIBUTED STORAGE INTEGRITY PROCESSING - A distributed storage integrity system in a dispersed storage network includes a scanning agent and a control unit. The scanning agent identifies an encoded data slice that requires rebuilding, wherein the encoded data slice is one of a plurality of encoded data slices generated from a data segment using an error encoding dispersal function. The control unit retrieves at least a number T of encoded data slices needed to reconstruct the data segment based on the error encoding dispersal function. The control unit is operable to reconstruct the data segment from at least the number T of the encoded data slices and generate a rebuilt encoded data slice from the reconstructed data segment. The scanning agent is located in a storage unit and the control unit is located in the storage unit or in a storage integrity processing unit, a dispersed storage processing unit or a dispersed storage managing unit. | 11-06-2014 |
20140331065 | SECURING A DATA SEGMENT FOR STORAGE - A method begins by a dispersed storage (DS) processing module encrypting a data segment utilizing an encryption key to produce an encrypted data segment and performing a deterministic function on the encrypted data to produce a transformed representation of the encrypted data. The method continues with the DS processing module masking the encryption key utilizing the transformed representation of the encrypted data to produce a masked key, partitioning the masked key into a plurality masked key partitions, partitioning the encrypted data segment into a plurality of encrypted data segment partitions, and combining the plurality of masked key partitions with the plurality of encrypted data segment partitions to produce a plurality of combined partitions. For a combined partition of the plurality of combined partitions, the method continues with the DS processing module encoding the combined partition using a dispersed storage error coding function to produce a set of encoded data slices. | 11-06-2014 |
20140330923 | MULTI-WRITER REVISION SYNCHRONIZATION IN A DISPERSED STORAGE NETWORK - A method begins by a processing module of a computing device receiving a most current revision value for a data element, where a revision value for the data element is generated based on a current time of a storing device. The method continues with the processing module generating a new revision value for a currently revised version of the data element based on a current time of the computing device and comparing the current time of the new revision value with the current time of the most current revision value. When the current time of the new revision value precedes the current time of the most current revision value, the method continues with the processing module adjusting the new revision value to produce an adjusted revision value and facilitating storage of the currently revised version of the data element having the adjusted revision value. | 11-06-2014 |
20140330921 | STORING RELATED DATA IN A DISPERSED STORAGE NETWORK - A method begins by each of a group of write requesting modules of a dispersed storage network (DSN) generating one or more sets of write requests regarding one of a group of portions of related data, sending a group of the one or more sets of write requests to DSN memory, and sending binding information to a binding module. The method continues with the binding module processing remaining phases of the group of the one or more sets of write requests for writing the related data into the DSN memory as a single set of write requests and notifying the write requesting modules of status of the writing the related data into the DSN memory at completion of the processing of the remaining phases such that the related data is made accessible as a single piece of data when the processing of the remaining phases is successful. | 11-06-2014 |
20140328573 | ACCESSING STORED MULTI-MEDIA CONTENT BASED ON A SUBSCRIPTION PRIORITY LEVEL - A method begins with a processing module of a centralized digital video storage (DVS) system storing, for playback, a plurality of sets of encoded data slices in storage units, where multi-media content is encoded to produce the plurality of sets of encoded data slices. The method continues with the processing module monitoring the storage units for a failure mode and monitoring a number of subscriber devices requesting playback of the multi-media content. The method continues with the processing module determining whether a sufficient number of unique combinations of a decode threshold number of encoded data slices per set of slices exists to service playback of the multi-media content. When the sufficient number of the unique combinations do not exist, the method continues with the processing module reassigning unique combinations of the decode threshold number of encoded data slices per set of encoded data slices to some of the subscriber devices. | 11-06-2014 |
20140325309 | UPDATING DATA STORED IN A DISPERSED STORAGE NETWORK - A method begins by a dispersed storage (DS) processing module receiving a modified data object, wherein the modified data object is a modified version of a data object and the data object is divided into a plurality of data segments and stored in the DSN. The method continues with the DS processing module mapping portions of the modified data object to the plurality of data segments that includes creating a middle data segment of a second plurality of data segments based on a corresponding middle data segment of the plurality of data segments when the a portion of the portions corresponds to middle data of the modified data object. The method continues with the DS processing module encoding the middle data segment using a dispersed storage error coding function to produce an encoded data segment and overwriting the corresponding middle data segment with the encoded data segment in the DSN. | 10-30-2014 |
20140325307 | DETECTING A UTILIZATION IMBALANCE BETWEEN DISPERSED STORAGE NETWORK STORAGE UNITS - A method begins by a processing module of a dispersed storage network (DSN) obtaining utilization information regarding a plurality of storage units of the DSN, where first and second sets of storage units support a first logical storage vault. The method continues with the processing module detecting a utilization imbalance between a first storage unit of the first set of storage units and a second storage unit of the second set of storage units based on the utilization information, where the first and second storage units are not a common storage unit. The method continues with the processing module executing a data storage function regarding the first logical storage vault based on the utilization imbalance. | 10-30-2014 |
20140325305 | CACHE FOR FILE-BASED DISPERSED STORAGE - A method obtains at least part of a file from a dispersed storage network (DSN) memory, and stores it in a data object cache. When the file is changed, a determination is made about where to store the changed file portions: in the data object cache or in the DSN. The changed file portions, for example a new copy of the part of the file obtained from the DSN, are encoded utilizing an error coding dispersal storage function, and stored in either the data object cache, or in the DSN memory. | 10-30-2014 |
20140325266 | LIKELIHOOD BASED REBUILDING OF MISSING ENCODED DATA SLICES - A method begins by a processing module of a dispersed storage network (DSN) detecting a likelihood of having a missing encoded data slice based on local physical to DSN address mapping information. When the likelihood of having the missing encoded data slice exists, the method continues with the processing module sending a query regarding the missing encoded data slice to another storage unit of the DSN and receiving a response to the query from the other storage unit. When the response includes identity of a related encoded data slice of a set of encoded data slices, the method continues with the processing module commencing execution of a rebuilding function to generate a new encoded data slice to replace the missing encoded data slice. | 10-30-2014 |
20140325264 | STORING AN ENCODED DATA SLICE AS A SET OF SUB-SLICES - A method begins by storage units of a dispersed storage network (DSN) receiving a set of encoded data slices for storage. The method continues with a first storage unit determining whether to store a first encoded data slice as a first set of encoded data sub-slices. The method continues with the first storage unit encoding the first encoded data slice in accordance with a first dispersed storage error encoding function to produce the first set of encoded data sub-slices. The method continues by a second storage unit of the storage units determining whether to store a second encoded data slice as a second set of encoded data sub-slices. The method continues with the second storage unit encoding the second encoded data slice in accordance with a second dispersed storage error encoding function to produce the second set of encoded data sub-slices. | 10-30-2014 |
20140325260 | SLICE MIGRATION IN A DISPERSED STORAGE NETWORK - A dispersed storage unit includes a physical memory and a storage unit control module. The physical memory is transferred to a receiving dispersed storage unit from a transferring dispersed storage unit, which used the transferred physical memory to store encoded data slices prior to the at least one physical memory being transferred. The encoded data slices stored on the transferred physical memory have addresses falling within a first address range. The storage control unit is configured to detect installation of the transferred physical memory, and to notify a dispersed storage network that data slices within the first address range are to be received by and retrieved from the receiving dispersed storage unit. | 10-30-2014 |
20140325259 | IDENTIFYING A STORAGE ERROR OF A DATA SLICE - A method begins by a processing module obtaining common storage name information regarding data that is stored in storage units of a distributed storage network (DSN) as a set of data slices. Each data slice of the set of data slices has a unique storage name, where each of the unique storage names for the set of data slices has common naming information regarding the data. The method continues where the processing module interprets the common storage name information to determine whether a difference exists between the common naming information of a data slice of the set of data slices and the common naming information of other data slices of the set of data slices. When the difference exists, the method continues where the processing module indicates a potential storage error of the data slice and implements a storage error process regarding the potential storage error of the data slice. | 10-30-2014 |
20140325224 | DISPERSED DATA STORAGE IN A VPN GROUP OF DEVICES - A method begins when at least a consensus threshold number of devices are active in a virtual private network (VPN) group of devices. The method continues by encoding group specific data based on a consensus threshold number of devices in the VPN group of devices and a number of devices in the VPN group of devices to produce one or more sets of encoded data slices. The method continues by sending the one or more sets of encoded data slices to at least one of: the consensus threshold number of devices or a dispersed storage network (DSN) memory for storage therein. When the at least the consensus threshold number of devices are not active in the VPN group of devices, each of the devices in the VPN group of devices are prohibited from creating the group specific data or accessing previously created group specific data. | 10-30-2014 |
20140325208 | OBTAINING A SIGNED CERTIFICATE FOR A DISPERSED STORAGE NETWORK - A method begins by a dispersed storage (DS) processing module generating a certificate signing request (CSR) that includes a certificate and a certificate extension, wherein the certificate includes information regarding a requesting device and wherein the certificate extension includes information regarding an accessible dispersed storage network (DSN) address range for the requesting device. The method continues with the DS processing module outputting the CSR to a certificate authority of a DSN and receiving a signed certificate from the certificate authority, wherein the signed certificate includes a certification signature of the certificate authority authenticating the certificate and the certificate extension. The method continues with the DS processing module storing the signed certificate for use when generating a DSN access request, wherein the DSN access request is requesting access to dispersed storage error encoded data in the DSN at an address within the accessible DSN address range. | 10-30-2014 |
20140324931 | DISPERSED STORAGE USING LOCALIZED PEER-TO-PEER CAPABLE WIRELESS DEVICES IN A PEER-TO-PEER OR FEMTO CELL SUPPORTED CARRIER SERVED FASHION - A method begins when at least a consensus threshold number of devices are active in a virtual private network (VPN) group of devices. The method continues by obtaining directory information regarding group specific data and retrieving one or more sets of encoded data slices from the at least the consensus threshold number of devices or a dispersed storage network (DSN) memory in accordance with the directory information. The method continues by decoding the one or more sets of encoded data slices based on the at least the consensus threshold number of devices and a number of devices in the VPN group of devices to produce the group specific data. When the at least a consensus threshold number of devices are not active in the VPN group of devices, preventing at least one of the obtaining directory information or the retrieving one or more sets of encoded data slices. | 10-30-2014 |
20140317694 | DIGITAL CONTENT RETRIEVAL UTILIZING DISPERSED STORAGE - A method begins by a DS processing module, when operable within a computing device, causing the computing device to receive a request for retrieval of a set of encoded content data slices from a dispersed storage network (DSN) memory, wherein the request includes at least the identity of the set of encoded content data slices. The method continues by determining user access rights based on a content timestamp. The method continues by determining the current timestamp and whether user access rights compare favorably to the content timestamp and current timestamp or can be modified to be favorable. The method continues by retrieving encoded data slices from the DSN memory and decoding the encoded data slices utilizing an error coding dispersed storage function and in accordance with the read operational parameters producing the content and sending the content and/or the encoded data slices to the requester. | 10-23-2014 |
20140317403 | DISPERSED STORAGE NETWORK WITH SLICE REFRESH AND METHODS FOR USE THEREWITH - An integrity record is appended to data slices prior to being sent to multiple slice storage units. Each of the data slices includes a different encoded version of the same data segment. An integrity indicator of each data slice is computed, and the integrity record is generated based on each of the individual integrity indicators, and may be, for example, list or a hash of the combined integrity indicators. When retrieving data slices from storage, the integrity record can be stripped off, a new integrity indicator of the data slice calculated, and a new integrity record created. The new integrity record can be compared to the original integrity record, and used to verify the integrity of the data slices. | 10-23-2014 |
20140317349 | Distributed Storage Time Synchronization Based On Retrieval Delay - A method begins with a processing module receiving a data retrieval request and obtaining a real-time indicator corresponding to when the data retrieval request was received. The method continues with the processing module determining a time-based data access policy based on the data retrieval request and the real-time indicator and accessing a plurality of dispersed storage (DS) units in accordance with the time-based data access policy to retrieve encoded data slices. The method continues with the processing module decoding the threshold number of encoded data slices in accordance with an error coding dispersal storage function when a threshold number of the encoded data slices have been retrieved. | 10-23-2014 |
20140317226 | Distributed Storage Time Synchronization Based On Storage Delay - A method begins with a processing module receiving a data retrieval request and obtaining a real-time indicator corresponding to when the data retrieval request was received. The method continues with the processing module determining a time-based data access policy based on the data retrieval request and the real-time indicator and accessing a plurality of dispersed storage (DS) units in accordance with the time-based data access policy to retrieve encoded data slices. The method continues with the processing module decoding the threshold number of encoded data slices in accordance with an error coding dispersal storage function when a threshold number of the encoded data slices have been retrieved. | 10-23-2014 |
20140317224 | DISTRIBUTED STORAGE NETWORK FOR STORING A DATA OBJECT BASED ON STORAGE REQUIREMENTS - A distributed storage network (DSN) includes a user device and a plurality of DSN memories, wherein each of the DSN memories includes a plurality of storage units. The user device includes at least one network interface to the plurality of DSN memories and at least one processing module that is operable to determine one of the plurality of DSN memories for storing a data object based on a comparison of one or more storage requirements of the data object and one or more DSN attributes of the plurality of DSN memories. | 10-23-2014 |
20140317053 | SELECTING STORAGE FACILITIES IN A PLURALITY OF DISPERSED STORAGE NETWORKS - A method begins by receiving a data storage request and determining target operational parameters of a set of dispersed storage (DS) units of a dispersed storage network (DSN). The method continues by determining candidate DS units. The method continues by determining a memory optimization factor for each of the DS units on a unit-by-unit basis and optimizing the DS unit memory utilization of one or more selected DS units based on the memory optimization factor. The method continues by finalizing the operational parameters. The method continues by encoding data slices of the data object and sending the encoded data slices with a store command to selected ones of the DS units. The method continues by updating a file directory to include an identity of the selected ones of the DS units and an identity of the set of encoded data slices stored therein. | 10-23-2014 |
20140310775 | DISPERSED STORAGE NETWORK WITH CUSTOMIZED SECURITY AND METHODS FOR USE THEREWITH - A method begins with a processing module selecting one of a plurality of dispersed storage (DS) processing modules for facilitating access to a dispersed storage network (DSN) memory. The method continues with the processing module sending a DSN memory access request to the one of the plurality of DS processing modules. The method continues with the processing module selecting another one of the plurality of DS processing modules when no response is received within a given time frame or when the response to the access request does not include an access indication. The method continues with the processing module sending the DSN memory access request to the another one of the plurality of DS processing modules. | 10-16-2014 |
20140310572 | EFFICIENT STORAGE OF ENCRYPTED DATA IN A DISPERSED STORAGE NETWORK - A method begins with a processing module obtaining data to store and determining whether substantially similar data to the data is stored. When the substantially similar data is not stored, the method continues with the processing module generating a first encryption key based on the data, encoding the first encryption key into encoded data slices in accordance with an error coding dispersal storage function, and storing the encoded data slices in a dispersed storage network (DSN) memory. The method continues with the processing module encrypting the data using an encryption key of the substantially similar data in accordance with an encryption function to produce encrypted data, compressing the encrypted data in accordance with a compression function to produce compressed data, storing the compressed data when the substantially similar data is stored. | 10-16-2014 |
20140310492 | DISPERSED STORAGE NETWORK WITH METADATA GENERATION AND METHODS FOR USE THEREWITH - A method begins with a processing module selecting one of a plurality of dispersed storage (DS) processing modules for facilitating access to a dispersed storage network (DSN) memory. The method continues with the processing module sending a DSN memory access request to the one of the plurality of DS processing modules. The method continues with the processing module selecting another one of the plurality of DS processing modules when no response is received within a given time frame or when the response to the access request does not include an access indication. The method continues with the processing module sending the DSN memory access request to the another one of the plurality of DS processing modules. | 10-16-2014 |
20140310491 | DISPERSED STORAGE NETWORK WITH DATA SEGMENT BACKUP AND METHODS FOR USE THEREWITH - A method begins with a processing module selecting one of a plurality of dispersed storage (DS) processing modules for facilitating access to a dispersed storage network (DSN) memory. The method continues with the processing module sending a DSN memory access request to the one of the plurality of DS processing modules. The method continues with the processing module selecting another one of the plurality of DS processing modules when no response is received within a given time frame or when the response to the access request does not include an access indication. The method continues with the processing module sending the DSN memory access request to the another one of the plurality of DS processing modules. | 10-16-2014 |
20140310310 | DISPERSED STORAGE NETWORK WITH PARAMETER SEARCH AND METHODS FOR USE THEREWITH - A method begins with a processing module selecting one of a plurality of dispersed storage (DS) processing modules for facilitating access to a dispersed storage network (DSN) memory. The method continues with the processing module sending a DSN memory access request to the one of the plurality of DS processing modules. The method continues with the processing module selecting another one of the plurality of DS processing modules when no response is received within a given time frame or when the response to the access request does not include an access indication. The method continues with the processing module sending the DSN memory access request to the another one of the plurality of DS processing modules. | 10-16-2014 |
20140307870 | Wirelessly Communicating a Data File - A method begins by a dispersed storage (DS) processing module sending a plurality of undecodeable portions of a plurality of data files via a public wireless communication network to one or more targeted devices of a private wireless communication network. The method continues with the DS processing module sending data content indicators regarding the plurality of data files and in response to a selection of a data file of the plurality of data files based on a corresponding one of the data content indicators, sending, via the private wireless communication network, one or more encoded data slices of each of one or more sets of encoded data slices of the data file such that, for each of the one or more sets of encoded data slices, the one or more targeted devices obtains at least a decode threshold number of encoded data slices to decode the data file. | 10-16-2014 |
20140304527 | EFFICIENT MEMORY UTILIZATION IN A DISPERSED STORAGE SYSTEM - A method for improving memory utilization in a dispersed storage network (DSN). After a data object is received for storage in the DSN, it is determined whether a substantially identical data portion of the data object has previously been encrypted and stored. The determination may be made, for example, by comparing a portion reference value relating to the data object to portion reference information stored in DSN memory. If not detected, the data object is encrypted using an encryption pattern sequence and encryption key, at least one of which substantially identical to at least a portion of the data portion. The encrypted data object is then compressed using a pattern based data compression function, and the compressed data object is stored. The portion reference value is also stored in DSN memory. | 10-09-2014 |
20140304526 | DATA DEDUPLICATION IN A DISPERSED STORAGE SYSTEM - An efficient data deduplication method for use in a dispersed storage network (DSN). After a data object is received for storage in the DSN, it is determined whether a substantially identical data object has previously been encrypted and stored. The determination may be made, for example, by comparing an encryption key reference value relating to the data object to key reference information stored in DSN memory. If not detected, the data object is encrypted using an encryption key based on the data object. The encrypted data object is then compressed and stored. The encryption key and a key reference value are also stored as encoded key slices in DSN memory. If the data object was previously stored, it is encrypted using a retrieved encryption key that is substantially identical to the data object. The data object may then be compressed for storage using a pattern based data compression function. | 10-09-2014 |
20140304486 | MIGRATING ENCODED DATA SLICES FROM A RE-PROVISIONED MEMORY DEVICE OF A DISPERSED STORAGE NETWORK MEMORY - A method begins by maintaining a memory assignment table for memory devices within the storage unit. The memory assignment table includes a field for memory identifier, a field for memory allocation, and a field for memory usability status. The method continues by utilizing the memory assignment table to perform one or more functions. One function includes selecting a first memory device to store incoming data. Another function includes determining when to decommission a second memory device based on memory usability status of the second memory device. A further function includes determining when to migrate data stored on a third memory device to another memory device. A still further function includes changing a storage protocol of data stored on a fourth memory device. | 10-09-2014 |
20140304360 | DISTRIBUTING MULTI-MEDIA CONTENT TO A PLURALITY OF POTENTIAL ACCESSING DEVICES - A method begins by receiving a first sub-set of encoded data slices of a set of encoded data slices. The first sub-set of encoded data slices includes less than a decode threshold number of encoded data slices. The method continues by sending accessing information regarding access to the multi-media content subsequent to receiving the first sub-set of encoded data slices. The method continues by receiving, as a favorable response to the accessing information, at least one of the encoded data slices of the second sub-set of encoded data slices such that at least the decode threshold number of encoded data slices have been received from the set of encoded data slices. The method continues by decoding the at least the decode threshold number of encoded data slices to recover the data segment. | 10-09-2014 |
20140302934 | INTERACTIVE GAMING UTILIZING A DISPERSED STORAGE NETWORK - Game data is received at a dispersed storage processing unit, the game data associated with at least one of a plurality of user devices. The game data is stored in a cache memory associated with the dispersed storage processing unit. Dispersed storage metadata associated with the cached game data is generated. A data block is generated based on the cached game data and further based on the dispersed storage metadata. The data block is stored in a dispersed storage network. | 10-09-2014 |
20140301410 | LIST RANGE OPERATION DISPERSED STORAGE NETWORK FRAME - A method begins by generating list range requests. A list range request includes a payload section and a protocol header section. The payload section includes a start slice name field regarding a start slice name of a slice name range; an end slice name field regarding an end slice name of the slice name range; and a maximum response count field regarding a maximum slice name response count. The protocol header includes a payload length field that represents a length of the payload section and an operation code field to indicate the list range request operation. The list range request includes a request to provide a list of slices names corresponding to stored encoded data slices associated with slice names within the slice name range. The method continues by sending the range requests to storage units of the DSN. | 10-09-2014 |
20140298141 | UPDATING USER DEVICE CONTENT DATA USING A DISPERSED STORAGE NETWORK - A method for updating content data for user devices begins where a processing module encodes updated content to produce sets of encoded updated content data slices. The method continues with the processing module storing the sets of encoded updated content data slices in storage units and updating an entry in a directory. The method continues with the processing module receiving, from a user device, a read request for the content data and accessing the updated entry. The method continues with the user device receiving a decode threshold number of encoded data slices for each set of encoded updated content data slices and encoded unaltered content data slices. The method continues with the user device decoding each decode threshold number of encoded data slices and the encoded unaltered content data slices to recover the updated content data. | 10-02-2014 |
20140298138 | PRIORITIZED DELETING OF SLICES STORED IN A DISPERSED STORAGE NETWORK - A method begins, as data objects are ingested, by determining, for each of some of the data objects, a priority indicator to produce a listing of priority indicators. The method continues for a data object by determining encoding parameters based on a corresponding priority indicator. The method continues by encoding the data object in accordance with the encoding parameters to produce a plurality of sets of encoded data slices and storing them. The method continues by identifying a first data object for analysis based on a corresponding priority indicator and an analysis priority. The method continues by decoding a plurality of sets of encoded data slices to recover the first data object and analyzing it in accordance with analysis criteria to determine its relevancy. The method continues by issuing a command to delete the plurality of sets of encoded data slices when the relevancy is below a threshold. | 10-02-2014 |
20140298137 | VIRTUAL MEMORY MAPPING IN A DISPERSED STORAGE NETWORK - A method for evolving dispersed storage network (DSN) memory in a DSN begins by a processing module generating tracking information by tracking evolutionary change of storage units of the DSN memory, performance and reliability requirements of the DSN memory, and memory utilization of the DSN memory. The method continues with the processing module, for a given state of evolution of the DSN memory, interpreting the tracking information to produce given state DSN memory data and establishing virtual DSN address boundaries for a set of the storage units for storing data objects in a virtual memory vault of the DSN, where the virtual memory vault is mapped to the set of the storage units, where the data objects are dispersed storage error encoded into pluralities of sets of encoded data slices that are stored in the set of the storage units in accordance with the virtual DSN address boundaries. | 10-02-2014 |
20140298136 | STORING DATA AND DIRECTORY INFORMATION IN A DISTRIBUTED STORAGE NETWORK - A method begins with a processing module issuing a set of write requests regarding storing a set of encoded data slices in dispersed storage network (DSN) memory and confirming that at least a write threshold number of encoded data slices have been temporarily stored in the DSN memory. When confirmed, the method continues with the processing module issuing a second set of write requests regarding storing a set of encoded directory slices in the DSN memory and confirming that at least a second write threshold number of encoded directory slices have been temporarily stored in the DSN memory. When confirmed, the method continues with the processing module issuing write commit requests regarding the at least a write threshold number of encoded data slices and the at least a second write threshold number of encoded directory slices. | 10-02-2014 |
20140298135 | REBUILDING DATA STORED IN A DISPERSED STORAGE NETWORK - A method begins where a processing module queues, in a rebuild queue, identifiers of encoded data slices for rebuilding, where an encoded data slice is of a set of encoded data slices. The method continues with the processing module accessing the rebuild queue to retrieve a valid rebuild request and querying a storage unit of the set of storage units regarding a most current revision value of another encoded data slice of a most current dispersed storage error encoded revision level of a data segment. When a revision value of the encoded data slice compares favorably with the most current revision level of the other encoded data slice, the method continues with the processing module retrieving a decode threshold number of encoded data slices, reconstructing the data segment from the decode threshold number of encoded data slices, and generating a rebuilt encoded data slice from the reconstructed data segment. | 10-02-2014 |
20140298134 | ENCODING DATA IN A DISPERSED STORAGE NETWORK - A method begins where a processing module segments data into data segments. On a data segment by data segment basis, the method continues with the processing module performing a decode threshold level of dispersed storage error encoding on a data segment to produce a set of decode threshold level encoded data slices and caching the set of decode threshold level encoded data slices. On a set by set basis, the method continues with the processing module performing a redundancy level of dispersed storage error encoding on the set of decode threshold level encoded data slices to produce a set of redundancy error coded data slices. The method continues with the processing module outputting at least one of at least some of a plurality of sets of decode threshold level encoded data slices and at least a corresponding some of a plurality of sets of redundancy error coded data slices. | 10-02-2014 |
20140298085 | DETECTING DATA REQUIRING REBUILDING IN A DISPERSED STORAGE NETWORK - A method begins with a processing module within a dispersed storage network (DSN) determining to perform a rebuild scanning function for a virtual memory vault, where the virtual memory vault has a DSN address range that is divided into multiple DSN address sub-ranges. The method continues with a first rebuild scanning agent module initiating a rebuilding scanning function for a first group of DSN address sub-ranges and processing first rebuild responses to produce a first list of encoded data slices for rebuilding. The method continues with a second rebuild scanning agent module initiating the rebuilding scanning function for a second group of DSN address sub-ranges and processing second rebuild responses to produce a second list of encoded data slices for rebuilding. The method continues with the processing module queuing the first and second lists of encoded data slices for rebuilding. | 10-02-2014 |
20140298061 | POWER CONTROL IN A DISPERSED STORAGE NETWORK - A method begins by a dispersed storage (DS) processing module of a dispersed storage network (DSN) receiving a plurality of data access requests regarding a plurality of data objects. As individual data access requests of the plurality of data access requests are received, the method continues with the DS processing module, for each of the individual data access requests identifying a corresponding one of a plurality of logical storage pools of the DSN and determining power based access status of the corresponding one of the plurality of logical storage pools. When the power based access status is power saving mode, the method continues with the DS processing module queuing the individual data access request. When the power based access status is not in the power saving mode, the method continues with the DS processing module executing the individual data access request. | 10-02-2014 |
20140298001 | DETECTING A COMPUTING SYSTEM BASIC INPUT/OUTPUT SYSTEM ISSUE - A method begins where a processing module accesses at least some of a set of basic input/output system (BIOS) memories to retrieve a decode threshold number of encoded BIOS slices, where a BIOS program is dispersed storage error encoded to produce the set of encoded BIOS slices. The method continues with the processing module reconstructing the BIOS program from the decode threshold number of encoded BIOS slices. The method continues with the processing module detecting a BIOS issue based on one or more of an operational issue with one or more BIOS memories of the set of BIOS memories, a rebuild issue with one or more encoded BIOS slices of the one or more sets of encoded BIOS slices, and a modification to the BIOS program. The method continues with the processing module determining a BIOS change regarding the BIOS issue and implementing the BIOS change. | 10-02-2014 |
20140297951 | ALLOCATING STORAGE UNITS IN A DISPERSED STORAGE NETWORK - A method begins by a processing module detecting a new storage unit within a dispersed storage network DSN. The method continues with the processing module determining to affiliate the new storage unit with a virtual memory vault, where the virtual memory vault is mapped to a set of storage units of the DSN, where data objects are dispersed storage error encoded into pluralities of sets of encoded data slices that are stored in the set of storage units. The method continues with the processing module determining virtual DSN addresses of the virtual memory vault to allocate the new storage unit. The method continues with the processing module updating vault information regarding the virtual memory vault to include the allocation of the virtual DSN addresses to the new storage unit. | 10-02-2014 |
20140297776 | EFFICIENT STORAGE OF DATA IN A DISPERSED STORAGE NETWORK - A method begins by a dispersed storage (DS) processing module receiving data for storage and generating a dispersed storage network (DSN) source name for the data. The method continues with the DS processing module determining whether substantially identical data to the data has been previously stored in memory of the DSN. When the substantially identical data has been previously stored in the memory of the DSN, the method continues with the DS processing module generating an object linking file that links the data to the substantially identical data, dispersed storage error encoding the object linking file to produce a set of encoded link file slices, and outputting the set of encoded link file slices for storage in the memory of the DSN. | 10-02-2014 |
20140297654 | RECORD ADDRESSING INFORMATION RETRIEVAL BASED ON USER DATA DESCRIPTORS - Record addressing information retrieval is achieved using a plurality of user data descriptors. When a threshold number of user data descriptors from a set of user data descriptors are received, the threshold number of user data descriptors can be converted into a computed record index that is compared to a list of record indexes associated with a plurality of records. When the computed record index compares favorably to a record index in the list of record indexes, the record addressing information for a particular record is retrieved based on the record index. | 10-02-2014 |
20140289555 | AUTONOMOUS DISPERSED STORAGE SYSTEM RETRIEVAL METHOD - A method for execution by a storage unit in a directory-less distributed storage network (DSN) begins by receiving a read request regarding a data segment of data. The method continues by determining, based on the read request, whether an encoded data slice of a set of encoded data slices is locally stored, wherein the data segment was dispersed storage error encoded to produce the set of encoded data slices. When the encoded data slices are locally stored, the method continues by generating a read response. The method continues by determining whether to forward the read request to another storage unit of the directory-less DSN. When the read request is to be forwarded, the method continues by identifying one or more storage units to which the read request is to be forwarded and the read request is then forwarded to the one or more identified storage units. | 09-25-2014 |
20140282764 | MEDIA DISTRIBUTION TO A PLURALITY OF DEVICES UTILIZING BUFFERED DISPERSED STORAGE - A method begins by a processing module receiving a plurality of playback requests for a stored program, wherein the stored program is stored in a dispersed storage network (DSN) memory as sets of encoded data slices. In response to the playback requests, the method continues with the processing module entering a loop that begins with retrieving a group of sets of encoded data slices, generating copies therefrom, and storing the copies. The loop continues with the processing module sending a representation of the copies to a requesting device. The method continues with the processing module exiting the loop when the last group of the request has been retrieved and repeating the loop when it has not. | 09-18-2014 |
20140282763 | DISTRIBUTION OF UNIQUE COPIES OF BROADCAST DATA UTILIZING FAULT-TOLERANT RETRIEVAL FROM DISPERSED STORAGE - A broadcast of data is stored as a plurality of sets of encoded data slices stored using an error coding dispersal storage function. In response to receiving a playback request, a centralized digital video recorder (DVR) identifies a first unique combination of encoded data slices, and determines whether that combination of data slices is available for retrieval. If the data slices are available, they are retrieved. If the data slices are not available, another unique combination of encoded data slices of the plurality of sets of encoded data slices is identified and retrieved, instead. Both combinations of data slices can be used to recreate a unique copy of broadcast data. | 09-18-2014 |
20140281817 | DISPERSED STORAGE UNIT SOLICITATION METHOD AND APPARATUS - A method begins by one or more computing devices obtaining data for storage in a storage as service network environment. The method continues by determining storage preferences regarding the data. The method continues by determining a set of storage units based on the storage preferences and sending a solicitation request to the set of storage units. When at least a minimum number of favorable solicitation responses have been received within a time period, the method continues by determining a dispersed storage error encoding function based on the favorable solicitation responses, the storage preferences, and available encoding schemes. The method continues by encoding the data based on the selected dispersed storage error encoding function to produce a plurality of sets of encoded data slices. The method continues by outputting the sets of encoded data slices to at least some of the storage units providing the favorable solicitation responses. | 09-18-2014 |
20140281815 | Dispersed storage network file system directory - A dispersed storage device manages a file system directory of a dispersed storage network by receiving a data object to be stored and a user file name of the data object, calculating a data compression function of the data object, creating a file identifier based on a result of the data compression function, creating a source name for the data object using the file identifier and linking the user file name to the source name in the file system directory. | 09-18-2014 |
20140281812 | Method and apparatus for nested dispersed storage - A method begins by a DS processing module generating a plurality of encoded slices from a data segment using an error encoding function. The method continues with the DS processing module identifying a plurality of DS storage units for storing the plurality of encoded slices. The method continues with the DS processing module selecting an encoded slice of the plurality of encoded slices for sub-slicing using a sub-slicing encoding function to produce a selected encoded slice. The method continues with the DS processing module outputting the plurality of encoded slices to the plurality of DS storage units. The method continues with the DS processing module outputting a command to a DS storage unit of the plurality of DS storage units corresponding to the selected encoded slice, wherein the command includes an instruction to sub-slice the selected encoded slice. | 09-18-2014 |
20140281804 | DISTRIBUTED STORAGE NETWORK FOR MODIFICATION OF A DATA OBJECT - In a dispersed storage network, data objects are dispersed storage error encoded into pluralities of sets of encoded data slices that are each stored in corresponding sets of storage units. To recover a data object, a read threshold number of encoded data slices from each set of encoded data slices of the plurality of sets of encoded data slices are required. Upon determining that an update is available for the storage units, a dispersed storage managing unit determines an updating sequence pattern that ensures that while one or more storage units are taken off line for the update, a sufficient number of storage units remain on line such that at least the read threshold number of encoded data slices are available for each set of encoded data slices. | 09-18-2014 |
20140281550 | Distributed Storage Network and Method for Storing and Retrieving Encryption Keys - A method begins by a distributed storage (DS) managing unit receiving an encryption key to store. The method continues by determining an encryption method and encrypting the encryption key with the determined encryption method to produce an encrypted key. The method continues by encoding and storing the encrypted key in accordance with a dispersed storage error coding function to produce a set of encoded encrypted key slices, wherein a decode threshold number of the encoded encrypted key slices of the set of encoded encrypted key slices are required to reconstruct the encrypted key. Retrieval of the stored encryption key includes retrieving and decoding at least a decode threshold number of the encoded encrypted key slices of a set of encoded encrypted key slices from storage units of the DSN. The method may include raising or lowering the decode threshold or modifying the retrieval order to increase/decrease security. | 09-18-2014 |
20140281225 | METHOD AND APPARATUS FOR DISPERSED STORAGE DATA TRANSFER - The method begins with a processing module determining whether to reconstruct data corresponding to a plurality of data slices when the plurality of data slices is to be transferred from a first type of memory device to a second type of memory device. The method continues with the processing module retrieving the plurality of data slices from a first set of memory devices that are of the first type of memory, reconstructing at least a portion of the data from the plurality of data slice in accordance with a first error coding dispersal function to produce reconstructed data, encoding the reconstructed data in accordance with a second error coding dispersal function to produce a second plurality of data slices, and storing the second plurality of data slices in a second set of memory devices that are of the second type of memory when the data is to be reconstructed. | 09-18-2014 |
20140281223 | OPTIMIZED DISK LOAD DISTRIBUTION - A method in a distributed storage (DS) unit begins by the unit receiving one or more data slices to store. The method continues by determining a memory utilization method for the one or more data slices. The method continues when a multiple memory utilization method is determined. The method continues by determining a data slice distribution method. The method continues by storing a plurality of the one or more data slices in the multiple memories using the data slice distribution method and updating a virtual address to physical location table to reflect the storing. | 09-18-2014 |
20140281066 | HIGHLY AUTONOMOUS DISPERSED STORAGE SYSTEM RETRIEVAL METHOD - A method for accessing data in a directory-less dispersed storage (DS) network. In various embodiments, the method begins when a DS processing unit receives a read request for data stored in accordance with a dispersed storage error encoding function. Estimated storage metadata is determined based on the identity of the data, the identity of the requesting unit, and data storage preferences of the requesting unit. The estimated storage metadata is used to determine a target set of storage units. Next, a retrieval request is sent to one or more storage units of the target set. If a favorable response is received (e.g., a read threshold number of storage units return encoded data slices), the data is decoded and forwarded to the requestor. Otherwise, the storage metadata is re-estimated and used to determine a second target set of storage units for solicitation. This process continues until a favorable response is received. | 09-18-2014 |
20140280682 | HYBRID CENTRALIZED AND AUTONOMOUS DISPERSED STORAGE SYSTEM STORAGE METHOD - A dispersed data storage method for execution by a dispersed storage (DS) unit. In various embodiments, the method begins when the DS unit receives a plurality of encoded data slices and associated metadata. The metadata is interpreted to determine storage instructions regarding the encoded data slices. When the storage instructions indicate, for example, a daisy chain storage dispersal approach, the DS unit locally stores first encoded data slices (e.g., the first encoded data slices of a set of encoded data slices) and forwards other encoded data slices to at least one other DS unit. In other exemplary embodiments, sequential and/or one-to-many dispersal approaches may be utilized. Further, the DS may employ a variety of criteria to solicit other DS units for storage of encoded data slices. | 09-18-2014 |
20140280681 | DISTRIBUTED STORAGE NETWORK FOR MODIFICATION OF A DATA OBJECT - In a dispersed storage network, data objects are dispersed storage error encoded into pluralities of sets of encoded data slices that are stored in a set of storage units. To recover a data object, a read threshold number of encoded data slices from each set of encoded data slices of a corresponding set of the plurality of sets of encoded data slices are required. Upon determining that an update is available for the set of storage units, a dispersed storage managing unit takes a first subset of storage units off line to perform the update. During the update, a remaining number of storage units of the set of storage units remain on line such that at least the read threshold number of encoded data slices are available for each set of the pluralities of sets of encoded data slices. | 09-18-2014 |
20140279104 | OBFUSCATING A TRANSACTION IN A DISPERSED STORAGE SYSTEM - A method begins by a processing module receiving a data segment for dispersed storage. The method continues with the processing module encoding the data segment in accordance with an error coding dispersed storage function to produce a plurality of error coded data slices. The method continues with the processing module generating a slice name for an error coded data slice of the plurality of error coded data slices, wherein the slice name includes a dispersed storage routing information section and a data identification section. The method continues with the processing module performing a securing function on at least the data identification section to produce a secure data identification section. The method continues with the processing module replacing, within the slice name, the data identification section with the secure data identification section to produce a secure slice name. | 09-18-2014 |
20140270180 | Distributed Storage Network and Method for Storing and Retrieving Encryption Keys - A method begins by a distributed storage (DS) managing unit receiving an encryption key to store. The method continues by determining an encryption method and encrypting the encryption key with the determined encryption method to produce an encrypted key. The method continues by encoding and slicing the encrypted key to produce a set of data slices; and storing the set of data slices in DSN memory. A method to retrieve the stored encryption key begins with receiving a retrieve encryption key request from a requester and continues with retrieving an encrypted key and then determining a decryption method. The method continues by decrypting the encrypted key with the determined decryption method to produce the encryption key and sending the encryption key to the requestor to decrypt one or more portions of the encrypted data. | 09-18-2014 |