Patents Assigned to Cleversafe, Inc.
  • Publication number: 20150317205
    Abstract: 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.
    Type: Application
    Filed: March 4, 2015
    Publication date: November 5, 2015
    Applicant: CLEVERSAFE, INC.
    Inventors: Adam Michael Gray, Jason K. Resch
  • Publication number: 20150317196
    Abstract: 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.
    Type: Application
    Filed: March 3, 2015
    Publication date: November 5, 2015
    Applicant: CLEVERSAFE, INC.
    Inventors: Asimuddin Kazi, Jason K. Resch
  • Publication number: 20150317099
    Abstract: 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.
    Type: Application
    Filed: March 4, 2015
    Publication date: November 5, 2015
    Applicant: CLEVERSAFE, INC.
    Inventors: Jason K. Resch, Greg Dhuse
  • Patent number: 9176822
    Abstract: A method begins by a processing module receiving a large data file for storage in a dispersed storage network (DSN) and determining initial dispersed storage error encoding parameters. The method continues with the processing module encoding, during a first time interval of receiving the large data file, first data segments of the large data file using the initial dispersed storage error encoding parameters to produce a first plurality of sets of encoded data slices. The method continues with the processing module writing the first plurality of sets of encoded data slices to the DSN and monitoring processing of the writing to produce first write processing performance information. When the first write processing performance information compares unfavorably to a desired write performance range, the method continues with the processing module adjusting, for a second time interval, the initial dispersed storage error encoding parameters to produce adjusted dispersed storage error encoding parameters.
    Type: Grant
    Filed: July 17, 2013
    Date of Patent: November 3, 2015
    Assignee: Cleversafe, Inc.
    Inventors: Yogesh Ramesh Vedpathak, Ramin Rouzbeh, Jason K. Resch
  • Publication number: 20150309786
    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: Application
    Filed: July 7, 2015
    Publication date: October 29, 2015
    Applicant: CLEVERSAFE, INC.
    Inventor: Jason K. Resch
  • Publication number: 20150309877
    Abstract: 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.
    Type: Application
    Filed: July 6, 2015
    Publication date: October 29, 2015
    Applicant: CLEVERSAFE, INC.
    Inventors: Bart Cilfone, Andrew Baptist, Greg Dhuse, Ilya Volvovski, Jason K. Resch
  • Patent number: 9170882
    Abstract: A method begins by a processing module receiving a file retrieval request for a file, wherein the file includes one or more data regions, and wherein a data region of the one or more data regions is divided into a plurality of data segments and stored as a plurality of sets of encoded data slices in a dispersed storage network (DSN) memory. The method continues with the processing module retrieving a segment allocation table (SAT), wherein a SAT entry of a plurality of SAT entries includes information regarding storing the data region in the DSN memory and a segmentation scheme regarding the dividing of the data region into the plurality of data segments. The method continues with the processing module identifying the plurality of sets of encoded data slices and retrieving at least a sufficient number of the plurality of sets of encoded data slices to regenerate the data region.
    Type: Grant
    Filed: December 1, 2011
    Date of Patent: October 27, 2015
    Assignee: Cleversafe, Inc.
    Inventors: Ilya Volvovski, Andrew Baptist, Wesley Leggette, Jason K. Resch
  • Patent number: 9170884
    Abstract: 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.
    Type: Grant
    Filed: August 6, 2014
    Date of Patent: October 27, 2015
    Assignee: Cleversafe, Inc.
    Inventors: Gary W. Grube, Jason K. Resch
  • Patent number: 9170868
    Abstract: A method begins by a dispersed storage (DS) processing module selecting two or more correlated error messages of a plurality of error messages. The method continues with the DS processing module identifying two or more collection of records corresponding to the selected two or more correlated error messages such that a collection of records includes an event record including information regarding an event, a first record including information regarding a dispersed storage (DS) processing module processing an event request to produce a plurality of sub-event requests, and a plurality of records including information regarding a plurality of DS units processing the plurality of sub-event requests. The method continues with the DS processing module identifying a correlation cause of one or more errors corresponding to the two or more correlated error messages based on the two or more collections of records.
    Type: Grant
    Filed: July 12, 2012
    Date of Patent: October 27, 2015
    Assignee: Cleversafe, Inc.
    Inventors: Greg Dhuse, Yogesh Ramesh Vedpathak
  • Patent number: 9171031
    Abstract: A method begins by a dispersed storage (DS) processing module determining to merge two data object level index nodes and merging the two nodes into a temporarily merged data object level index node. The method continues with the DS processing module initiating updating of a hierarchical ordered index structure by identifying an address for storing the temporarily merged data object level index node, setting up deletion of the two data object level index nodes, setting up linking the temporarily merged data object level index node to a next level node of the hierarchical ordered index structure, and determining whether a change has occurred to at least one of one or more of the two data object level index nodes and the next level node. When the change has not occurred, the method continues with the DS processing module commencing the updating of the hierarchical ordered index structure.
    Type: Grant
    Filed: February 25, 2013
    Date of Patent: October 27, 2015
    Assignee: Cleversafe, Inc.
    Inventors: Greg Dhuse, Wesley Leggette, Adam Michael Gray, Ilya Volvovski, Andrew Baptist, Jason K. Resch
  • Publication number: 20150301905
    Abstract: 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.
    Type: Application
    Filed: July 1, 2015
    Publication date: October 22, 2015
    Applicant: CLEVERSAFE, INC.
    Inventors: Jason K. Resch, Wesley Leggette
  • Patent number: 9164841
    Abstract: A method begins by a dispersed storage (DS) processing module identifying an encoded data slice having an error, where a storage unit of a dispersed storage network (DSN) stores the encoded data slice. The method continues with the DS processing module sending a lock command to the storage unit. The method continues with the DS processing module determining resolution for the error of the encoded data slice, where the resolution includes one or more of: rebuilding the encoded data slice, issuing a set of delete requests to storage units of the DSN regarding a set of encoded data slices, issuing a set of undo write requests to the storage units of the DSN regarding the set of encoded data slices, and issuing a set of roll-back write requests to the storage units of the DSN regarding the set of encoded data slices.
    Type: Grant
    Filed: April 19, 2013
    Date of Patent: October 20, 2015
    Assignee: Cleversafe, Inc.
    Inventor: Jason K. Resch
  • Patent number: 9167277
    Abstract: A method begins by a processing module receiving data for dispersed storage, wherein the data has an associated user identification (ID), and obtaining a codec flag based on the associated user ID. The codec flag may indicate one or more codec types and a codec execution order. The codec types may include two or more of: a null data manipulation, one or more versions of a data integrity function, one or more versions of a compression function, and/or one or more versions of an encryption function. The method continues with the processing module manipulating the data to produce manipulated data utilizing the one or more codec types in the codec execution order, encoding the manipulated data using an error coding dispersal storage function to produce a plurality of encoded data slices, and sending the slices and codec flag to a plurality of DS storage units for storage.
    Type: Grant
    Filed: May 7, 2010
    Date of Patent: October 20, 2015
    Assignee: Cleversafe, Inc.
    Inventors: Bart Cilfone, Wesley Leggette, Jason K. Resch
  • Patent number: 9158624
    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: August 13, 2014
    Date of Patent: October 13, 2015
    Assignee: Cleversafe, Inc.
    Inventors: Gary W. Grube, Jason K. Resch
  • Patent number: 9158625
    Abstract: 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.
    Type: Grant
    Filed: September 9, 2014
    Date of Patent: October 13, 2015
    Assignee: Cleversafe, Inc.
    Inventors: Gary W. Grube, Timothy W. Markison
  • Publication number: 20150288680
    Abstract: 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.
    Type: Application
    Filed: January 30, 2015
    Publication date: October 8, 2015
    Applicant: CLEVERSAFE, INC.
    Inventor: Wesley Leggette
  • Publication number: 20150288384
    Abstract: 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.
    Type: Application
    Filed: February 4, 2015
    Publication date: October 8, 2015
    Applicant: CLEVERSAFE, INC.
    Inventors: S. Christopher Gladwin, Jason K. Resch, Manish Motwani
  • Publication number: 20150286833
    Abstract: 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.
    Type: Application
    Filed: January 30, 2015
    Publication date: October 8, 2015
    Applicant: CLEVERSAFE, INC.
    Inventors: Jason K. Resch, Wesley Leggette
  • Patent number: 9152514
    Abstract: A method begins with a processing module storing a set of encoded data slices in memory of a dispersed storage network (DSN), where a data segment is encoded using an error coding dispersal storage function to produce the set of encoded data slices. The method continues with the processing module adding the data segment to a rebuilding list, where encoded data slices of data segments identified in the rebuilding list are checked via a rebuilding process to detect errors and, when one of the encoded data slices has an error, the rebuilding process rebuilds the one of the encoded data slices. The method continues with the processing module, in response to a condition, removing the data segment from the rebuilding list.
    Type: Grant
    Filed: April 19, 2013
    Date of Patent: October 6, 2015
    Assignee: Cleversafe, Inc.
    Inventors: Jason K. Resch, Andrew Baptist, Timothy W. Markison, Gary W. Grube
  • Patent number: 9152489
    Abstract: A method begins by a processing module receiving a write request message from a dispersed storage (DS) processing module, wherein the write request message includes a slice name, a DS processing module most-recent slice revision, a new slice revision, and an encoded directory slice of directory information regarding storage of data. The method continues with the processing module obtaining, from local memory, a DS unit most-recent slice revision based on the slice name. The method continues with the processing module storing the new slice revision as the DS unit most-recent slice revision and storing the encoded directory slice when the DS unit most-recent slice revision compares favorably to the DS processing module most-recent slice revision.
    Type: Grant
    Filed: October 13, 2010
    Date of Patent: October 6, 2015
    Assignee: Cleversafe, Inc.
    Inventors: Andrew Baptist, Wesley Leggette, Ilya Volvovski, Jason K. Resch, Greg Dhuse, Bart Cilfone