Patents by Inventor Thomas Darrel Cocagne

Thomas Darrel Cocagne has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 11010357
    Abstract: A method begins by a processing module of a dispersed storage network (DSN) determining a fault domain for a portion of the DSN and generating a local redundancy for the fault domain. The method continues with the processing module identifying storage locations available for storing the first local redundancy, selecting storage locations for storing the first local redundancy and continues with the processing module facilitating storage of the local redundancy in the storage locations. Upon detecting a storage failure in the DSN, the method continues with the processing module determining whether the storage failure is associated with the fault domain and in response determining whether the first local redundancy is associated with the first fault domain. In response to determining that the local redundancy is associated with the first fault domain the method continues with the processing module recovering the local redundancy and correcting the storage failure.
    Type: Grant
    Filed: October 4, 2018
    Date of Patent: May 18, 2021
    Assignee: PURE STORAGE, INC.
    Inventors: Ilya Volvovski, Bruno Hennig Cabral, Manish Motwani, Thomas Darrel Cocagne, Timothy W. Markison, Gary W. Grube, Wesley Leggette, Jason K. Resch, Michael C. Storm, Greg Dhuse, Yogesh Ramesh Vedpathak, Ravi Khadiwala
  • Patent number: 10282440
    Abstract: A method begins by a first computing device of a plurality of computing devices accessing a rebuild hierarchical index structure to identify a data object having encoded data slices requiring rebuilding, where the structure includes a plurality of nodes that organizes a plurality of data objects based on a level of need of rebuilding. The method continues with the first computing device utilizing a rebuilding function to rebuild one or more of the identified encoded data slices to be rebuilt to produce one or more rebuilt encoded data slices and sending a write request to memory of a dispersed storage network to store the one or more rebuilt encoded data slices. The method continues with the first or another computing device updating the level of need of rebuilding of the identified data object and updating the rebuild hierarchical index structure based on the updated level of need of rebuilding.
    Type: Grant
    Filed: January 26, 2016
    Date of Patent: May 7, 2019
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Greg Dhuse, Ravi Khadiwala, Thomas Darrel Cocagne, Andrew Baptist, Joseph Martin Kaczmarek
  • Patent number: 10275313
    Abstract: A computing device of a dispersed storage network (DSN) includes a memory, interface and a processing module operable to identify an encoded data slice of the set of encoded data slices to produce an identified encoded data slice. The processing module generates a set of first write requests regarding the set of encoded data slices less the identified encoded data slice, and generates a set of second write requests regarding the identified encoded data slice. The set of second write requests include the identified encoded data slice and replications of the identified encoded data slice. The processing module sends the set of first write requests to storage units of the DSN, and sends 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.
    Type: Grant
    Filed: September 15, 2017
    Date of Patent: April 30, 2019
    Assignee: International Business Machines Corporation
    Inventors: Thomas Franklin Shirley, Jr., Gary W. Grube, Bart Cilfone, Ravi Khadiwala, Greg Dhuse, Thomas Darrel Cocagne, Michael Colin Storm, Yogesh Ramesh Vedpathak, Wesley Leggette, Jason K. Resch, Andrew Baptist, Ilya Volvovski
  • Publication number: 20190042768
    Abstract: A method begins by a processing module of a dispersed storage network (DSN) determining a fault domain for a portion of the DSN and generating a local redundancy for the fault domain. The method continues with the processing module identifying storage locations available for storing the first local redundancy, selecting storage locations for storing the first local redundancy and continues with the processing module facilitating storage of the local redundancy in the storage locations. Upon detecting a storage failure in the DSN, the method continues with the processing module determining whether the storage failure is associated with the fault domain and in response determining whether the first local redundancy is associated with the first fault domain. In response to determining that the local redundancy is associated with the first fault domain the method continues with the processing module recovering the local redundancy and correcting the storage failure.
    Type: Application
    Filed: October 4, 2018
    Publication date: February 7, 2019
    Inventors: Ilya Volvovski, Bruno Hennig Cabral, Manish Motwani, Thomas Darrel Cocagne, Timothy W. Markison, Gary W. Grube, Wesley Leggette, Jason K. Resch, Michael C. Storm, Greg Dhuse, Yogesh Ramesh Vedpathak, Ravi Khadiwala
  • Patent number: 10152601
    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: Grant
    Filed: March 31, 2015
    Date of Patent: December 11, 2018
    Assignee: International Business Machines Corporation
    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
  • Patent number: 10102069
    Abstract: A method includes identifying a data object for retrieval. The data object is encoded in accordance with first encoded parameters and stored as a plurality of sets of encoded data slices in a set of storage units. The method further includes determining whether an access metric regarding the data object exceeds an access threshold. When the access metric is equal to or exceeds the access threshold, the data object is further encoded in accordance with second encoding parameters and stored as a second plurality of sets of encoded data slices in a second set of storage units. The method further includes issuing retrieval requests to the second set of storage units regarding the second plurality of encoded data slices in accordance with a read threshold of the second encoding parameters. The method further includes recovering the data object from the second plurality of encoded data slices.
    Type: Grant
    Filed: January 6, 2017
    Date of Patent: October 16, 2018
    Assignee: International Business Machines Corporation
    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
  • Patent number: 10095872
    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: Grant
    Filed: March 31, 2015
    Date of Patent: October 9, 2018
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    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
  • Patent number: 10078472
    Abstract: A method for a computing device to rebuild a plurality of to-be rebuilt encoded data slices in a dispersed storage network (DSN) begins with the computing device, for each set of encoded data slices of a plurality of sets of encoded data slices that includes at least one of the plurality of to-be rebuilt encoded data slices, determining a cumulative memory health for memory devices of storage units storing other encoded data slices of the respective set of encoded data slices and determining a probability of data loss. The method continues with the computing device prioritizing rebuilding based on the probability of data loss for each set of encoded data slices and rebuilding, in accordance with the prioritizing, a first to-be rebuilt encoded data slice of the plurality of to-be rebuilt encoded data slices to produce a first rebuilt encoded data slice.
    Type: Grant
    Filed: December 30, 2015
    Date of Patent: September 18, 2018
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventor: Thomas Darrel Cocagne
  • Publication number: 20180024887
    Abstract: A computing device of a dispersed storage network (DSN) includes a memory, interface and a processing module operable to identify an encoded data slice of the set of encoded data slices to produce an identified encoded data slice. The processing module generates a set of first write requests regarding the set of encoded data slices less the identified encoded data slice, and generates a set of second write requests regarding the identified encoded data slice. The set of second write requests include the identified encoded data slice and replications of the identified encoded data slice. The processing module sends the set of first write requests to storage units of the DSN, and sends 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.
    Type: Application
    Filed: September 15, 2017
    Publication date: January 25, 2018
    Inventors: Thomas Franklin Shirley, Jr., Gary W. Grube, Bart Cilfone, Ravi Khadiwala, Greg Dhuse, Thomas Darrel Cocagne, Michael Colin Storm, Yogesh Ramesh Vedpathak, Wesley Leggette, Jason K. Resch, Andrew Baptist, Ilya Volvovski
  • Patent number: 9778987
    Abstract: A method for writing a set of encoded data slices to memory of a dispersed storage network (DSN) begins by a processing module identifying an encoded data slice of the set of encoded data slices for a redundant write operation to produce an identified encoded data slice. The method continues with the processing module generating a set of first write requests regarding the set of encoded data slices less the identified encoded data slice and generating a set of second write requests regarding the identified encoded data slice. The method continues with the processing module sending the set of first write requests to storage units of the DSN and sending the set of second write requests to a set of storage units of the DSN, where each storage unit of the set of storage units is sent a corresponding one of the set of second write requests.
    Type: Grant
    Filed: December 15, 2014
    Date of Patent: October 3, 2017
    Assignee: International Business Machines Corporation
    Inventors: Thomas Franklin Shirley, Jr., Gary W. Grube, Bart Cilfone, Ravi Khadiwala, Greg Dhuse, Thomas Darrel Cocagne, Michael Colin Storm, Yogesh Ramesh Vedpathak, Wesley Leggette, Jason K. Resch, Andrew Baptist, Ilya Volvovski
  • Patent number: 9639298
    Abstract: 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.
    Type: Grant
    Filed: June 18, 2014
    Date of Patent: May 2, 2017
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Asimuddin Kazi, Thomas Darrel Cocagne, Wesley Leggette
  • Publication number: 20170116082
    Abstract: A method includes identifying a data object for retrieval. The data object is encoded in accordance with first encoded parameters and stored as a plurality of sets of encoded data slices in a set of storage units. The method further includes determining whether an access metric regarding the data object exceeds an access threshold. When the access metric is equal to or exceeds the access threshold, the data object is further encoded in accordance with second encoding parameters and stored as a second plurality of sets of encoded data slices in a second set of storage units. The method further includes issuing retrieval requests to the second set of storage units regarding the second plurality of encoded data slices in accordance with a read threshold of the second encoding parameters. The method further includes recovering the data object from the second plurality of encoded data slices.
    Type: Application
    Filed: January 6, 2017
    Publication date: April 27, 2017
    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
  • Patent number: 9606867
    Abstract: When an access metric regarding an encoded data object exceeds an access threshold, a method begins by a processing module of a dispersed storage network (DSN) retrieving encoded data slices of a first plurality of sets of encoded data slices and recovering the data object utilizing first dispersed storage error encoding parameters. The method continues with the processing module re-encoding the recovered data object using second dispersed storage error encoding parameters to produce a re-encoded data object, where the re-encoded data object includes a second plurality of sets of encoded data slices. The method continues with the processing module outputting the second plurality of sets of encoded data slices to storage units of the DSN for storage therein and sending a message to retrieving devices of the DSN, where the message indicates use of the second plurality of sets of encoded data slices for the data object.
    Type: Grant
    Filed: April 7, 2015
    Date of Patent: March 28, 2017
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    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: 20160292254
    Abstract: A method begins by a first computing device of a plurality of computing devices accessing a rebuild hierarchical index structure to identify a data object having encoded data slices requiring rebuilding, where the structure includes a plurality of nodes that organizes a plurality of data objects based on a level of need of rebuilding. The method continues with the first computing device utilizing a rebuilding function to rebuild one or more of the identified encoded data slices to be rebuilt to produce one or more rebuilt encoded data slices and sending a write request to memory of a dispersed storage network to store the one or more rebuilt encoded data slices. The method continues with the first or another computing device updating the level of need of rebuilding of the identified data object and updating the rebuild hierarchical index structure based on the updated level of need of rebuilding.
    Type: Application
    Filed: January 26, 2016
    Publication date: October 6, 2016
    Applicant: International Business Machines Corporation
    Inventors: Greg Dhuse, Ravi Khadiwala, Thomas Darrel Cocagne, Andrew Baptist, Joseph Martin Kaczmarek
  • Publication number: 20160253240
    Abstract: A method for a computing device to rebuild a plurality of to-be rebuilt encoded data slices in a dispersed storage network (DSN) begins with the computing device, for each set of encoded data slices of a plurality of sets of encoded data slices that includes at least one of the plurality of to-be rebuilt encoded data slices, determining a cumulative memory health for memory devices of storage units storing other encoded data slices of the respective set of encoded data slices and determining a probability of data loss. The method continues with the computing device prioritizing rebuilding based on the probability of data loss for each set of encoded data slices and rebuilding, in accordance with the prioritizing, a first to-be rebuilt encoded data slice of the plurality of to-be rebuilt encoded data slices to produce a first rebuilt encoded data slice.
    Type: Application
    Filed: December 30, 2015
    Publication date: September 1, 2016
    Applicant: International Business Machines Corporation
    Inventor: Thomas Darrel Cocagne
  • 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: 20150355960
    Abstract: When an access metric regarding an encoded data object exceeds an access threshold, a method begins by a processing module of a dispersed storage network (DSN) retrieving encoded data slices of a first plurality of sets of encoded data slices and recovering the data object utilizing first dispersed storage error encoding parameters. The method continues with the processing module re-encoding the recovered data object using second dispersed storage error encoding parameters to produce a re-encoded data object, where the re-encoded data object includes a second plurality of sets of encoded data slices. The method continues with the processing module outputting the second plurality of sets of encoded data slices to storage units of the DSN for storage therein and sending a message to retrieving devices of the DSN, where the message indicates use of the second plurality of sets of encoded data slices for the data object.
    Type: Application
    Filed: April 7, 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: 20150220396
    Abstract: A method for writing a set of encoded data slices to memory of a dispersed storage network (DSN) begins by a processing module identifying an encoded data slice of the set of encoded data slices for a redundant write operation to produce an identified encoded data slice. The method continues with the processing module generating a set of first write requests regarding the set of encoded data slices less the identified encoded data slice and generating a set of second write requests regarding the identified encoded data slice. The method continues with the processing module sending the set of first write requests to storage units of the DSN and sending the set of second write requests to a set of storage units of the DSN, where each storage unit of the set of storage units is sent a corresponding one of the set of second write requests.
    Type: Application
    Filed: December 15, 2014
    Publication date: August 6, 2015
    Applicant: CLEVERSAFE, INC.
    Inventors: Thomas Franklin Shirley, Jr., Gary W. Grube, Bart Cilfone, Ravi Khadiwala, Greg Dhuse, Thomas Darrel Cocagne, Michael Colin Storm, Yogesh Ramesh Vedpathak, Wesley Leggette, Jason K. Resch, Andrew Baptist, Ilya Volvovski