Patents by Inventor Andrew D. Baptist

Andrew D. 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).

  • Publication number: 20200097181
    Abstract: A method for execution by a dispersed storage and task (DST) execution unit includes generating a first compaction object by performing a compaction function on a first previously compacted object and first data slices that compare favorably to a cold access threshold. Storage of the first previously compacted object in a cold memory region is replaced with the first compacted object, and the first data slices are removed from prior storage in different memory regions. A second compacted object is generated by performing the compaction function on a second previously compacted object and second data slices that compare favorably to a hot access threshold. Storage of the second previously compacted object in a hot memory region is replaced with the second compacted object, and the second data slices are removed from prior storage in different memory regions.
    Type: Application
    Filed: September 26, 2018
    Publication date: March 26, 2020
    Inventors: Ilya Volvovski, Praveen Viraraghavan, Andrew D. Baptist, Jason K. Resch
  • Publication number: 20200097182
    Abstract: A method for execution by a dispersed storage and task (DST) execution unit includes generating a first compaction object by performing a compaction function on a first previously compacted object and first data slices that compare favorably to a cold access threshold. Storage of the first previously compacted object in a cold memory region is replaced with the first compacted object, and the first data slices are removed from prior storage in different memory regions. A second compacted object is generated by performing the compaction function on a second previously compacted object and second data slices that compare favorably to a hot access threshold. Storage of the second previously compacted object in a hot memory region is replaced with the second compacted object, and the second data slices are removed from prior storage in different memory regions.
    Type: Application
    Filed: July 22, 2019
    Publication date: March 26, 2020
    Inventors: Ilya Volvovski, Praveen Viraraghavan, Andrew D. Baptist, Jason K. Resch
  • Patent number: 10599502
    Abstract: A method begins with one or more processing modules of a dispersed storage network (DSN) identifying a set of encoded data slices generated from a data segment based on an error encoding dispersal function. The method continues with the one or more processing modules identifying a set of storage units (SUs) that distributedly store the set of EDSs, and determining a first plurality of performance values associated with the set of SUs, followed by the one or more processing modules receiving from the set of SUs a second plurality of performance values generated by the set of SUs.
    Type: Grant
    Filed: August 7, 2017
    Date of Patent: March 24, 2020
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Andrew D. Baptist, Bart R. Cilfone, Alan M. Frazier, Wesley B. Leggette, Jason K. Resch
  • Patent number: 10592132
    Abstract: A method begins by sending a set of read requests to a first set of storage units of the DSN. The method continues by sending a set of read foreign requests to a second set of storage units of the DSN. The method continues by receiving favorable responses to the set of read requests. When a favorable response is received regarding the read foreign request, the method continues by determining whether an encoded data slice (EDS) contained in the favorable response is needed to obtain a decode threshold number of EDSs. When the EDS is needed, the method continues by including the EDSs contained in the favorable response regarding the read foreign request with other EDSs received in the favorable responses to the set of read requests to produce the decode threshold number of EDSs. The method continues by decoding the threshold number of EDSs to recover the data segment.
    Type: Grant
    Filed: December 18, 2017
    Date of Patent: March 17, 2020
    Assignee: PURE STORAGE, INC.
    Inventors: Andrew D. Baptist, Greg R. Dhuse, Ravi V. Khadiwala, Jason K. Resch, Wesley B. Leggette, Trevor J. Vossberg, S. Christopher Gladwin
  • Patent number: 10585748
    Abstract: A method begins by a computing device of a dispersed storage network (DSN) maintaining a queue of pending requests to access the DSN while new requests are added to the queue and executed requests are deleted from the queue. The method continues by the computing device determining, for each pending request in the queue, a prioritization score to produce a plurality of prioritization scores. The prioritization score is determined by determining an identity of a requestor associated with a pending request, obtaining a trust score based on the requestor's identity, and obtaining a compliance score based on the requestor's identity. The trust score indicates the requestor's level of legitimate use of the DSN and the compliance score indicates the requestor's level of compliance with DSN system requests. The method continues by the computing device executing pending requests of the queue in accordance with the plurality of prioritization scores.
    Type: Grant
    Filed: September 29, 2017
    Date of Patent: March 10, 2020
    Assignee: International Business Machines Corporation
    Inventors: Andrew D. Baptist, Bart R. Cilfone, Greg R. Dhuse, Harsha Hegde, Wesley B. Leggette, Manish Motwani, Jason K. Resch, Ilya Volvovski, Ethan S. Wozniak
  • Patent number: 10587691
    Abstract: Systems and methods for storing encoded data slices in a dispersed storage network (DSN) involve generating a set of write slice requests relating to the encoded data slices, outputting the set of write slice requests to dispersed storage units of the DSN, receiving write slice responses and determining whether to retry storing the set of encoded data slices based on one or more of the write slice responses. Determining whether to retry storing the set of encoded data slices may involve determining whether less than a write threshold number of favorable responses were received, for example in a time period, and/or whether an unfavorable response was received. Determining whether to retry may also be based on receiving a slow or non-response. For purposes of retrying, the systems and methods may also determine whether to modify the write slice requests, for example by modifying a revision number.
    Type: Grant
    Filed: November 17, 2017
    Date of Patent: March 10, 2020
    Assignee: PURE STORAGE, INC.
    Inventors: Greg R. Dhuse, Andrew D. Baptist, Ilya Volvovski, Jason K. Resch
  • Patent number: 10585715
    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: April 9, 2019
    Date of Patent: March 10, 2020
    Assignee: PURE STORAGE, INC.
    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: 10579309
    Abstract: A method is provided for increasing throughput in a distributed storage network (DSN). A storage unit (SU) of the DSN receives a set of access requests regarding a set of encoded data slices and determines whether processing one or more access requests from the set of access requests can be delayed. Based on performance information regarding the one or more access requests the SU queues the requests and delays the processing of the requests in order to achieve higher throughput.
    Type: Grant
    Filed: February 16, 2017
    Date of Patent: March 3, 2020
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Andrew D. Baptist, Greg R. Dhuse, Manish Motwani, Jason K. Resch, Praveen Viraraghavan, Ilya Volvovski, Ethan S. Wozniak
  • Patent number: 10565392
    Abstract: A method begins by storage units of a dispersed storage network (DSN) receiving data access requests regarding data that is dispersed storage error encoded to produce a set of encoded data slices. The method continues by some of the storage units determining whether at least some of the data access requests are verifiable update requests. When some of the data access requests are the verifiable update requests, the method continues by determining whether the data access requests are addressing data stored, or to be stored, within a verifiable update region affiliated within the some of the storage units. When within the verifiable update region, the method continues by generating and transmitting request verification information to other storage units of the some of the storage units. The method continues by executing the data access requests when a desired level of consistency of the request verification information is determined.
    Type: Grant
    Filed: November 28, 2017
    Date of Patent: February 18, 2020
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Jason K. Resch, Ravi V. Khadiwala, Brian F. Ober, Greg R. Dhuse, Andrew D. Baptist, Scott M. Horan, Wesley B. Leggette
  • Patent number: 10558621
    Abstract: A method includes sending, by a first computing device, a first set of write requests and sending, by a second computing device, a second set of write requests to a set of storage units. The method further includes receiving, by the first computing device, favorable write responses from a first subset of storage units of the set of storage units and receiving, by the second computing device, favorable write responses from a second subset of storage units. The method further includes determining, by the first computing device, whether a number of the favorable write responses from the first subset of storage units equals or exceeds a write threshold number. When the number of the favorable write responses from the first subset of storage units equals or exceeds the write threshold number, the first computing device sends a set of commit requests to the set of storage units.
    Type: Grant
    Filed: February 14, 2017
    Date of Patent: February 11, 2020
    Assignee: PURE STORAGE, INC.
    Inventors: Andrew D. Baptist, Greg R. Dhuse, Ilya Volvovski
  • Patent number: 10552341
    Abstract: Systems and Methods for data storage in a distributed storage network are disclosed. Unexpected errors can adversely affect consistency of both the content of a write (including the slice data), and the synchronicity between the written slices and metadata structures. To maintain consistency between these data structures, a sequencing of the order of writes and flushes to the memory devices for the different data structures may be enforced as follows: First: Slice content data is first written to the volatile memory (e.g. a cache memory) of a DS unit; Second: the Slice content data stored in volatile memory is “flushed” to a non-volatile bin (which bin is associated with a group of physical memory blocks in non-volatile memory); Third: after the flush of the slice content data to the bin (i.e. data is durable on the media device): metadata relating to the data is written.
    Type: Grant
    Filed: February 17, 2017
    Date of Patent: February 4, 2020
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Andrew D. Baptist, Joseph M. Kaczmarek, Manish Motwani, Praveen Viraraghavan, Ilya Volvovski
  • Patent number: 10545699
    Abstract: A method for execution by a computing device within a dispersed storage network (DSN). The method beings when data accesses occur for a data object of a storage container within the DSN. The method continues by updating, for at least some of the data accesses, an object value for the data object to produce an updated object value. The method continues by updating an object retention cost for the data object to produce an updated object retention cost. The method continues by updating a data object retention policy for the data object based on the updated object value and the updated object retentions costs. When one of the data accesses is a deletion event, the method continues by utilizing a current updated data object retention policy to determine a deletion-retention option for the data object. The method continues by executing the deletion-retention option on the data object.
    Type: Grant
    Filed: April 11, 2017
    Date of Patent: January 28, 2020
    Assignee: International Business Machines Corporation
    Inventors: Andrew D. Baptist, Bart R. Cilfone, Greg R. Dhuse, Harsha Hegde, Wesley B. Leggette, Manish Motwani, Jason K. Resch, Ilya Volvovski, Ethan S. Wozniak
  • Patent number: 10536525
    Abstract: A method includes a first computing device sending a first set of write requests regarding a set of encoded data slices to storage units. The method further includes a second computing device sending a second set of write requests regarding the set of encoded data slices to the storage units. The method further includes the first computing device receiving a first set of write response ballots from the storage units. The method further includes the second computing device receiving a second set of write response ballots from the storage units. When the first set of write response ballots is favorable, the method further includes the first computing device issuing a first set of finalize commands to the storage units. When the second set of write response ballots is favorable, the method further includes the second computing device issuing a second set of finalize commands to the storage units.
    Type: Grant
    Filed: October 30, 2018
    Date of Patent: January 14, 2020
    Assignee: International Business Machines Corporation
    Inventors: Andrew D. Baptist, Greg R. Dhuse, Ravi V. Khadiwala, Ilya Volvovski
  • Patent number: 10534668
    Abstract: A method for execution by a computing device includes generating a data segment to include a first data object for storage and a plurality of null data objects. The data segment is dispersed storage error encoded to produce a set of encoded data slices that includes a first encoded data slice that corresponds to the first data object, a plurality of null slices corresponding to the null data objects, and a remaining number of error coded slices. Storage of the set of encoded data slices in a set of storage units is facilitated. Storage of a second data object is facilitated, where one null data object is overwritten with the second data object. A partial contribution of the second data object is calculated for each of the error coded slices in accordance with a partial encoding approach. Each error coded slice is updated by utilizing the corresponding partial contribution.
    Type: Grant
    Filed: December 5, 2017
    Date of Patent: January 14, 2020
    Assignee: PURE STORAGE, INC.
    Inventors: Ethan S. Wozniak, Andrew D. Baptist, Greg R. Dhuse, Ilya Volvovski, Jason K. Resch
  • Patent number: 10534548
    Abstract: A method for ensuring appropriate content formatting of data prior to storage in a dispersed storage network (DSN) includes sending a content format verification code (“code”) to a secure execution module. The method further includes signing the code with a secure execution module signature to produce a trusted code and sending the trusted code to a trusted computing module. The method further includes sending, by the trusted computing module, the secure execution module signature and a trusted content format verification code identification to a dispersed storage (DS) processing unit. When the secure execution module signature and the trusted code ID are verified, the method includes sending a write request to the trusted computing module, determining whether the data is in the appropriate content format based on the trusted code, and when the data of the write request is in the appropriate format, sending the data to the DS processing unit.
    Type: Grant
    Filed: June 20, 2017
    Date of Patent: January 14, 2020
    Assignee: International Business Machines Corporation
    Inventors: Andrew D. Baptist, Bart R. Cilfone, Greg R. Dhuse, Wesley B. Leggette, Manish Motwani, Jason K. Resch, Ilya Volvovski, Ethan S. Wozniak
  • Patent number: 10528425
    Abstract: A method for execution by a computing device includes dispersed storage error encoding a data segment to produce a set of encoded data slices in accordance with an information dispersal algorithm (IDA) width number. Storage of the set of encoded data slices in a set of storage units is maintained. Activation of an incremental subset of storage units is detected to produce an expanded set of storage units in accordance with an updated IDA width number. An incremental subset of encoded data slices of an expanded set of encoded data slices is generated in accordance with the updated IDA width number. Storage of the expanded set of encoded data slices in the expanded set of storage units is maintained. A write threshold number is updated to produce an updated write threshold number. Storage of the updated write threshold number of the expanded set of encoded data slices is maintained.
    Type: Grant
    Filed: December 12, 2017
    Date of Patent: January 7, 2020
    Assignee: PURE STORAGE, INC.
    Inventors: Ethan S. Wozniak, Andrew D. Baptist, Greg R. Dhuse, Ilya Volvovski, Jason K. Resch, Ravi V. Khadiwala, Wesley B. Leggette
  • Patent number: 10530861
    Abstract: A method for execution by a dispersed storage and task (DST) processing unit includes receiving data for storage. A storage approach for the data is determined based on the data. Storage of the data in a plurality of sets of storage units is facilitated in accordance with the storage approach. A determination is made to recover the data from storage, and a set of storage units is selected from the plurality of sets of storage units for recovery of the data. Recovery of the data from the selected set of storage units is facilitated.
    Type: Grant
    Filed: November 20, 2017
    Date of Patent: January 7, 2020
    Assignee: PURE STORAGE, INC.
    Inventors: Ethan S. Wozniak, Andrew D. Baptist, Greg R. Dhuse, Ilya Volvovski, Jason K. Resch, Thomas D. Cocagne
  • Patent number: 10523241
    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 a processing module operably coupled to the interface and memory such that the processing module, when operable within the computing device based on the operational instructions, is configured to perform various operations. The computing device receives a request to store a data object and to dispersed error encode the data object to generate a plurality of sets of encoded data slices (EDSs). The computing device then performs a deterministic function on a data object name to generate a plurality of data object names. The computing device then replicates the plurality of sets of EDSs to generate other pluralities of sets of EDSs and to facilitate storage of the plurality of sets of EDSs and the other pluralities of sets of EDSs within a plurality of storage units (SUs).
    Type: Grant
    Filed: February 28, 2017
    Date of Patent: December 31, 2019
    Assignee: PURE STORAGE, INC.
    Inventors: Kumar Abhijeet, Andrew D. Baptist, S. Christopher Gladwin, Jason K. Resch
  • Patent number: 10521300
    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 a processing module operably coupled to the interface and memory such that the processing module, when operable within the computing device based on the operational instructions, is configured to perform various operations. For example, the computing device generates a prioritized request that includes at least one of a task for execution or a priority level based on information stored within a storage unit (SU) of a plurality of storage units (SUs) implemented within the DSN. Note that the information corresponds to a data object that is related to a set of encoded data slices (EDSs) that are distributedly stored within the DSN. The computing device then transmits the prioritized request to the SU and receives, from the SU, a response to the prioritized request.
    Type: Grant
    Filed: September 27, 2018
    Date of Patent: December 31, 2019
    Assignee: PURE STORAGE, INC.
    Inventors: Ahmad Alnafoosi, Andrew D. Baptist, Greg R. Dhuse, Jason K. Resch, Ilya Volvovski
  • Patent number: 10514857
    Abstract: A method includes obtaining an input factor regarding dispersed storage operational criteria and generating a set of hardware scores for hardware resources of a computing device based on at least one of: operational conditions of the computing device and the DSN. The method further includes ordering the set of hardware scores based on the dispersed storage operational criteria and identifying a set of modules based on at least one of the dispersed storage operational criteria and the ordered set of hardware scores. The method further includes determining, for each module in the set of modules, a desired adjustment based on at least one of the dispersed storage operational criteria and the ordered set of hardware scores. The method further includes adjusting the set of modules to produce a set of adjusted modules, and utilizing an adjusted module to at least partially satisfy the dispersed storage operational criteria.
    Type: Grant
    Filed: May 21, 2018
    Date of Patent: December 24, 2019
    Assignee: PURE STORAGE, INC.
    Inventors: Ilya Volvovski, Manish Motwani, Andrew D. Baptist, Jason K. Resch