Patents by Inventor Andrew Baptist

Andrew Baptist 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: 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
  • 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
  • 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: 10146620
    Abstract: A method includes a computing device sending write request messages to storage units. For instance, a first write request that includes a first group of slice payloads for first encoded data slices and their corresponding revision levels is sent to a first storage unit. The method further includes the first storage unit processing the first write request to include a group of status messages for the first encoded data slices regard revision level status. The method further includes the computing device processing the first write response message to flag the encoded data slice having a revision issue for a rollback message and flag encoded data slices not having a revision issue for a write commit message.
    Type: Grant
    Filed: November 7, 2016
    Date of Patent: December 4, 2018
    Assignee: International Business Machines Corporation
    Inventors: Andrew Baptist, Wesley Leggette, Jason K. Resch
  • 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: 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: 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: 10089344
    Abstract: A method begins by a dispersed storage (DS) processing module receiving a request for a data index list that identifies data objects having one or more common attributes, searching a hierarchical ordered index structure to identify a data object level index node corresponding to a first data object boundary match, and determining whether the data object level index node corresponds to a second data object boundary match. When the data object level index node does not correspond to the second data object boundary match, the method continues with the DS processing module searching an adjacent data object level index node to determine whether the adjacent data object level index node corresponds to the second data object boundary match. When the adjacent data object level index node corresponds to the second data object boundary match, the method continues with the DS processing module generating the data index list.
    Type: Grant
    Filed: February 25, 2013
    Date of Patent: October 2, 2018
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Greg Dhuse, Wesley Leggette, Adam Michael Gray, Ilya Volvovski, Andrew Baptist
  • Patent number: 10084770
    Abstract: A method begins by a processing module storing a plurality of encoded data slices in a plurality of memory devices of a dispersed storage (DS) unit of a dispersed storage network (DSN) memory using a quantity load balancing function to substantially balance a quantity of encoded data slices stored within each of the plurality of memory devices, wherein data size of at least some of the plurality of encoded data slices is different. The method continues with the processing module determining whether an available memory imbalance exists between a first memory device of the plurality of memory devices and a second memory device of the plurality of memory devices. The method continues with the processing module migrating one or more encoded data slices between the first and second memory devices to reduce the available memory imbalance when the available memory imbalance exists.
    Type: Grant
    Filed: November 4, 2011
    Date of Patent: September 25, 2018
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Manish Motwani, Andrew Baptist
  • Patent number: 10083097
    Abstract: A method includes determining, by a first client and a second client module, that a first data object and a second data objects are related. The method further includes dispersed storage error encoding the first data object to produce a first plurality of sets of encoded data slices and the second data object to produce a second plurality of sets of encoded data slices. The method further includes sending, by the first client module, first requests regarding the first plurality of sets of encoded data slices to a set of storage units. The method further includes sending, by the second client module, second requests regarding the second plurality of sets of encoded data slices to the set of storage units. The method further includes processing, by a binding module, remaining phases of the first and second write requests as a single write operation for the first and second data objects.
    Type: Grant
    Filed: September 26, 2016
    Date of Patent: September 25, 2018
    Assignee: International Business Machines Corporation
    Inventors: Michael Colin Storm, Wesley Leggette, Manish Motwani, Greg Dhuse, Jason K. Resch, Andrew Baptist
  • Patent number: 10075523
    Abstract: A method begins by a dispersed storage (DS) processing module receiving data for storage and generating a dispersed storage network (DSN) source name for the data. The method continues with the DS processing module determining whether substantially identical data to the data has been previously stored in memory of the DSN. When the substantially identical data has been previously stored in the memory of the DSN, the method continues with the DS processing module generating an object linking file that links the data to the substantially identical data, dispersed storage error encoding the object linking file to produce a set of encoded link file slices, and outputting the set of encoded link file slices for storage in the memory of the DSN.
    Type: Grant
    Filed: February 4, 2014
    Date of Patent: September 11, 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: 10069915
    Abstract: A method begins with a set of storage units receiving a plurality of sets of non-locking write requests from a plurality of computing devices. The method continues with each storage unit storing an encoded data slice of a respective one of the non-locking write requests of each set and sending a write response regarding the respective one of the non-locking write requests. The method continues with a computing device determining whether a threshold number of write responses regarding a corresponding one of the plurality of sets of non-locking write requests has an expected ordering indication. When the threshold number of write responses has the expected ordering indication, the method continues with the computing device sending a set of write finalize requests to the set of storage units to facilitate finalizing storing the set of encoded data slices of the corresponding one of the plurality of sets of non-locking write requests.
    Type: Grant
    Filed: December 31, 2015
    Date of Patent: September 4, 2018
    Assignee: International Business Machines Corporation
    Inventors: Greg Dhuse, Andrew Baptist, Ilya Volvovski, Ethan S. Wozniak, Jason K. Resch
  • Patent number: 10049120
    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: Grant
    Filed: July 8, 2015
    Date of Patent: August 14, 2018
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    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
  • Patent number: 10042564
    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: Grant
    Filed: May 8, 2015
    Date of Patent: August 7, 2018
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Manish Motwani, Wesley Leggette, Andrew Baptist
  • Patent number: 10037140
    Abstract: A method includes a processing module of a storage unit of a dispersed storage network (DSN) monitoring input/output (IO) rates of a plurality of disk drives, where access requests for encoded data slices occur at varying rates. The method continues with the processing module determining that the IO rate of a disk drive is exceeding a desired maximum IO rate and identifying a pending access request for an encoded data slice stored in the disk drive. The method continues with the processing module evaluating disk drive processing rates of other storage units that are storing other encoded data slices of a set of encoded data slices that includes the encoded data slice to determine whether the encoded data slice is needed to satisfy the pending access request. When the encoded data slice is needed, the method continues with the processing module migrating the encoded data slice to another disk drive.
    Type: Grant
    Filed: August 5, 2014
    Date of Patent: July 31, 2018
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Andrew Baptist, Joseph Martin Kaczmarek
  • Patent number: 10037171
    Abstract: A method begins by a computing device of a dispersed storage network (DSN) encoding digital content into a plurality of sets of encoded data slices and generating at least one set of write commands, where a write command includes an indication of a number of copies of an encoded data slice to be stored. The method continues by a set of storage units of the DSN storing the plurality of sets of encoded data slices, where a storage unit stores the number of copies of the encoded data slice in accordance with the write command. The method continues by the set of storage units receiving a plurality of retrieval requests from a plurality of requesting computing devices regarding the digital content and fulfilling the plurality of retrieval requests utilizing various combinations of copies of encoded data slices of the plurality of sets of encoded data slices.
    Type: Grant
    Filed: March 2, 2016
    Date of Patent: July 31, 2018
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Andrew Baptist, Kumar Abhijeet, Jason K. Resch
  • Publication number: 20180191633
    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: Application
    Filed: February 23, 2018
    Publication date: July 5, 2018
    Inventors: Jason K. Resch, Greg Dhuse, Manish Motwani, Andrew Baptist, Wesley Leggette, Ravi Khadiwala
  • Patent number: 10013471
    Abstract: A method begins by a by a first device of a dispersed storage network (DSN) sending a set of write revision requests to storage units of the DSN. The method continues with one of the storage units generating a write revision response regarding a potential write conflict. The method continues with the first device receiving the write revision responses to produce a set of received write revision responses and interpreting the set of received write revision responses to determine whether a write conflict exists. When the write conflict exists, the method continues with the first device issuing a set of write roll back requests to the storage units. When the write conflict does not exist, the method continues with the first device issuing a set of next phase write requests to the storage units regarding storing revised encoded data slices.
    Type: Grant
    Filed: July 29, 2016
    Date of Patent: July 3, 2018
    Assignee: International Business Machines Corporation
    Inventors: Andrew Baptist, Greg Dhuse, Ilya Volvovski
  • Patent number: 10013444
    Abstract: A method begins by a dispersed storage (DS) processing module determining to create or modify a data object index key of a data object regarding an attribute of a plurality of attribute categories. The method continues with the DS processing module entering a process to update a data object level index node by retrieving the data object level index node from a set of dispersed storage (DS) units. The method continues with the DS processing module updating and encoding the data object level index node to produce a set of slices. The method continues with the DS processing module generating a set of write commands to write the set of slices to the set of DS units. When less than a threshold number of the set of write commands are successfully executed by the set of DS units, repeating the process to update the data object level index node.
    Type: Grant
    Filed: February 25, 2013
    Date of Patent: July 3, 2018
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Greg Dhuse, Wesley Leggette, Adam Michael Gray, Ilya Volvovski, Andrew Baptist, Jason K. Resch
  • Patent number: 9998540
    Abstract: A method begins by a set of distributed storage and task (DST) execution units receiving a set of partial tasks and data, where a partial task of the set of partial tasks includes a common task and a unique partial sub-task. The method continues with the set of DST execution units executing the common task on the data to produce a set of preliminary partial results. The method continues with a first DST execution unit of the set of DST execution units generating first interim data based on the at least some of the set of preliminary partial results. The method continues with the first DST execution unit executing a first unique partial sub-task on at least one of a first portion of the data and the first interim data to produce a first partial result.
    Type: Grant
    Filed: January 11, 2017
    Date of Patent: June 12, 2018
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Andrew Baptist, Greg Dhuse, Wesley Leggette, Jason K. Resch