Patents by Inventor Ethan S. Wozniak

Ethan S. Wozniak 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: 20240094934
    Abstract: A processing system is operable to encode data to produce a first set of data slices based on a value of a width parameter. The data is stored based on maintaining storage of the first set of data slices across a set of storage units of a storage pool. Storage of the first set of data slices is maintained in the set of storage units of the storage pool after addition of an additional set of storage units added to the storage pool. The value of the width parameter is increased to an increased value to produce an updated width parameter. The data is re-encoded in accordance with the updated width parameter to produce a second set of data slices. The data is re-stored based on maintaining storage of the second set of data slices across the expanded set of storage units of the storage pool.
    Type: Application
    Filed: November 27, 2023
    Publication date: March 21, 2024
    Applicant: 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: 11836369
    Abstract: A method includes encoding data in accordance with a width parameter to produce a first set of data slices. Storage of the first set of data slices is maintained in a set of storage units of a storage pool. An expanded set of storage units of the storage pool is determined based on an additional subset of storage units added to the storage pool. Storage of the first set of data slices is maintained in the set of storage units after addition of the additional subset of storage units added to the storage pool. An updated width parameter is determined by increasing the width parameter based on the expanded set of storage units. The data is encoded in accordance with the updated width parameter to produce a second set of data slices. Storage of the second set of data slices is maintained in the expanded set of storage units.
    Type: Grant
    Filed: December 29, 2020
    Date of Patent: December 5, 2023
    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
  • Publication number: 20230236741
    Abstract: A storage network processing system includes a processor, a network interface and memory that stores operational instructions. The operation instructions enable the processor to receive a data object for storage and dispersed error encode the data object in accordance with dispersed error encoding parameters to produce a plurality of encoded data slices. The operation instructions further enable the processor to generate to determine a plurality of site slice sets from the plurality of encoded data slices, where each site slice set of the plurality of site slice sets includes a number of unique encoded data slices of the plurality of encoded data slices that is greater than or equal to a site write threshold value. The operation instructions further enable the processor to a designate one of a plurality of storage sites for each of the plurality of site slice sets and transmit each of the plurality of site slice sets to a corresponding designated one of the plurality of storage sites via the network.
    Type: Application
    Filed: March 29, 2023
    Publication date: July 27, 2023
    Applicant: Pure Storage, Inc.
    Inventors: Greg R. Dhuse, Jason K. Resch, Ilya Volvovski, Ethan S. Wozniak
  • Patent number: 11640248
    Abstract: A computing device including a processing module configured to receive a read request for a read threshold number of encoded data slices of the set of encoded data slices, determine whether a read threshold number of encoded data slices of the set of encoded data slices is available in a set of storage units associated with a first storage site and when a read threshold number of encoded data slices of the set of encoded data slices is not available in the set of storage units associated with a first storage site, transmit a read request for a read threshold number of encoded data slices to the set of storage units associated with a second storage site.
    Type: Grant
    Filed: August 4, 2022
    Date of Patent: May 2, 2023
    Assignee: Pure Storage, Inc.
    Inventors: Greg R. Dhuse, Jason K. Resch, Ethan S. Wozniak
  • Patent number: 11582299
    Abstract: A method for execution by a dispersed storage network (DSN) managing unit includes receiving access information from a plurality of distributed storage and task (DST) processing units via a network. Cache memory utilization data is generated based on the access information. Configuration instructions are generated for transmission via the network to the plurality of DST processing units based on the cache memory utilization data.
    Type: Grant
    Filed: January 3, 2017
    Date of Patent: February 14, 2023
    Assignee: PURE STORAGE, INC.
    Inventors: Ilir Iljazi, Jason K. Resch, Ethan S. Wozniak
  • Publication number: 20220374153
    Abstract: A computing device includes an interface configured to interface and communicate with a storage network, a memory that stores operational instructions, and a processing module operably coupled to the interface and memory configured to transmit a write request for a first write threshold number of encoded data slices of a set of encoded data slices to a set of storage units associated with a first storage site and transmit a write request for a second write threshold number of encoded data slices to a set of storage units associated with a second storage site.
    Type: Application
    Filed: August 4, 2022
    Publication date: November 24, 2022
    Applicant: Pure Storage, Inc.
    Inventors: Greg R. Dhuse, Jason K. Resch, Ethan S. Wozniak
  • Patent number: 11422711
    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 monitors storage unit (SU)-based write transfer rates and SU-based write failure rates associated with each of the SUs for a write request of encoded data slices (EDSs) to the SUs within the DSN. The computing device generates and maintains a SU write performance distribution based on monitoring of the SU-based write transfer rates and the SU-based write failure rates and adaptively adjusts a trimmed write threshold number of EDSs and/or a target width of EDSs for write requests of sets of EDSs to the SUs within the DSN.
    Type: Grant
    Filed: November 30, 2020
    Date of Patent: August 23, 2022
    Assignee: PURE STORAGE, INC.
    Inventors: Greg R. Dhuse, Jason K. Resch, Ethan S. Wozniak
  • Publication number: 20220261155
    Abstract: A computing device includes an interface configured to interface and communicate with a storage network, 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. A computing device receives a data access request for an encoded data slice associated with a data object, determines whether the encoded data slice is stored in the first memory and in response to a determination that the encoded data slice is not stored in the first memory, issues another data access request for the encoded data slice to a second memory, where the first memory includes access characteristics that are faster than the second memory. When a data access response including the encoded data slice is received from the second memory, a response including the encoded data slice is transmitted.
    Type: Application
    Filed: April 29, 2022
    Publication date: August 18, 2022
    Applicant: Pure Storage, Inc.
    Inventors: Bruno H. Cabral, Joseph M. Kaczmarek, Ravi V. Khadiwala, Ilya Volvovski, Manish Motwani, Ethan S. Wozniak
  • Publication number: 20220107861
    Abstract: A plurality of encoded data slices are stored at locations within a memory, and a list of pointers to the encoded data slices is maintained. A request to delete a particular encoded data slice is received. In response to receiving the request, a particular location within the memory used to store the particular encoded data slice is determined based on the list of pointers, and an updated list of pointers is generated indicating that the particular encoded data slice is no longer stored at the particular location within the memory.
    Type: Application
    Filed: December 15, 2021
    Publication date: April 7, 2022
    Applicant: Pure Storage, Inc.
    Inventors: Ravi V. Khadiwala, Ethan S. Wozniak, Jason K. Resch, Greg R. Dhuse
  • Patent number: 11210151
    Abstract: A distributed storage network (DSN) stores sets of encoded data slices in sets of storage units. A first storage unit assigned to store an encoded data slice included in a set of encoded data slices transmits a rebuild request associated with the storage error to a second storage unit. The second storage unit generates the rebuilt encoded data slice in response to the rebuild request, and transmits the rebuilt encoded data slice back to the first storage unit, which stores the rebuilt encoded data slice.
    Type: Grant
    Filed: February 19, 2020
    Date of Patent: December 28, 2021
    Assignee: PURE STORAGE, INC.
    Inventors: Ravi V. Khadiwala, Ethan S. Wozniak, Jason K. Resch
  • Patent number: 11099891
    Abstract: A method for execution by a request scheduler includes receiving a set of requests for execution from at least one request issuer. Resource requirements are determined for each of the set of requests, and current resource availability data is determined for resources indicated in the resource requirements. Scheduling data is generated for the set of requests based on the resource requirements and the current resource availability data. A first subset of the set of requests are added to a queue in response to the scheduling data indicating the first subset of the set of requests be queued for execution. Execution of the set of requests is facilitated in accordance with the scheduling data by facilitating immediate, simultaneous execution of a second subset of the set of requests and by facilitating serial execution of the first subset of the set of requests.
    Type: Grant
    Filed: April 22, 2019
    Date of Patent: August 24, 2021
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Anthony J. Baldocchi, Shaorong Liu, Jordan H. Williams, Ethan S. Wozniak, Manish Motwani, Ilya Volvovski
  • Patent number: 11061613
    Abstract: A computer readable storage device includes a first memory section that stores operational instructions that, when executed, cause a computing device to, as data accesses occur for a plurality of data objects of a storage container, update object values to produce updated object values, update object retention costs to produce updated object retention costs, adjust a dynamic retention threshold based on the updated object values and the updated object retention costs and update a data object retention policy for a data object based on the dynamic retention threshold to produce an updated retention policy for the data object. The computer readable storage device includes a second memory section that stores operational instructions that, when executed, cause the computing device to, when a data access is a deletion request, utilizing a current updated data object retention policy to determine and execute a deletion-retention option for the data object.
    Type: Grant
    Filed: July 24, 2019
    Date of Patent: July 13, 2021
    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: 11030001
    Abstract: A method for execution by a request scheduler includes receiving a set of requests for execution from at least one request issuer. Resource requirements are determined for each of the set of requests, and current resource availability data is determined for resources indicated in the resource requirements. Scheduling data is generated for the set of requests based on the resource requirements and the current resource availability data. A first subset of the set of requests are added to a queue in response to the scheduling data indicating the first subset of the set of requests be queued for execution. Execution of the set of requests is facilitated in accordance with the scheduling data by facilitating immediate, simultaneous execution of a second subset of the set of requests and by facilitating serial execution of the first subset of the set of requests.
    Type: Grant
    Filed: July 19, 2019
    Date of Patent: June 8, 2021
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Anthony J. Baldocchi, Shaorong Liu, Jordan H. Williams, Ethan S. Wozniak, Manish Motwani, Ilya Volvovski
  • Patent number: 11019146
    Abstract: A method for execution by a dispersed storage and task (DST) processing unit includes determining a first optimal slice size requirement is determined for a first independent data element (IDE). The first IDE is split into a first plurality of IDEs based on determining the first IDE compares unfavorably to the first optimal slice size requirement. An error coding function is performed on the first plurality of IDEs to produce a set of encoded slices for each of the first plurality of IDEs for transmission to storage units. A subset of additional IDEs are selected to be merged into a merged IDE based on a second optimal slice size requirement, and continuous content of the subset of additional IDEs is concatenated to produce the merged IDE. The error coding function is performed on the merged IDE to produce a second set of encoded slices for transmission to storage units.
    Type: Grant
    Filed: September 16, 2019
    Date of Patent: May 25, 2021
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Jason K. Resch, Ram Narayanan, Andrew D. Baptist, Praveen Viraraghavan, Wesley B. Leggette, Ethan S. Wozniak, Manish Motwani, Bart R. Cilfone, Greg R. Dhuse
  • Patent number: 11010096
    Abstract: A method for execution by a dispersed storage and task (DST) processing unit includes receiving an access request via a network. A set of possible storage units for performance of the access request are determined. A latency summarization value is determined for each of the set of possible storage units based on historical latency data for the set of possible storage units. A weight for each of the set of possible storage units is determined based on the latency summarization values to generate a plurality of weights. A probabilistic selection function is performed in accordance with the plurality of weights to select a proper subset of the set of possible storage units. A plurality of requests are generated based on the access request for transmission, via the network, to the proper subset of the set of possible storage units.
    Type: Grant
    Filed: September 16, 2019
    Date of Patent: May 18, 2021
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Ethan S. Wozniak, Ravi V. Khadiwala, John R. Carrell, Bohdan L. Bodnar, Alex Marchenko
  • Patent number: 11010093
    Abstract: A method begins by obtaining a set of load level information regarding a set of dispersed storage (DS) processing units of a plurality of sets of DS processing units of the DSN. The method continues by determining whether the first DS processing unit has a load imbalance based on the set of load level information. When the first DS processing unit has the load imbalance, the method continues by determining whether to delegate a first access request of one or more access requests to another DS processing unit. When determining to delegate the first access request, the method continues by determining a delegate DS processing unit of the set of DS processing units based on the set of load level information. The method continues by instructing the first DS processing unit to send the first access request to the delegate DS processing unit for processing.
    Type: Grant
    Filed: January 16, 2019
    Date of Patent: May 18, 2021
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Ethan S. Wozniak, Praveen Viraraghavan
  • Patent number: 10976963
    Abstract: A method for execution by a dispersed storage and task (DST) processing unit includes receiving an access request via a network. A set of possible storage units for performance of the access request are determined. A latency summarization value is determined for each of the set of possible storage units based on historical latency data for the set of possible storage units. A weight for each of the set of possible storage units is determined based on the latency summarization values to generate a plurality of weights. A probabilistic selection function is performed in accordance with the plurality of weights to select a proper subset of the set of possible storage units. A plurality of requests are generated based on the access request for transmission, via the network, to the proper subset of the set of possible storage units.
    Type: Grant
    Filed: April 15, 2019
    Date of Patent: April 13, 2021
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Ethan S. Wozniak, Ravi V. Khadiwala, John R. Carrell, Bohdan L. Bodnar, Alex Marchenko
  • Patent number: 10969972
    Abstract: A computing device of a dispersed storage network includes a processing module operable to receive a plurality of requests regarding writing a plurality of data objects to storage units from a plurality of user computing devices. The processing module is further operable to activate a verification process to verify a content format verification code provided by a user computing device for a request regarding writing a data object, activate a signature process to sign the content format verification code with a trusted certificate to produce a signed content format verification code, send the trusted certificate and a signed content format verification code identification to a dispersed storage (DS) processing unit, receive a verification message indicating that the content format verification code identifies a correct format for the data object, and send the data object in the correct format to the DS processing unit for dispersed storage error encoding and storage.
    Type: Grant
    Filed: July 31, 2019
    Date of Patent: April 6, 2021
    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: 10963397
    Abstract: A method includes determining, by a storage unit, to place a pointer in a hash table that is stored in local memory of the storage unit. The method further includes executing, by the storage unit, a hash function on addressing information relating to the pointer to produce a hash resultant. The method further includes executing, by the storage unit, a second function on related data to the addressing information or to the pointer to produce an auxiliary resultant. The method further includes storing, by the storage unit, the hash resultant and the auxiliary resultant as an entry in the hash table for the pointer, wherein, when a hash collision occurs with respect to the hash resultant, the storage unit utilizes the auxiliary resultant to resolve the hash collision.
    Type: Grant
    Filed: March 26, 2018
    Date of Patent: March 30, 2021
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Greg R. Dhuse, Ilya Volvovski, Ethan S. Wozniak, Ravi V. Khadiwala, Jason K. Resch, Andrew D. Baptist, Praveen Viraraghavan
  • Patent number: 10958731
    Abstract: A method includes transmitting a first write request that includes a first encoded data slice of a first data object encoded under a first encoding scheme, and a first slice identifier corresponding to the first encoded data slice assigned to a first memory location of a distributed storage network (DSN) based on the first slice identifier. A second write request that includes a second encoded data slice of the first data object encoded under a second encoding scheme, and a second slice identifier corresponding to the second encoded data slice, is transmitted, and the second encoded data slice is assigned to a second memory location of the DSN based on the second slice identifier. A request to access the first data object is received. A derived second slice identifier is generated in response to determining that the first data object requested for access is stored under multiple encoding schemes.
    Type: Grant
    Filed: March 11, 2019
    Date of Patent: March 23, 2021
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventor: Ethan S. Wozniak