Patents Assigned to Cleversafe, Inc.
  • Publication number: 20150378625
    Abstract: 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.
    Type: Application
    Filed: May 8, 2015
    Publication date: December 31, 2015
    Applicant: CLEVERSAFE, INC.
    Inventors: Jason K. Resch, Greg Dhuse, Manish Motwani, Andrew Baptist, Wesley Leggette
  • Publication number: 20150381731
    Abstract: 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.
    Type: Application
    Filed: May 26, 2015
    Publication date: December 31, 2015
    Applicant: CLEVERSAFE, INC.
    Inventors: Gary W. Grube, Jason K. Resch
  • Publication number: 20150378827
    Abstract: 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.
    Type: Application
    Filed: September 3, 2015
    Publication date: December 31, 2015
    Applicant: CLEVERSAFE, INC.
    Inventors: Gary W. Grube, Timothy W. Markison
  • Publication number: 20150378822
    Abstract: 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.
    Type: Application
    Filed: May 26, 2015
    Publication date: December 31, 2015
    Applicant: CLEVERSAFE, INC.
    Inventors: Gary W. Grube, Jason K. Resch
  • Publication number: 20150378626
    Abstract: 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.
    Type: Application
    Filed: May 8, 2015
    Publication date: December 31, 2015
    Applicant: CLEVERSAFE, INC.
    Inventors: Manish Motwani, Wesley Leggette, Andrew Baptist
  • Publication number: 20150378824
    Abstract: 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.
    Type: Application
    Filed: September 2, 2015
    Publication date: December 31, 2015
    Applicant: CLEVERSAFE, INC.
    Inventors: Gary W. Grube, Timothy W. Markison, Jason K. Resch
  • Publication number: 20150381600
    Abstract: 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.
    Type: Application
    Filed: September 2, 2015
    Publication date: December 31, 2015
    Applicant: CLEVERSAFE, INC.
    Inventors: Jason K. Resch, Wesley Leggette
  • Publication number: 20150378616
    Abstract: 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.
    Type: Application
    Filed: May 26, 2015
    Publication date: December 31, 2015
    Applicant: CLEVERSAFE, INC.
    Inventors: Ravi Khadiwala, Jason K. Resch
  • Publication number: 20150381730
    Abstract: 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.
    Type: Application
    Filed: May 8, 2015
    Publication date: December 31, 2015
    Applicant: CLEVERSAFE, INC.
    Inventors: Jason K. Resch, Greg Dhuse, Manish Motwani, Andrew Baptist, Wesley Leggette, Ravi Khadiwala
  • Publication number: 20150378825
    Abstract: 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.
    Type: Application
    Filed: September 3, 2015
    Publication date: December 31, 2015
    Applicant: CLEVERSAFE, INC.
    Inventor: Jason K. Resch
  • Patent number: 9223723
    Abstract: A method begins by a dispersed storage (DS) processing module of a storage unit receiving, over time, access requests regarding reading or writing of various data blocks. The method continues with the DS processing module establishing an internal verification access rate for verifying data blocks stored in a memory device of the storage unit based on a rate of the access requests and a maximum access rate of the memory device. The method continues with the DS processing module generating internal verification requests in accordance with the internal verification access rate, coordinating the internal verification requests and the access requests for accessing the memory device, and accessing the memory device based on the internal verification requests to verify the data blocks.
    Type: Grant
    Filed: September 16, 2013
    Date of Patent: December 29, 2015
    Assignee: Cleversafe, Inc.
    Inventors: Andrew George Peake, Jason K. Resch, Ilya Volvovski
  • Publication number: 20150370638
    Abstract: 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.
    Type: Application
    Filed: September 2, 2015
    Publication date: December 24, 2015
    Applicant: CLEVERSAFE, INC.
    Inventors: Jason K. Resch, Siyuan Ma
  • Publication number: 20150373120
    Abstract: 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.
    Type: Application
    Filed: September 1, 2015
    Publication date: December 24, 2015
    Applicant: CLEVERSAFE, INC.
    Inventors: Jason K. Resch, Gary W. Grube, Timothy W. Markison
  • Patent number: 9219604
    Abstract: A method begins by a dispersed storage (DS) processing module generating a shared secret key from a public key of another entity and a private key using a first modulo prime polynomial function, wherein a public key is generated from the private key using a second modulo prime polynomial function and wherein the public key of the other entity is derived using the second modulo prime polynomial function on a private key of the other entity. The method continues with the DS module encrypting a message using the shared secret key to produce an encrypted message. The method continues with the DS module outputting the encrypted message to the other entity.
    Type: Grant
    Filed: April 18, 2012
    Date of Patent: December 22, 2015
    Assignee: Cleversafe, Inc.
    Inventors: Jason K. Resch, Wesley Leggette
  • Patent number: 9213742
    Abstract: A method begins by a dispersed storage (DS) processing module receiving a first coded matrix that includes a first plurality of pairs of coded values corresponding to first data segments of a first data stream and a second data stream. The method continues with the DS processing module receiving a second coded matrix that includes a second plurality of pairs of coded values corresponding to first data segments of a third data stream and a fourth data stream. The method continues with the DS processing module generating a new coded matrix to include a plurality of groups of selected coded values. The method continues with the DS processing module outputting the plurality of groups of selected coded values to a requesting entity in a manner to maintain time alignment of the first data segments of the first, second, third, and fourth data streams.
    Type: Grant
    Filed: August 2, 2012
    Date of Patent: December 15, 2015
    Assignee: Cleversafe, Inc.
    Inventors: Gary W. Grube, Timothy W. Markison
  • Patent number: 9215476
    Abstract: 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 unique copy of the copies to a requesting device. The method continues with the processing module existing the loop when the last group of the request has been retrieved and repeating the loop when it has not.
    Type: Grant
    Filed: June 17, 2013
    Date of Patent: December 15, 2015
    Assignee: CLEVERSAFE, INC.
    Inventors: S. Christopher Gladwin, Alan E. Holmes, Wesley Leggette, Jason K. Resch
  • Publication number: 20150355980
    Abstract: A method begins by storage units of a dispersed storage network (DSN) receiving a retrieval request for a data object, where each storage unit stores a unique group of encoded data slices of the data object and a local set of encoded recovery data slices. The method continues with some storage units sending the unique group of encoded data slices to a requesting computing device and with one storage unit sending an encoded recovery data slice to the requesting computing device. The method continues with the requesting computing device identifying an errant unique group encoded data slice, correcting the errant encoded data slice based on received data slices to produce an updated unique group of encoded data slices, and dispersed storage error decoding the updated unique group of encoded data slices and the unique groups of encoded data slices from other storage units to recover the data object.
    Type: Application
    Filed: March 31, 2015
    Publication date: December 10, 2015
    Applicant: CLEVERSAFE, INC.
    Inventors: Ilya Volvovski, Bruno Hennig Cabral, Manish Motwani, Thomas Darrel Cocagne, Timothy W. Markison, Gary W. Grube, Wesley Leggette, Jason K. Resch, Michael Colin Storm, Greg Dhuse, Yogesh Ramesh Vedpathak, Ravi Khadiwala
  • Publication number: 20150356305
    Abstract: A method begins by a processing module of a dispersed storage network (DSN) dividing data into a plurality of data units and generating a plurality of encryption keys from a master key associated with the data and a data identifier associated with the data. The method continues with the processing module encrypting the plurality of data units using the plurality of encryption keys to produce a plurality of encrypted data units and sending the plurality of encrypted data units to a first set of storage units of the DSN for storage. The method continues with the processing module encoding the master key to produce a plurality of encoded master key units and sending the plurality of encoded master key units to a second set of storage units of the DSN for storage.
    Type: Application
    Filed: March 31, 2015
    Publication date: December 10, 2015
    Applicant: CLEVERSAFE, INC.
    Inventors: Ilya Volvovski, Bruno Hennig Cabral, Manish Motwani, Thomas Darrel Cocagne, Timothy W. Markison, Gary W. Grube, Wesley Leggette, Jason K. Resch, Michael Colin Storm, Greg Dhuse, Yogesh Ramesh Vedpathak, Ravi Khadiwala
  • Publication number: 20150355979
    Abstract: A method begins by a set of storage units of a dispersed storage network (DSN) storing a plurality of encoded data slices, where each storage unit stores a unique sub-set of encoded data slices. The method continues with each storage unit dispersed storage error encoding at least a recovery threshold number of encoded data slices to produce a local set of encoded recovery data slices. In response to a retrieval request, the method continues with a device identifying a storage unit of an initial recovery number of storage units having a rebuilding issue and determining whether the rebuilding issue is correctable at a DSN level. When the rebuilding issue is correctable at the DSN level the method continues with the device selecting another storage unit to replace the storage unit to produce a recovery number of storage units and sending retrieve requests to the recovery number of storage units.
    Type: Application
    Filed: March 31, 2015
    Publication date: December 10, 2015
    Applicant: CLEVERSAFE, INC.
    Inventors: Ilya Volvovski, Bruno Hennig Cabral, Manish Motwani, Thomas Darrel Cocagne, Timothy W. Markison, Gary W. Grube, Wesley Leggette, Jason K. Resch, Michael Colin Storm, Greg Dhuse, Yogesh Ramesh Vedpathak, Ravi Khadiwala
  • Publication number: 20150355966
    Abstract: 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.
    Type: Application
    Filed: April 7, 2015
    Publication date: December 10, 2015
    Applicant: CLEVERSAFE, INC.
    Inventors: Jason K. Resch, Kumar Abhijeet