Patents by Inventor Thomas Dubucq

Thomas Dubucq 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: 11983155
    Abstract: A method includes: obtaining, by a computing device, a first work item from a first index, wherein the first work item represents a namespace of a bucket of a vault in a dispersed storage network; dividing, by the computing device, the namespace into plural ranges of names; creating, by the computing device, plural second work items, each respective one of the plural second work items including a respective one of the plural ranges of names; and adding, by the computing device, each of the plural second work items to a second index.
    Type: Grant
    Filed: January 14, 2020
    Date of Patent: May 14, 2024
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Vivek Bajpai, Thomas Dubucq, Kevin Michael Freese
  • Patent number: 11740825
    Abstract: A method includes: identifying, by a first program module, a bucket having an object lifecycle management rule in a dispersed storage network; creating, by a second program module, ranges of object names included in a namespace of the bucket; determining, by a third program module and for respective objects in each of the ranges, whether the respective objects satisfy the object lifecycle management rule of the bucket; and performing, by a fourth program module and based on the determining, an action on one of the respective objects that satisfies the object lifecycle management rule, the action being defined by the object lifecycle management rule.
    Type: Grant
    Filed: January 14, 2020
    Date of Patent: August 29, 2023
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: David Brittain Bolen, Kevin Michael Freese, Thomas Dubucq, Akila Srinivasan, Wesley Leggette, Vivek Bajpai
  • Patent number: 11513700
    Abstract: A method for execution by one or more processing modules of one or more computing devices of a dispersed storage network (DSN). The method includes performing multiple splits in a single operation with a dispersed lockless concurrent index (DLCI) backed by a distributed transaction protocol by determining how many nodes n are required to hold data object entries, adding the n nodes to a distributed transaction, and when a parent node does not require a cascading split, adding it to the distributed transaction, and when the parent node needs to be split, recursively applying the determining and adding steps to the parent node until reaching a node that does not need to be split or is a root node of the DLCI.
    Type: Grant
    Filed: March 4, 2019
    Date of Patent: November 29, 2022
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Greg R. Dhuse, Kevin M. Freese, Thomas Dubucq
  • Patent number: 11500700
    Abstract: A method, system, and computer program product for implementing indexes in a dispersed storage network (dsNet) are provided. The method accesses a work queue containing a set of work items as a set of key-value pairs. The key-value pairs are tuples including a work identifier and a work lease timestamp. The method selects a first work identifier and a first lease timestamp for a new work. The set of work items and the new work item are ordered according to a priority scheme to generate a modified work queue. Based on the modified work queue, the method transmits a work request to a plurality of data source units. The work request including a hash parameter and a bit parameter. The hash parameter is associated with a key-value pair of the modified work queue. The bit parameter indicates a number of bits of the hash parameter to consider.
    Type: Grant
    Filed: May 28, 2020
    Date of Patent: November 15, 2022
    Assignee: International Business Machines Corporation
    Inventors: Thomas Dubucq, Gregory R. Dhuse
  • Patent number: 11243695
    Abstract: A method, system, and computer program product for implementing indexes in a dispersed storage network (dsNet) are provided. The method accesses an unordered work queue containing a set of key-value pairs. A subset of expired key-value pairs are determined from the set of key-value pairs. The method transmits a work request to a plurality of data source units. The work request indicates a key-value pair being selected at random from the subset of expired key-value pairs. A threshold number of work responses is received from the plurality of data source units. The work responses include a set of available key-value pairs. The method selects an available key-value pair from the set of available key-value pairs and generates a work lease on the available key-value pair.
    Type: Grant
    Filed: May 28, 2020
    Date of Patent: February 8, 2022
    Assignee: International Business Machines Corporation
    Inventors: Thomas Dubucq, Gregory R. Dhuse
  • Patent number: 11194660
    Abstract: A method, system, and computer program product for implementing indexes in a dispersed storage network (dsNet) are provided. The method receives a key-value list request including a start key. In response to the key-value list request, a set of key-value list requests are transmitted to a plurality of data source units within a dispersed storage network (dsNet). The method identifies a set of keys returned from the plurality of data source units and identifies a subset of keys from the set of keys returned. The subset of keys including a union of the set of keys. The key-value pairs associated with the subset of keys are restored. The method generates a key-value list response to the key-value list request. The key-value list response includes the restored key-value pairs associated with the subset of keys.
    Type: Grant
    Filed: May 28, 2020
    Date of Patent: December 7, 2021
    Assignee: International Business Machines Corporation
    Inventors: Gregory R. Dhuse, Thomas Dubucq
  • Publication number: 20210373777
    Abstract: A method, system, and computer program product for implementing indexes in a dispersed storage network (dsNet) are provided. The method accesses an unordered work queue containing a set of key-value pairs. A subset of expired key-value pairs are determined from the set of key-value pairs. The method transmits a work request to a plurality of data source units. The work request indicates a key-value pair being selected at random from the subset of expired key-value pairs. A threshold number of work responses is received from the plurality of data source units. The work responses include a set of available key-value pairs. The method selects an available key-value pair from the set of available key-value pairs and generates a work lease on the available key-value pair.
    Type: Application
    Filed: May 28, 2020
    Publication date: December 2, 2021
    Inventors: Thomas Dubucq, Gregory R. Dhuse
  • Publication number: 20210373983
    Abstract: A method, system, and computer program product for implementing indexes in a dispersed storage network (dsNet) are provided. The method accesses a work queue containing a set of work items as a set of key-value pairs. The key-value pairs are tuples including a work identifier and a work lease timestamp. The method selects a first work identifier and a first lease timestamp for a new work. The set of work items and the new work item are ordered according to a priority scheme to generate a modified work queue. Based on the modified work queue, the method transmits a work request to a plurality of data source units. The work request including a hash parameter and a bit parameter. The hash parameter is associated with a key-value pair of the modified work queue. The bit parameter indicates a number of bits of the hash parameter to consider.
    Type: Application
    Filed: May 28, 2020
    Publication date: December 2, 2021
    Inventors: Thomas Dubucq, Gregory R. Dhuse
  • Publication number: 20210373999
    Abstract: A method, system, and computer program product for implementing indexes in a dispersed storage network (dsNet) are provided. The method receives a key-value list request including a start key. In response to the key-value list request, a set of key-value list requests are transmitted to a plurality of data source units within a dispersed storage network (dsNet). The method identifies a set of keys returned from the plurality of data source units and identifies a subset of keys from the set of keys returned. The subset of keys including a union of the set of keys. The key-value pairs associated with the subset of keys are restored. The method generates a key-value list response to the key-value list request. The key-value list response includes the restored key-value pairs associated with the subset of keys.
    Type: Application
    Filed: May 28, 2020
    Publication date: December 2, 2021
    Inventors: Gregory R. Dhuse, Thomas Dubucq
  • Publication number: 20210373998
    Abstract: A method, system, and computer program product for implementing indices in a dispersed storage network (dsNet) are provided. The method receives a key-value pair to be stored in a dsNet. The method routes the key and the value within a data source containing a SourceName repository and a data buffer. The key is routed to the SourceName repository and the value is routed to the data buffer. The data source is erasure encoded into a set of data slices having a slice name and a slice buffer. The method stores the set of data slices within the dsNet. The method generates a namespace index with an index entry for the key-value pair. The index entry represents the key-value pair as a SourceName and a data source indicator with the SourceName and the data source indicator being associated with the set of data slices.
    Type: Application
    Filed: May 28, 2020
    Publication date: December 2, 2021
    Inventors: Gregory R. Dhuse, Ravi Khadiwala, Andrew Dominic Baptist, Jason Resch, Manish Motwani, Thomas Dubucq
  • Patent number: 11188419
    Abstract: A method, system, and computer program product for implementing indices in a dispersed storage network (dsNet) are provided. The method receives a key-value pair to be stored in a dsNet. The method routes the key and the value within a data source containing a SourceName repository and a data buffer. The key is routed to the SourceName repository and the value is routed to the data buffer. The data source is erasure encoded into a set of data slices having a slice name and a slice buffer. The method stores the set of data slices within the dsNet. The method generates a namespace index with an index entry for the key-value pair. The index entry represents the key-value pair as a SourceName and a data source indicator with the SourceName and the data source indicator being associated with the set of data slices.
    Type: Grant
    Filed: May 28, 2020
    Date of Patent: November 30, 2021
    Assignee: International Business Machines Corporation
    Inventors: Gregory R. Dhuse, Ravi Khadiwala, Andrew Dominic Baptist, Jason Resch, Manish Motwani, Thomas Dubucq
  • Publication number: 20210216513
    Abstract: A method includes: obtaining, by a computing device, a first work item from a first index, wherein the first work item represents a namespace of a bucket of a vault in a dispersed storage network; dividing, by the computing device, the namespace into plural ranges of names; creating, by the computing device, plural second work items, each respective one of the plural second work items including a respective one of the plural ranges of names; and adding, by the computing device, each of the plural second work items to a second index
    Type: Application
    Filed: January 14, 2020
    Publication date: July 15, 2021
    Inventors: Vivek BAJPAI, Thomas DUBUCQ, Kevin Michael FREESE
  • Publication number: 20210216233
    Abstract: A method includes: identifying, by a first program module, a bucket having an object lifecycle management rule in a dispersed storage network; creating, by a second program module, ranges of object names included in a namespace of the bucket; determining, by a third program module and for respective objects in each of the ranges, whether the respective objects satisfy the object lifecycle management rule of the bucket; and performing, by a fourth program module and based on the determining, an action on one of the respective objects that satisfies the object lifecycle management rule, the action being defined by the object lifecycle management rule.
    Type: Application
    Filed: January 14, 2020
    Publication date: July 15, 2021
    Inventors: David Brittain Bolen, Kevin Michael Freese, Thomas Dubucq, Akila Srinivasan, Wesley Leggette, Vivek Bajpai
  • Patent number: 11036705
    Abstract: Traversing nodes of a Dispersed Lockless Concurrent Index (DLCI), by retrieving a node look-up request from a request queue, executing the look-up request across nodes of a DLCI, storing the look-up request results in a results queue, and adding new look-up requests associated with any node pointers from the node(s) of the look-up request, in the request queue.
    Type: Grant
    Filed: February 27, 2019
    Date of Patent: June 15, 2021
    Assignee: International Business Machines Corporation
    Inventors: Thomas Dubucq, Kevin Michael Freese
  • Patent number: 11010246
    Abstract: A method includes registering, by a first computing device, with a distributed storage network (DSN) to indicate that a first storage site is connected via a common local area network with the first computing device and is the primary storage site for the first computing device. The method continues with the first computing device to store a write threshold number of encoded data slices (EDSs) to the first storage site, obtaining a first writing pattern for writing the write threshold number of EDSs to the first plurality of storage units, and transmitting at least a portion of a remaining number of EDSs to one or more storage units at a second storage site, where the remaining number of EDSs are EDSs not included in the write threshold number of EDSs and the second storage site and the first storage site are each one of a sharing group of storage sites.
    Type: Grant
    Filed: July 11, 2019
    Date of Patent: May 18, 2021
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Thomas Dubucq, Daniel J. Scholl
  • Publication number: 20200285404
    Abstract: A method for execution by one or more processing modules of one or more computing devices of a dispersed storage network (DSN). The method includes performing multiple splits in a single operation with a dispersed lockless concurrent index (DLCI) backed by a distributed transaction protocol by determining how many nodes n are required to hold data object entries, adding the n nodes to a distributed transaction, and when a parent node does not require a cascading split, adding it to the distributed transaction, and when the parent node needs to be split, recursively applying the determining and adding steps to the parent node until reaching a node that does not need to be split or is a root node of the DLCI.
    Type: Application
    Filed: March 4, 2019
    Publication date: September 10, 2020
    Inventors: Greg R. Dhuse, Kevin M. Freese, Thomas Dubucq
  • Publication number: 20200272611
    Abstract: Traversing nodes of a Dispersed Lockless Concurrent Index (DLCI), by retrieving a node look-up request from a request queue, executing the look-up request across nodes of a DLCI, storing the look-up request results in a results queue, and adding new look-up requests associated with any node pointers from the node(s) of the look-up request, in the request queue.
    Type: Application
    Filed: February 27, 2019
    Publication date: August 27, 2020
    Inventors: Thomas Dubucq, Kevin Michael Freese
  • Publication number: 20190332475
    Abstract: A method includes registering, by a first computing device, with a distributed storage network (DSN) to indicate that a first storage site is connected via a common local area network with the first computing device and is the primary storage site for the first computing device. The method continues with the first computing device to store a write threshold number of encoded data slices (EDSs) to the first storage site, obtaining a first writing pattern for writing the write threshold number of EDSs to the first plurality of storage units, and transmitting at least a portion of a remaining number of EDSs to one or more storage units at a second storage site, where the remaining number of EDSs are EDSs not included in the write threshold number of EDSs and the second storage site and the first storage site are each one of a sharing group of storage sites.
    Type: Application
    Filed: July 11, 2019
    Publication date: October 31, 2019
    Inventors: Thomas Dubucq, Daniel J. Scholl
  • Patent number: 10394650
    Abstract: A method includes utilizing, by a first computing device, a first writing pattern to write a set of encoded data slices to a sharing group of sites. The first writing pattern includes writing a write threshold number of encoded data slices to storage units of a first site and writing a remaining number of encoded data slices to another storage unit(s) in another site(s). The method further includes sending, by storage units of the first site, encoded data slices of up to the write threshold number to other storage units in accordance with an inter-site storage unit relationship. The method further includes, when indicating in the inter-site storage unit relationship, sending, by storage unit(s) of the other site(s), encoded data slices of the remaining number of encoded data slices to other storage units in accordance with the inter-site storage unit relationship.
    Type: Grant
    Filed: June 3, 2016
    Date of Patent: August 27, 2019
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Thomas Dubucq, Daniel J. Scholl
  • Patent number: 10241677
    Abstract: A storage unit (SU) includes an interface configured to interface and communicate with a dispersed storage network (DSN), a memory that stores operational instructions, and a processing module operably coupled to the interface and memory such that the processing module, when operable within the SU based on the operational instructions, is configured to perform various operations. The SU stores at least one encoded data slice (EDS) of first EDSs corresponding to a data object that are distributedly stored in first SUs and also an intent message that includes specifications for consistency between the data object and metadata of the data object. A second set of EDSs corresponding to the metadata are distributedly stored in second SUs. The SU services the intent message to determine consistency of the data object and the metadata based on the specifications and deletes the intent message when they are consistent.
    Type: Grant
    Filed: February 24, 2017
    Date of Patent: March 26, 2019
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Thomas Dubucq, Jeremy S. Jarczyk, Ravi V. Khadiwala, Manish Motwani, Renars W. Narubin, Jason K. Resch, Daniel J. Scholl, Yogesh R. Vedpathak