Patents by Inventor Jason K. Resch

Jason K. Resch 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).

  • Publication number: 20190220354
    Abstract: A method includes a computing device determining error coding dispersal storage function parameters to be utilized in a dispersed storage error encoding process of a data object. The method further includes the computing device dividing the dispersed storage error encoding process into a plurality of dispersed storage error encoding tasks. The method further includes allocating, by the computing device, the plurality of dispersed storage error encoding tasks to a plurality of central processing units (CPUs) available to the computing device. The method further includes dispersed storage error encoding, by the CPUs, the data segments into the plurality of sets of encoded data slices in accordance with the dispersed storage error encoding tasks. The method further includes sending, by the computing device, the plurality of sets of encoded data slices to storage units of the DSN for storage therein.
    Type: Application
    Filed: March 27, 2019
    Publication date: July 18, 2019
    Inventors: Andrew D. Baptist, Greg R. Dhuse, Jason K. Resch, Ilya Volvovski
  • Publication number: 20190220911
    Abstract: A computing device that includes an interface, a memory, and a processing module receives a data access request from a requesting computing device and processes them to produce a set of distributed storage (DS) access requests. The computing device then transmits the set of DS access requests to a set of storage units (SUs) via a DSN connection that is between the computing device and the set of SUs and monitors the DSN connection to generate utilization information. The computing device then receives a set of DS access responses from the set of SUs via the DSN connection and monitors the DSN connection to generate updated utilization information. The computing device then transmits a data access response to the requesting computing device and generates billing information based on at least one of the updated utilization information associated with the DSN connection, a level of billing, and a billing rate.
    Type: Application
    Filed: March 20, 2019
    Publication date: July 18, 2019
    Inventors: Ilya Volvovski, S. Christopher Gladwin, Gary W. Grube, Timothy W. Markison, Jason K. Resch, Thomas F. Shirley, JR., Greg R. Dhuse, Manish Motwani, Andrew D. Baptist, Wesley B. Leggette
  • Patent number: 10353772
    Abstract: A method includes receiving a first write request that includes a first encoded data slice, a slice name, a new revision level associated with the slice name, and a previous revision level associated with the slice name. The method further includes determining whether another write request from another requesting device is pending. The other write request includes another encoded data slice, the slice name, the new revision level, and the previous revision level. The method further includes when the other write request is pending, adding the first write request to a list of pending write requests for the slice name. The method further includes generating a write response to the first write request to include the list of pending write requests. The method further includes receiving a finalize request for the first or the other encoded data slice. The method further includes closing the list of pending write requests.
    Type: Grant
    Filed: May 31, 2016
    Date of Patent: July 16, 2019
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Andrew D. Baptist, Greg R. Dhuse, Ravi V. Khadiwala, Jason K. Resch
  • Patent number: 10346250
    Abstract: A method includes determining an acceptable site failure number for storing a set of encoded data slices based on available sites and storage units within the available sites. The method further includes determining dispersed storage error encoding parameters based on the acceptable site failure number, wherein the parameters includes a decode threshold number and a total width number. The method further includes encoding, in accordance with the parameters, a data segment of data to produce the set of encoded data slices. The method further includes generating a slice mapping based on the acceptable site failure number, the available sites, and the storage units within the available storage units within the available sites. The method further includes sending, based on the slice mapping, the set of encoded data slices to at least some of the storage units within at least some of the available sites for storage therein.
    Type: Grant
    Filed: November 14, 2016
    Date of Patent: July 9, 2019
    Assignee: International Business Machines Corporation
    Inventors: Ravi Khadiwala, Wesley Leggette, Andrew Baptist, Greg Dhuse, Ilya Volvovski, Jason K. Resch, Manish Motwani
  • Patent number: 10346218
    Abstract: A processing system in a dispersed storage and a task (DST) network operates by receiving data and a corresponding task; identifying candidate DST execution units for executing partial tasks of the corresponding task; receiving distributed computing capabilities of the candidate DST execution units; selecting a subset of DST execution units of the candidate DST execution units to favorably execute the partial tasks of the corresponding task; determining task partitioning of the corresponding task into the partial tasks based on one or more of the distributed computing capabilities of the subset of DST execution units; determining processing parameters of the data based on the task partitioning; partitioning the tasks based on the task partitioning to produce the partial tasks; processing the data in accordance with the processing parameters to produce slice groupings; and sending the slice groupings and the partial tasks to the subset of DST execution units.
    Type: Grant
    Filed: February 28, 2017
    Date of Patent: July 9, 2019
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Andrew D. Baptist, Greg R. Dhuse, S. Christopher Gladwin, Gary W. Grube, Wesley B. Leggette, Manish Motwani, Jason K. Resch, Thomas F. Shirley, Jr., Ilya Volvovski
  • Patent number: 10348640
    Abstract: A processing system in a dispersed storage and a task network DSTN determines whether or not to execute a partial task. When determined to execute the partial task, the processing system operates by determining execution steps and a schedule; identifying a portion of the contiguous data for execution of one or more steps of the execution steps; retrieving the portion of the contiguous data from the disk drive; executing the one or more steps of the execution steps in accordance with the schedule on the portion of the contiguous data to produce a partial result; dispersed storage error encoding the partial result to produce a plurality of sets of slices in accordance with dispersal parameters associated with one or more of the group of slices and the partial task; and facilitating storing a plurality of sets of slices in the DSTN.
    Type: Grant
    Filed: February 28, 2017
    Date of Patent: July 9, 2019
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Andrew D. Baptist, Greg R. Dhuse, S. Christopher Gladwin, Gary W. Grube, Wesley B. Leggette, Manish Motwani, Jason K. Resch, Thomas F. Shirley, Jr., Ilya Volvovski
  • Patent number: 10346246
    Abstract: A method for use in a dispersed storage network operates to initiate retrieval of a decode threshold number of encoded data slices of each of one or more sets of encoded data slices in accordance with a first recovery approach. When a recovery time frame expires prior to receiving a second decode threshold number of encoded data slices of each of the one or more second sets of encoded data slices, the method proceeds to select a second data recovery approach that differs from the first recovery approach; recover a sufficient number of encoded data slices in accordance with the second data recovery approach; and dispersed storage error decode the sufficient number of encoded data slices to produce recovered data.
    Type: Grant
    Filed: September 13, 2016
    Date of Patent: July 9, 2019
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Andrew D. Baptist, Jason K. Resch, Ilya Volvovski, Ethan S. Wozniak
  • Publication number: 20190205312
    Abstract: A method for execution by a rebuilding module includes detecting that less than a pillar width number of encoded data slices of a common revision are retrievable from a set of storage units. A decode threshold number of encoded data slices are retrieved and decoded to reproduce a data segment. The data segment is encoded to produce at least one encoded data slice and storage of the at least one encoded data slice in the set of storage units is facilitated in accordance with the common revision when determining to rebuild the at least one encoded data slice. The data segment is encoded to reproduce the set of encoded data slices and storage of the reproduced set of encoded data slices is facilitated in the set of storage units in accordance with a new revision when determining to not rebuild the at least one encoded data slice.
    Type: Application
    Filed: March 11, 2019
    Publication date: July 4, 2019
    Inventors: Asimuddin Kazi, Jason K. Resch
  • Publication number: 20190205211
    Abstract: A method for execution by an integrity processing unit includes performing a deterministic function on data for storage to produce an integrity value. The data and the integrity value are combined in accordance with a combining function to produce a data package. The processing system determines an encryption approach in response to determining to encrypt the data package. The data package is encrypted in accordance with the encryption approach to produce a secure package. The secure package is encoded to produce a set of slices. The set of slices is decoded to reproduce the secure package. The secure package is decrypted to reproduce the data package. The data package is de-combined in to generate reproduced data and a received integrity value. The deterministic function is performed on the data to produce a calculated integrity value, and the received integrity value is compared to the calculated integrity value.
    Type: Application
    Filed: March 11, 2019
    Publication date: July 4, 2019
    Inventors: Jason K. Resch, Wesley B. Leggette
  • Publication number: 20190205033
    Abstract: A method for execution by a dispersed storage and task (DST) processing unit of a dispersed storage network includes determining to store data in a storage pool utilizing a maximum accessibility approach. A storage unit performance factor is determined for a plurality of storage units of the storage pool. A number of instances of data storage per storage unit is established based on the storage unit performance factor. A replication factor across the plurality of storage units of the storage pool is also established. A total number C of storage instances for the data is determined based on the number of instances of data storage per storage unit and the replication factor. C number of source names for C storage instances of the data are generated. Storage of the C storage instances of the data is facilitated.
    Type: Application
    Filed: March 11, 2019
    Publication date: July 4, 2019
    Inventors: Asimuddin Kazi, Jason K. Resch
  • Patent number: 10331698
    Abstract: A method for execution by a rebuilding module includes detecting that less than a pillar width number of encoded data slices of a common revision are retrievable from a set of storage units. A decode threshold number of encoded data slices are retrieved and decoded to reproduce a data segment. The data segment is encoded to produce at least one encoded data slice and storage of the at least one encoded data slice in the set of storage units is facilitated in accordance with the common revision when determining to rebuild the at least one encoded data slice. The data segment is encoded to reproduce the set of encoded data slices and storage of the reproduced set of encoded data slices is facilitated in the set of storage units in accordance with a new revision when determining to not rebuild the at least one encoded data slice.
    Type: Grant
    Filed: November 27, 2017
    Date of Patent: June 25, 2019
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Asimuddin Kazi, Jason K. Resch
  • Patent number: 10331518
    Abstract: A method for execution by an integrity processing unit includes performing a deterministic function on data for storage to produce an integrity value. The data and the integrity value are combined in accordance with a combining function to produce a data package. The processing system determines an encryption approach in response to determining to encrypt the data package. The data package is encrypted in accordance with the encryption approach to produce a secure package. The secure package is encoded to produce a set of slices. The set of slices is decoded to reproduce the secure package. The secure package is decrypted to reproduce the data package. The data package is de-combined in to generate reproduced data and a received integrity value. The deterministic function is performed on the data to produce a calculated integrity value, and the received integrity value is compared to the calculated integrity value.
    Type: Grant
    Filed: November 20, 2017
    Date of Patent: June 25, 2019
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Jason K. Resch, Wesley B. Leggette
  • Patent number: 10331384
    Abstract: A method for execution by a dispersed storage and task (DST) processing unit of a dispersed storage network includes determining to store data in a storage pool utilizing a maximum accessibility approach. A storage unit performance factor is determined for a plurality of storage units of the storage pool. A number of instances of data storage per storage unit is established based on the storage unit performance factor. A replication factor across the plurality of storage units of the storage pool is also established. A total number C of storage instances for the data is determined based on the number of instances of data storage per storage unit and the replication factor. C number of source names for C storage instances of the data are generated. Storage of the C storage instances of the data is facilitated.
    Type: Grant
    Filed: December 13, 2017
    Date of Patent: June 25, 2019
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Asimuddin Kazi, Jason K. Resch
  • Patent number: 10331519
    Abstract: Methods for use in a dispersed storage network (DSN) to encode data using threshold based secret sharing schemes. In one embodiment, a computing device uses a first threshold based secret sharing scheme in accordance with first secret sharing parameters to encode a data segment of a data file to produce a set of encoded data shares. The computing device then sends the set of encoded data shares to a set of storage units, including sending an encoded data share to a first storage unit of the set of storage units. Upon receiving the encoded data share, the first storage unit encodes the encoded data share using a second threshold based secret sharing scheme in accordance with second secret sharing parameters to produce a set of encoded data sub-shares. The first storage unit then stores the set of encoded data sub-shares in a set of memory devices of the storage unit.
    Type: Grant
    Filed: November 6, 2017
    Date of Patent: June 25, 2019
    Assignee: International Business Machines Corporation
    Inventors: Jason K. Resch, Ahmad Alnafoosi
  • Patent number: 10334046
    Abstract: A method begins by a dispersed storage (DS) processing module dividing a very large data object into a plurality of data regions and generating a data object storage tracking table that includes sections for identifying one or more data regions that are available or unavailable for retrieval. The method continues with the DS processing module dividing a first data region into data segments and disperse storage error encoding the data segments to produce sets of encoded data slices. The method continues with the DS processing module sending DSN write requests regarding storing the sets of encoded data slices to storage units and when at least a write threshold number of write responses is received for each of the sets of encoded data slices, updating the data object storage tracking table to indicate that the first data region is available for retrieval.
    Type: Grant
    Filed: July 21, 2016
    Date of Patent: June 25, 2019
    Assignee: International Business Machines Corporation
    Inventors: Wesley Leggette, Jason K. Resch, Yogesh Ramesh Vedpathak, Sebastien Vas, Eric Gunnar Smith, Adam Michael Gray
  • Publication number: 20190187935
    Abstract: A computing device includes an interface configured to interface and communicate with a dispersed storage network (DSN), a memory that stores operational instructions, and processing circuitry operably coupled to the interface and to the memory. The processing circuitry is configured to execute the operational instructions to perform various operations and functions. The computing device operates based on a store data request from a requesting entity to dispersed error encode a data segment associated with a data object to generate a set of encoded data slices (EDSs). The computing device selects a write threshold number of EDSs based on a desired consistency level indicator and issues a write request to storage unit(s) (SU(s)). The computing device receives write response(s) from the SU(s) and, based on write response(s) received from the at least some of the SU(s), provides a store data response to the requesting entity.
    Type: Application
    Filed: February 25, 2019
    Publication date: June 20, 2019
    Inventors: S. Christopher Gladwin, Jason K. Resch
  • Publication number: 20190187911
    Abstract: A computing device includes an interface configured to interface and communicate with a dispersed storage network (DSN), a memory that stores operational instructions, and processing circuitry operably coupled to the interface and to the memory. The processing circuitry is configured to execute the operational instructions to perform various operations and functions. The computing device receives a store data object request and facilitates distributed storage of the data object in storage units (SUs). the computing device applies unique deterministic functions to the object name to generate deterministic values. For a deterministic value, the computing device identifies a corresponding SU based on the deterministic value and the bucket mapping scheme. The computing device transmits an update bucket request to the corresponding SU to be used by the corresponding SU to update a state value of a bucket that is locally stored by the corresponding SU to indicate an active state.
    Type: Application
    Filed: February 25, 2019
    Publication date: June 20, 2019
    Inventors: Greg R. Dhuse, Jason K. Resch
  • Publication number: 20190190844
    Abstract: Methods and apparatus for a decentralized agreement protocol in a dispersed storage network (DSN) are disclosed. In various embodiments, a processing module(s) receives a ranked scoring information request regarding a set of candidate resources of the DSN. For each candidate resource, a deterministic function is performed on a location identifier (ID) associated with the candidate resource and an asset ID associated with the ranked scoring information request to produce a set of interim results. A normalizing function is performed on each interim result to produce a set of normalized interim results. A scoring function is performed on each normalized interim result utilizing a location weight associated with the candidate resource corresponding to the interim result to produce a score of a set of scores. The scores of the set of scores are ranked by a ranking function to produce ranked scoring information that is provided to the requesting entity.
    Type: Application
    Filed: February 8, 2019
    Publication date: June 20, 2019
    Inventors: Jason K. Resch, Greg R. Dhuse, Ravi V. Khadiwala, Ilya Volvovski
  • Patent number: 10324657
    Abstract: Systems and methods for accounting for data whose rebuilding is deferred in a dispersed storage network. The methods include determining a number of compromised slices associated with a dispersed storage unit. The number of existing slices associated with the dispersed storage unit is also determined. A comparison of the number of compromised slices plus the number of existing slices associated with the dispersed storage unit, to a storage capacity, is performed in order to produce a capacity determination. Write requests directed towards the dispersed storage unit may be failed based on the capacity determination. For example, the DS unit may fail write requests, when a write request would cause the dispersed storage unit to exceed the storage capacity of the dispersed storage unit when taking into consideration existing slices as well as compromised slices that need to be rebuilt.
    Type: Grant
    Filed: November 16, 2016
    Date of Patent: June 18, 2019
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Wesley B. Leggette, Jason K. Resch
  • Patent number: 10324791
    Abstract: A method includes a computing device determining dispersed storage error encoded parameters for dispersed storage error encoding a data object. The method further includes the computing device dividing the dispersed storage error encoding into a plurality of encoding tasks. The method further includes allocating, by the computing device, the encoding tasks to a plurality of central processing units (CPUs) available to the computing device. The method further includes dispersed storage error encoding, by the CPUs, the data segments into the plurality of sets of encoded data slices in accordance with the encoding tasks. The method further includes sending, by the computing device, the plurality of sets of encoded data slices to storage units of the DSN for storage therein.
    Type: Grant
    Filed: November 28, 2016
    Date of Patent: June 18, 2019
    Assignee: International Business Machines Corporation
    Inventors: Andrew D. Baptist, Greg R. Dhuse, Jason K. Resch, Ilya Volvovski