Patents Assigned to Cleversafe, Inc.
  • Patent number: 9311179
    Abstract: A method begins by a set of storage units of a dispersed storage network (DSN) receiving a plurality of read requests regarding a plurality of sets of encoded data slices from a requesting device of the DSN and outputting a plurality of read responses that includes encoded data slices and corresponding trust level indicators. The method continues with the requesting device arranging the encoded data slices of the plurality of read responses into received sets of encoded data slices. The method continues with the requesting device selecting a decode threshold number of encoded data slices from each received set of encoded data slices based on the corresponding trust level indicators to produce selected sets of encoded data slices and decoding the selected sets of encoded data slices to recapture data segments of a data object.
    Type: Grant
    Filed: September 16, 2013
    Date of Patent: April 12, 2016
    Assignee: CLEVERSAFE, INC.
    Inventors: Asimuddin Kazi, Jason K. Resch
  • Patent number: 9313293
    Abstract: 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.
    Type: Grant
    Filed: November 13, 2014
    Date of Patent: April 12, 2016
    Assignee: CLEVERSAFE, INC.
    Inventors: Gary W. Grube, Timothy W. Markison
  • Patent number: 9311187
    Abstract: A method begins by a dispersed storage (DS) processing module receiving a request to store data in a dispersed storage network and determining dispersed storage error encoding parameters for encoding the data into sets of encoded data slices. The method continues with the DS processing module determining whether the request includes a desired write reliability indication. When the request includes the desired write reliability indication, the method continues with the DS processing module determining whether storage of the sets of encoded data slices is meeting the desired write reliability indication. When storage of a set of encoded data slices is not meeting the desired write reliability indication, the method continues with the DS processing module determining a storage compliance process for the set of encoded data slices to meet the desired write reliability indication and executing the storage compliance process for the set of encoded data slices.
    Type: Grant
    Filed: November 25, 2013
    Date of Patent: April 12, 2016
    Assignee: CLEVERSAFE, INC.
    Inventors: Jason K. Resch, Wesley Leggette
  • Patent number: 9311185
    Abstract: 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.
    Type: Grant
    Filed: June 2, 2014
    Date of Patent: April 12, 2016
    Assignee: CLEVERSAFE, INC.
    Inventors: Gary W. Grube, Timothy W. Markison
  • Patent number: 9311186
    Abstract: 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.
    Type: Grant
    Filed: June 1, 2015
    Date of Patent: April 12, 2016
    Assignee: CLEVERSAFE, INC.
    Inventors: Jason K. Resch, John Quigley, Wesley Leggette
  • Patent number: 9311184
    Abstract: 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.
    Type: Grant
    Filed: December 31, 2010
    Date of Patent: April 12, 2016
    Assignee: CLEVERSAFE, INC.
    Inventors: Gary W. Grube, Timothy W. Markison
  • Patent number: 9304857
    Abstract: A method begins by a dispersed storage (DS) processing module receiving a request to retrieve a portion of a data object that is stored in a distributed storage network (DSN). The method continues with the DS processing module retrieving data storage mapping information and accessing indexing information, where the indexing information identifies a categorization of the data object into a plurality of categorical data portions. The method continues with the DS processing module identifying a specific categorical data portion of the plurality of categorical data portions and equating the specific categorical data portion to specific storage information of the data storage mapping information to identify at least one data segment of data segments of at least one storage region of storage regions. The method continues with the DS processing module retrieving the at least one data segment from the DSN in accordance with the specific storage information.
    Type: Grant
    Filed: December 6, 2012
    Date of Patent: April 5, 2016
    Assignee: CLEVERSAFE, INC.
    Inventors: Wesley Leggette, Jason K. Resch, Andrew Baptist
  • Patent number: 9304843
    Abstract: A method begins by a requesting entity sending a distributed storage network (DSN) access request to a request verification entity, wherein the DSN access request includes a signed certificate and DSN accessing information. The method continues by a request verification entity sending a signed DSN access request to the requesting entity when the request verification entity signs the DSN access request after verifying the signed certificate and the DSN accessing information. The method continues by the requesting entity sending the signed DSN access request to a DSN accessing entity. The method continues by the DSN accessing entity sending an authorized DSN access request to the DSN via a network connection when the DSN accessing entity verifies a signature of the request verification entity, wherein the authorized DSN access request includes, at a minimum, the DSN accessing information.
    Type: Grant
    Filed: September 12, 2012
    Date of Patent: April 5, 2016
    Assignee: CLEVERSAFE, INC.
    Inventors: Jason K. Resch, Wesley Leggette, Gary W. Grube
  • Patent number: 9304759
    Abstract: 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.
    Type: Grant
    Filed: July 7, 2015
    Date of Patent: April 5, 2016
    Assignee: Cleversafe, Inc.
    Inventor: Jason K. Resch
  • Patent number: 9305597
    Abstract: 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.
    Type: Grant
    Filed: July 17, 2014
    Date of Patent: April 5, 2016
    Assignee: CLEVERSAFE, INC.
    Inventors: Kumar Abhijeet, S. Christopher Gladwin, Greg Dhuse, Jason K. Resch
  • Patent number: 9298550
    Abstract: 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.
    Type: Grant
    Filed: March 16, 2015
    Date of Patent: March 29, 2016
    Assignee: Cleversafe, Inc.
    Inventors: S. Christopher Gladwin, Jason K. Resch, Gary W. Grube, Timothy W. Markison
  • Patent number: 9298548
    Abstract: A method begins by a dispersed storage (DS) processing module selecting a set of distributed storage and task (DST) execution units for executing a task and determining dispersed storage error coding parameters for data. The method continues with the DS processing module dispersed storage error encoding the data in accordance with the parameters to produce a plurality of encoded data blocks and grouping the plurality of encoded data blocks into a plurality of encoded data block groupings. The method continues with the DS processing module partitioning the task into a set of partial tasks, outputting at least some of the plurality of encoded data block groupings to the set of DST execution units, and outputting the set of partial tasks to the set of DST execution units for execution of the set of partial tasks on the at least some of plurality of encoded data block groupings.
    Type: Grant
    Filed: December 6, 2012
    Date of Patent: March 29, 2016
    Assignee: Cleversafe, Inc.
    Inventors: Wesley Leggette, Andrew Baptist, Greg Dhuse, Jason K. Resch, Ilya Volvovski, Manish Motwani, S. Christopher Gladwin, Gary W. Grube, Thomas Franklin Shirley, Jr.
  • Patent number: 9298542
    Abstract: A method begins by a dispersed storage (DS) processing module receiving a set of encoded data slices, where some of the encoded data slices have an integrity issue such that less than a decode threshold number of encoded data slices have valid integrity. The method continues with the DS processing module creating partial coded matrices from the set of encoded data slices and generating partial decoding matrices. The method continues with the DS processing module generating a test data matrix based on the partial coded matrices and the partial decoding matrices, encoding the test data matrix into a set of test encoded data slices, and generating integrity information for the set of test encoded data slices. When the integrity information is valid, the method continues with the DS processing module utilizing the test data matrix as a data matrix and converting the data matrix into a recovered data segment.
    Type: Grant
    Filed: September 16, 2013
    Date of Patent: March 29, 2016
    Assignee: CLEVERSAFE, INC.
    Inventors: Andrew George Peake, Jason K. Resch
  • Patent number: 9300477
    Abstract: 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.
    Type: Grant
    Filed: July 15, 2014
    Date of Patent: March 29, 2016
    Assignee: CLEVERSAFE, INC.
    Inventors: Jason K. Resch, Greg Dhuse, Andrew Baptist
  • Publication number: 20160070719
    Abstract: 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.
    Type: Application
    Filed: July 8, 2015
    Publication date: March 10, 2016
    Applicant: CLEVERSAFE, INC.
    Inventors: Jason K. Resch, Andrew Baptist, Niall John McShane, Greg Dhuse, Thomas Franklin Shirley, JR., Gregory Palinckx, Russell Paul Kennedy, S. Christopher Gladwin, Robert Clark McCammon, James Sherer
  • Publication number: 20160070617
    Abstract: 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.
    Type: Application
    Filed: July 22, 2015
    Publication date: March 10, 2016
    Applicant: CLEVERSAFE, INC.
    Inventors: Teague Scott Algie, Jason K. Resch
  • Publication number: 20160055060
    Abstract: 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.
    Type: Application
    Filed: November 2, 2015
    Publication date: February 25, 2016
    Applicant: CLEVERSAFE, INC.
    Inventors: Jason K. Resch, Gary W. Grube, Timothy W. Markison
  • Publication number: 20160055061
    Abstract: 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.
    Type: Application
    Filed: November 2, 2015
    Publication date: February 25, 2016
    Applicant: CLEVERSAFE, INC.
    Inventors: Greg Dhuse, Andrew Baptist
  • Publication number: 20160026529
    Abstract: 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.
    Type: Application
    Filed: October 5, 2015
    Publication date: January 28, 2016
    Applicant: CLEVERSAFE, INC.
    Inventors: Ilya Volvovski, Andrew Baptist, Wesley Leggette, Jason K. Resch
  • Publication number: 20160026405
    Abstract: 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.
    Type: Application
    Filed: October 6, 2015
    Publication date: January 28, 2016
    Applicant: CLEVERSAFE, INC.
    Inventor: Greg Dhuse