Patents by Inventor Greg Dhuse

Greg Dhuse 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: 10230692
    Abstract: A dispersed storage (DS) processing module may include a gateway module operable to communicate data and/or corresponding information with a user device and may include an access module operable to segment outbound data of the data into one or more outbound data segments and aggregate one or more inbound data segments into inbound data of the data. The DS processing module may include a grid module operable to encode an outbound data segment of the one or more outbound data segments into a plurality of outbound encoded data slices and decode a plurality of inbound encoded data slices into an inbound data segment of the one or more inbound data segments. The DS processing module may include a storage module operable to output the plurality of outbound encoded data slices to a plurality of DS storage units and receive the plurality of inbound encoded data slices from the plurality of DS storage units.
    Type: Grant
    Filed: May 6, 2010
    Date of Patent: March 12, 2019
    Assignee: International Business Machines Corporation
    Inventors: John Quigley, Greg Dhuse
  • Patent number: 10225205
    Abstract: Methods and apparatus for selection of memory locations for data access operations in a dispersed storage network (DSN) are disclosed. In various embodiments, a dispersed storage (DS) processing module of the DSN receives a DSN access request regarding at least one data segment of a data object. The DS processing module determines a DSN address associated with the DSN access request and performs a scoring function using the DSN address and one or more properties of DSN memory to produce a storage scoring resultant. The storage scoring resultant is utilized to identify a set of storage units of the DSN. A set of access requests is then sent to the set of storage units regarding the DSN access request. The scoring function can include, for example, performing deterministic functions, normalizing functions and ranking functions to produce the storage scoring resultant.
    Type: Grant
    Filed: February 23, 2018
    Date of Patent: March 5, 2019
    Assignee: International Business Machines Corporation
    Inventors: Jason K. Resch, Greg Dhuse, Manish Motwani, Andrew Baptist, Wesley Leggette, Ravi Khadiwala
  • Publication number: 20190065313
    Abstract: A method includes identifying an independent data object of a plurality of independent data objects for retrieval from dispersed storage network (DSN) memory. The method further includes determining a mapping of the plurality of independent data objects into a data matrix, wherein the mapping is in accordance with the dispersed storage error encoding function. The method further includes identifying, based on the mapping, an encoded data slice of the set of encoded data slices corresponding to the independent data object. The method further includes sending a retrieval request to a storage unit of the DSN memory regarding the encoded data slice. When the encoded data slice is received, the method further includes decoding the encoding data slice in accordance with the dispersed storage error encoding function and the mapping to reproduce the independent data object.
    Type: Application
    Filed: October 26, 2018
    Publication date: February 28, 2019
    Inventors: Jason K. Resch, Greg Dhuse, Andrew Baptist
  • Patent number: 10216647
    Abstract: A method begins by a processing module receiving an encoded data slice for storage in memory that is organized as a plurality of log files and identifying a log file based on information regarding the encoded data slice to produce an identified log file, wherein the identified log file is storing at least one other encoded data slice. The method continues with the processing module comparing storage parameters of the identified log file with desired storage parameters associated with the encoded data slice. The method continues with the processing module attempting to identify a second log file based on an alternate log file storage protocol when the storage parameters of the identified log file compare unfavorably with the desired storage parameters and when the second log file is identified, storing the encoded data slice in the second log file.
    Type: Grant
    Filed: October 11, 2011
    Date of Patent: February 26, 2019
    Assignee: International Business Machines Corporation
    Inventors: Ilya Volvovski, Andrew Baptist, Greg Dhuse, Jason K. Resch
  • 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: 10200156
    Abstract: A processing module of a computing device alternatingly sends a stream of data to a first or second processing device. When receiving the stream of data, the first processing device performs a first portion of a dispersed storage error encoding function on the received stream of data to produce a plurality of sets of a threshold number of slices and writes the plurality of sets of the threshold number of slices into first memory of a dispersed storage network (DSN). When not receiving the stream of data, the first processing device reads the plurality of sets of the threshold number of slices from the first memory, performs a second portion of the dispersed storage error encoding function using the plurality of sets of the threshold number of slices to produce a plurality of sets of redundancy slices, and writes the plurality of sets of redundancy slices into second DSN memory.
    Type: Grant
    Filed: July 18, 2016
    Date of Patent: February 5, 2019
    Assignee: International Business Machines Corporation
    Inventors: S. Christopher Gladwin, Timothy W. Markison, Greg Dhuse, Thomas Franklin Shirley, Jr., Wesley Leggette, Jason K. Resch, Gary W. Grube
  • Publication number: 20190012233
    Abstract: A computer readable storage medium includes a first memory section that stores operational instructions that, when executed by a computing device of a dispersed storage network (DSN), cause the computing device to, for a first phase of a multiple phase write operation, determine whether to send a write performance threshold number of write requests to storage units. When yes, a second memory section storing operational instructions causes the computing device to, send them to storage units. When no, a third memory section storing operational instructions causes the computing device to determine whether to change the write performance threshold number for a second phase of the multiple write operation. When the write performance threshold number is to be changed, change the write performance threshold number and send the changed write performance threshold number of write commit requests to a second subset of the set of storage units.
    Type: Application
    Filed: September 12, 2018
    Publication date: January 10, 2019
    Inventors: Greg Dhuse, Jason K. Resch, Thomas Franklin Shirley, JR.
  • Patent number: 10169150
    Abstract: A method includes identifying an independent data object of a plurality of independent data objects for retrieval from dispersed storage network (DSN) memory. The method further includes determining a mapping of the plurality of independent data objects into a data matrix, wherein the mapping is in accordance with the dispersed storage error encoding function. The method further includes identifying, based on the mapping, an encoded data slice of the set of encoded data slices corresponding to the independent data object. The method further includes sending a retrieval request to a storage unit of the DSN memory regarding the encoded data slice. When the encoded data slice is received, the method further includes decoding the encoding data slice in accordance with the dispersed storage error encoding function and the mapping to reproduce the independent data object.
    Type: Grant
    Filed: August 17, 2017
    Date of Patent: January 1, 2019
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Jason K. Resch, Greg Dhuse, Andrew Baptist
  • Patent number: 10169125
    Abstract: A method begins by a storage unit partially decoding a first encoded data slice of a set of encoded data slices in accordance with previous dispersed storage error encoding parameters to produce a partially decoded first encoded data slice that is stored by another storage unit. The method continues with the storage unit partially re-encoding the partially decoded first encoded data slice in accordance with updated dispersed storage error encoding parameters to produce a first partially re-encoded data slice that is used to create a new first encoded data slice of a new set of encoded data slices.
    Type: Grant
    Filed: March 21, 2016
    Date of Patent: January 1, 2019
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Jason K. Resch, Greg Dhuse
  • Publication number: 20180375671
    Abstract: Multiple revisions of an encoded data slice are generated, with each revision having the same slice name. Each of the data slices represents the same original data portion, but each is encoded so that no single data slice can be used to reconstruct the original data portion. Appropriate revision numbers are associated with each encoded data slice, and the encoded data slices and associated revision numbers are transmitted for storage in selected storage units of a distributed storage network. If write confirmations are received from at least a write threshold number of storage units, a commit command is transmitted so that the most recently written data slices will be available for access. After a commit command is issued, a current directory used to access the encoded data slices can be sliced, encoded, and stored in the same way as the data slices.
    Type: Application
    Filed: September 4, 2018
    Publication date: December 27, 2018
    Inventors: Jason K. Resch, Greg Dhuse, Ilya Volvovski, Andrew Baptist
  • Patent number: 10162705
    Abstract: A method includes, for a first phase of a multiple phase write operation, determining whether to send a write performance threshold number of write requests to a subset of the set of storage units regarding a write performance threshold number of encoded data slices. The method further includes, when the write performance threshold number of write requests is to be sent, sending them to the subset of the set of storage units. The method further includes, when the write threshold number of favorable responses have been received, determining whether to change the write performance threshold number for a second phase of the multiple write operation. The method further includes, when the write performance threshold number is to be changed, changing the write performance threshold number. The method further includes sending the changed write performance threshold number of write commit requests to a second subset of the set of storage units.
    Type: Grant
    Filed: August 1, 2016
    Date of Patent: December 25, 2018
    Assignee: International Business Machines Corporation
    Inventors: Greg Dhuse, Jason K. Resch, Thomas Franklin Shirley, Jr.
  • 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: 10142115
    Abstract: Multiple revisions of an encoded data slice are generated, with each revision having the same slice name. Each of the data slices represents the same original data portion, but each is encoded so that no single data slice can be used to reconstruct the original data portion. Appropriate revision numbers are associated with each encoded data slice, and the encoded data slices and associated revision numbers are transmitted for storage in selected storage units of a distributed storage network. If write confirmations are received from at least a write threshold number of storage units, a commit command is transmitted so that the most recently written data slices will be available for access. After a commit command is issued, a current directory used to access the encoded data slices can be sliced, encoded, and stored in the same way as the data slices.
    Type: Grant
    Filed: July 16, 2010
    Date of Patent: November 27, 2018
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Jason K. Resch, Greg Dhuse, Ilya Volvovski, Andrew Baptist
  • Patent number: 10108493
    Abstract: A method includes identifying an encoded data slice for rebuilding. The method further includes determining whether a rebuilding threshold for the set of encoded data slices has been reached. When the rebuilding threshold has been reached, the method further includes determining, based on a condition of the DSN, whether to execute a rebuilding function, to delay execution of the rebuilding function, to adjust a rebuilding network protocol, or to modifying rebuilding criteria. When the determination is to execute the rebuilding function, the method further includes rebuilding the encoded data slice.
    Type: Grant
    Filed: August 22, 2016
    Date of Patent: October 23, 2018
    Assignee: International Business Machines Corporation
    Inventors: Ilya Volvovski, S. Christopher Gladwin, Gary W. Grube, Timothy W. Markison, Jason K. Resch, Thomas Franklin Shirley, Jr., Greg Dhuse, Manish Motwani, Andrew Baptist, Wesley Leggette
  • Patent number: 10108492
    Abstract: 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.
    Type: Grant
    Filed: June 12, 2014
    Date of Patent: October 23, 2018
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Greg Dhuse, Andrew Baptist
  • 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: 10102068
    Abstract: A method includes dispersed storage error encoding a data object in accordance with temporary parameters. The method further includes generating a first source name. The method further includes sending, in accordance with the first source name, the first sets of encoded data slices to a first set of storage units for temporary storage therein. When a determination is made to permanently store the data object, the method further includes recovering the data object from the first sets of encoded data slices. The method further includes dispersed storage error encoding the recovered data object in accordance with permanent parameters to produce second sets of encoded data slices. The method further includes generating a second source name. The method further includes sending, in accordance with the second source name, the second sets of encoded data slices to a second set of storage units for permanent storage therein.
    Type: Grant
    Filed: August 1, 2016
    Date of Patent: October 16, 2018
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: S. Christopher Gladwin, Timothy W. Markison, Greg Dhuse, Thomas Franklin Shirley, Jr., Wesley Leggette, Jason K. Resch, Gary W. Grube
  • Patent number: 10102063
    Abstract: A method for data transfer from a first computing device to a second computing device begins when the first computing device is paired with a transfer token module by the first computing device sending the data to the transfer token module. The method continues with the transfer token module encoding the data utilizing a dispersed storage error encoding function to produce a set of encoded data slices and sending the set of encoded data slices to a target destination. The method continues, when the second computing device is paired with the transfer token module, with the transfer token module retrieving the set of encoded data slices from the target destination and decoding the set of encoded data slices utilizing the dispersed storage error encoding function to recapture the data. The method continues with the second computing device storing the data.
    Type: Grant
    Filed: February 14, 2012
    Date of Patent: October 16, 2018
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Gary W. Grube, Timothy W. Markison, Greg Dhuse, Jason K. Resch, Ilya Volvovski, Wesley Leggette
  • 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: 10097518
    Abstract: A method for securely distributing a profile within a dispersed storage network (DSN) that begins by encrypting a profile using a key. The method continues by encoding the encrypted profile in accordance with a dispersed storage error encoding function. The method continues by outputting the set of encoded profile slices to the DSN for storage therein. The method continues by encoding the key in accordance with an error encoding function and outputting the set of secure key portions to a set of devices of the DSN for storage therein. A device obtains the profile by retrieving secure key portions from the set of devices and recovering the key therefrom. The device then retrieves encoded profile slices from the DSN and decodes them to recover the encrypted profile. The device then decrypts the encrypted profile using the key to recover the profile.
    Type: Grant
    Filed: June 17, 2013
    Date of Patent: October 9, 2018
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: S. Christopher Gladwin, Kumar Abhijeet, Greg Dhuse, Jason K. Resch