Patents by Inventor Wesley B. Leggette

Wesley B. Leggette 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
  • Publication number: 20240095124
    Abstract: A processing system of a storage network operates by: selecting a queue memory type of a plurality of memory types to store a data object, based on a size parameter associated with the data object; storing the data object in a queue memory device having the queue memory type, when the queue memory type is selected; selecting a main memory type of a plurality of memory types to store the data object, when the queue memory type is not selected; and storing the data object in a main memory device having the main memory type, when the queue memory type is not selected; wherein the data object is dispersed error encoded and stored as a plurality of encoded data slices.
    Type: Application
    Filed: November 28, 2023
    Publication date: March 21, 2024
    Applicant: Pure Storage, Inc.
    Inventors: Andrew D. Baptist, Wesley B. Leggette, Jason K. Resch
  • Patent number: 11928230
    Abstract: A method for execution by a computing device to adjust efficiency of storing data in a storage network includes processing a data segment based on a storage approach to produce a processed data segment, the storage approach being based on an estimated overwrite frequency for the data segment. The method continues by error encoding the processed data segment to produce a set of encoded data slices, where a decode threshold number of encoded data slices is needed to recover the processed data segment. The method continues by storing the set of encoded data slices in the memory of the storage network.
    Type: Grant
    Filed: February 3, 2023
    Date of Patent: March 12, 2024
    Assignee: Pure Storage, Inc.
    Inventors: Ilya Volvovski, Wesley B. Leggette, Michael C. Storm, Jason K. Resch
  • Patent number: 11922015
    Abstract: A storage network operates by: issuing a read threshold number of read slice requests to storage units of a set of storage units, where the read threshold number of read slice requests identifies a read threshold number of encoded slices of a set of encoded slices corresponding to a data segment; when one or more other encoded data slices of the read threshold number of encoded slices is not received within a time threshold, facilitating receiving a decode threshold number of encoded slices of the set of encoded slices; decoding the decode threshold number of encoded slices to produce recovered encoded data slices, wherein a number of the recovered encoded data slices corresponds to the read threshold number minus a number of the encoded slices received within the time threshold; and outputting the recovered encoded data slices and the encoded slices of the read threshold number of encoded slices received within the time threshold.
    Type: Grant
    Filed: October 11, 2022
    Date of Patent: March 5, 2024
    Assignee: Pure Storage, Inc.
    Inventors: Bruno H. Cabral, Wesley B. Leggette
  • Publication number: 20240063946
    Abstract: A method for execution by one or more computing devices of a massive data ingestion system includes receiving data for storage in the massive data ingestion system. The method further includes storing a data segment of the data in a cache memory of the massive data ingestion system. The method further includes retrieving, based on one or more retrieval parameters, the data segment from the cache memory. The method further includes error encoding, in accordance with error encoding parameters, the data segment to produce a set of encoded data slices, wherein the error encoding parameters include a pillar width number and a decode threshold number, and wherein the decode threshold number is a minimum number of encoded data slices needed to reconstruct the data segment. The method further includes storing the set of encoded data slices in a set of storage units of the massive data ingestion system.
    Type: Application
    Filed: November 1, 2023
    Publication date: February 22, 2024
    Applicant: Pure Storage, Inc.
    Inventors: S. Christopher Gladwin, Greg R. Dhuse, Timothy W. Markison, Wesley B. Leggette, Jason K. Resch, Gary W. Grube
  • Publication number: 20240045777
    Abstract: A method for processing data access requests in a storage network. The method includes receiving, by one or more processing modules, a data access request for a data object. A plurality of encoded data slices corresponding to the data object are stored in a distributed manner among a plurality of storage units associated with a plurality of storage sites of the storage network. The method continues with the one or more processing modules selecting respective numbers of storage units at each of the plurality of storage sites to support the data access request. A first computing device that is associated with a first storage site of the plurality of storage sites is also selected to further process the data access request. The method continues with the one or more processing modules transmitting the data access request to the first computing device to be further processed.
    Type: Application
    Filed: October 16, 2023
    Publication date: February 8, 2024
    Applicant: Pure Storage, Inc.
    Inventors: Jason K. Resch, Wesley B. Leggette, Ravi V. Khadiwala, Bruno H. Cabral
  • Patent number: 11895098
    Abstract: A method for execution by one or more processing modules of one or more computing devices begins by encoding data using a dispersed storage error encoding function to produce a plurality of sets of encoded data slices arranged into a plurality of chunksets of encoded data slices. The method continues by selecting a set of storage units for storing the plurality of chunksets and assigning a distributed computing task to each storage unit of the set of storage units. The method then continues by generating a unique key set for each storage unit of the storage units, encrypting each chunkset of encoded data slices with a corresponding one of the unique key sets to produce a plurality of encrypted chunksets and sending an encrypted chunkset of the plurality of encrypted chunksets and an indication of a corresponding distributed computing task to each storage unit of the set of storage units for storage of the encrypted chunksets and execution of the distributed computing task.
    Type: Grant
    Filed: September 30, 2022
    Date of Patent: February 6, 2024
    Assignee: Pure Storage, Inc.
    Inventors: Andrew D. Baptist, Greg R. Dhuse, Wesley B. Leggette, Jason K. Resch
  • Publication number: 20240028455
    Abstract: A storage network operates by: receiving a encoded data slice for storage by the storage network, wherein the encoded data slice is associated with a vault; generating a encryption key corresponding to the encoded data slice based on a vault identifier associated with the vault; utilizing the encryption key to generate a encrypted data slice and that corresponds to, and is based on, the encoded data slice; storing the encrypted data slice in a storage unit of the storage network; receiving a request to retrieve the encoded data slice; retrieving the encrypted data slice corresponding to the encoded data slice from the storage unit of the storage network; generating a decryption key corresponding to the encoded data slice based on the vault identifier, wherein the decryption key is different from the encryption key; and regenerating the encoded data slice using the decryption key.
    Type: Application
    Filed: October 2, 2023
    Publication date: January 25, 2024
    Applicant: Pure Storage, Inc.
    Inventors: Scott M. Horan, Wesley B. Leggette, Jason K. Resch
  • Patent number: 11860711
    Abstract: Methods and apparatus for rebuilding and storing data in a storage network that includes a plurality of storage units. In an embodiment, a processing module(s) of storage network identifies a storage error associated with a data object stored in a first storage unit of a set of storage units. In response, the processing module obtains storage network configuration information associated with the data object, and rebuilds the data object to produce a rebuilt data object. The processing module further identifies, based on the storage network configuration information, a candidate storage unit(s) for storage of the rebuilt data object and determines an available storage capacity level of the candidate storage unit. In response to determining that the available storage capacity level of the candidate storage unit is sufficient to store the rebuilt data object, the processing module facilitates storage of the rebuilt data object in the candidate storage unit.
    Type: Grant
    Filed: May 30, 2022
    Date of Patent: January 2, 2024
    Assignee: Pure Storage, Inc.
    Inventors: Jason K. Resch, Ravi V. Khadiwala, Wesley B. Leggette
  • Patent number: 11860735
    Abstract: A processing system of a storage network operates by: receiving a write request to store a data object; selecting a selected memory type of a plurality of memory types to store the data object, based on object parameters associated with the data object; selecting a selected memory to store the data object, the selected memory having the selected memory type of the plurality of memory types; and facilitating storage of the data object in the selected memory having the selected memory type of the plurality of memory types, wherein the data object is dispersed error encoded and stored as a plurality of encoded data slices.
    Type: Grant
    Filed: July 7, 2022
    Date of Patent: January 2, 2024
    Assignee: Pure Storage, Inc.
    Inventors: Andrew D. Baptist, Wesley B. Leggette, Jason K. Resch
  • 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
  • Patent number: 11818089
    Abstract: A method for execution in a storage network includes receiving a request pertaining to a data object, where the request is related to a specified contiguous data range within the data object and the data object is dispersed error encoded to produce a plurality of groups of encoded data slices. The method continues by converting the request into a plurality of partial requests, where each partial request of the plurality of partial requests includes at least one partial task and transmitting each partial request of the plurality of partial requests to a storage unit of a set of storage units. The method then continues by determining when a partial request response has been received for each partial request of the plurality of partial requests and when a partial request response has been received for each partial request of the plurality of partial requests, transmitting an indication that the request pertaining to the data object has been successfully executed.
    Type: Grant
    Filed: February 24, 2021
    Date of Patent: November 14, 2023
    Inventors: Wesley B. Leggette, Andrew D. Baptist, Greg R. Dhuse, Jason K. Resch, Ilya Volvovski, Manish Motwani, S. Christopher Gladwin, Gary W. Grube, Thomas F. Shirley, Jr.
  • Patent number: 11811532
    Abstract: A method begins with a first group of computing devices of a plurality of computing devices of a storage network receiving data objects having a first data type identifier of a plurality of data type identifiers, where the plurality of data type identifiers correspond to a plurality of data types associated with the data objects. The method continues with the first group of computing devices interpreting the data objects having the first data type identifier to sort, based on sorting criteria the data objects into a first processing category and a second processing category. The method continues with the first group of computing devices error encoding the data objects in the second processing category based on short term storage error encoding parameters to produce pluralities of sets of encoded data slices and sending the pluralities of sets of encoded data slices to storage and execution units for storage therein.
    Type: Grant
    Filed: June 30, 2021
    Date of Patent: November 7, 2023
    Assignee: Pure Storage, Inc.
    Inventors: S. Christopher Gladwin, Greg R. Dhuse, Timothy W. Markison, Wesley B. Leggette, Jason K. Resch, Gary W. Grube
  • Patent number: 11782789
    Abstract: A storage network operates by: generating metadata for a data object; first disperse storage error encoding the metadata to produce a set of metadata slices, wherein the first disperse storage error encoding utilizes first dispersal parameters, the first dispersal parameters including a first decode threshold of 1; generating sets of first data slices via a second disperse storage error encoding of data segments associated with the data object, wherein the second disperse storage error encoding utilizes second dispersal parameters, the second dispersal parameters different from the first dispersal parameters and the second dispersal parameters including a second decode threshold greater than 1; producing an additional data segment associated with the data object wherein the additional data segment is different from the data segments and the metadata; and third disperse storage error encoding the additional data segment to produce a set of second data slices, wherein the third disperse storage error encoding u
    Type: Grant
    Filed: September 28, 2021
    Date of Patent: October 10, 2023
    Assignee: Pure Storage, Inc.
    Inventors: Scott M. Horan, Wesley B. Leggette, Jason K. Resch
  • Publication number: 20230267042
    Abstract: A method includes retrieving an encoded data slice from memory of a storage network, where the encoded data slice is associated with a slice integrity value stored in the memory, and where a data segment of data is error encoded into a set of encoded data slices that includes the encoded data slice. The method further includes generating a second slice integrity value based on the retrieved encoded data slice. The method further includes determining whether the second slice integrity value compares favorably to the slice integrity value. When the second slice integrity value compares unfavorably to the slice integrity value, the method further includes facilitating rebuilding of the encoded data slice to produce a rebuilt encoded data slice. The method further includes storing the rebuilt encoded data slice in the memory.
    Type: Application
    Filed: April 30, 2023
    Publication date: August 24, 2023
    Applicant: Pure Storage, Inc.
    Inventors: Thomas F. Shirley, JR., Ilya Volvovski, Manish Motwani, Andrew D. Baptist, Wesley B. Leggette, Jason K. Resch, Greg R. Dhuse
  • Publication number: 20230259427
    Abstract: A method includes determining an information dispersal algorithm width number and determining a number of primary storage slots from a number of storage slots associated with a set of storage units deployed across multiple sites, where the number of primary storage slots is equal to or greater than the information dispersal algorithm width number. The method further includes determining a mapping of primary storage slots to storage units. The method further includes sending configuration information to the set of storage units that includes the mapping. The method further includes storing a set of encoded data slices in the primary storage slots in accordance with the configuration information, where a data segment is error encoded into the set of encoded data slices in accordance with the information dispersal algorithm width number and a decode threshold number, which is a number of encoded data slices are needed to reconstruct the data segment.
    Type: Application
    Filed: April 30, 2023
    Publication date: August 17, 2023
    Applicant: Pure Storage, Inc.
    Inventors: Ravi V. Khadiwala, Wesley B. Leggette, Andrew D. Baptist, Greg R. Dhuse, Ilya Volvovski, Jason K. Resch, Manish Motwani
  • Patent number: 11714719
    Abstract: Apparatus for tiered storage of data in a storage network. In an example of operation, a computing device receives a data object for storage and forwards the data object for storage in a first plurality of memory devices of a first memory type. The computing device determines a system level storage efficiency for the data object based, at least in part, on a data attribute associated with the data object. The computing device further selects, based at least in part on the system level storage efficiency preference, a second plurality of memory devices comprised of a second memory type. The computing device determines error encoding parameters based on the second plurality of memory devices, retrieves the data object from the first plurality of memory devices, and encodes the data object with the error encoding parameters to generate a plurality of encoded data slices for storage in the second plurality of memory devices.
    Type: Grant
    Filed: September 30, 2022
    Date of Patent: August 1, 2023
    Assignee: Pure Storage, Inc.
    Inventors: S. Christopher Gladwin, Timothy W. Markison, Greg R. Dhuse, Thomas F. Shirley, Jr., Wesley B. Leggette, Jason K. Resch, Gary W. Grube
  • Publication number: 20230214303
    Abstract: A method for execution by a distributed storage network begins by receiving a request to transfer a copy of a set of encoded data slices from at least some associated virtual storage vaults to a destination virtual storage vault and continues by determining whether the destination storage unit supports a source virtual storage vault of the at least some source virtual storage vaults. When the destination storage unit supports the source virtual storage vault the method continues by determining a sub-set of encoded data slices of the set of encoded data slices for transfer and finally, by facilitating sending the sub-set of encoded data slices to the destination storage unit.
    Type: Application
    Filed: March 10, 2023
    Publication date: July 6, 2023
    Applicant: Pure Storage, Inc.
    Inventors: Adam M. Gray, Greg R. Dhuse, Andrew D. Baptist, Ravi V. Khadiwala, Wesley B. Leggette, Scott M. Horan, Franco V. Borich, Bart R. Cilfone, Daniel J. Scholl
  • Publication number: 20230205630
    Abstract: A processing system of a storage network operates by: sending, to at least one storage unit of the storage network, at least one read request corresponding to at least a read threshold number of a set of encoded data slices to be retrieved, wherein the set of encoded data slices correspond to data, wherein the data is coded in accordance with dispersed error coding parameters that include a write threshold number and the read threshold number, wherein the write threshold number is a number of encoded data slices in the set of encoded data slices and wherein the read threshold number is a number of the set of encoded data slices that is required to decode the data; receiving, via the at least one processing circuit and from the at least one storage unit, a first subset of the set of encoded data slices, wherein the first subset is missing at least one missing encoded data slice that was not received from the at least one storage unit in response to the at least one read request and wherein a number of encoded
    Type: Application
    Filed: February 27, 2023
    Publication date: June 29, 2023
    Applicant: Pure Storage, Inc.
    Inventors: Ilya Volvovski, Bruno H. Cabral, Manish Motwani, Thomas D. Cocagne, Timothy W. Markison, Gary W. Grube, Wesley B. Leggette, Jason K. Resch, Michael C. Storm, Greg R. Dhuse, Yogesh R. Vedpathak, Ravi V. Khadiwala
  • Publication number: 20230177199
    Abstract: A method for execution by a computing device to adjust efficiency of storing data in a storage network includes processing a data segment based on a storage approach to produce a processed data segment, the storage approach being based on an estimated overwrite frequency for the data segment. The method continues by error encoding the processed data segment to produce a set of encoded data slices, where a decode threshold number of encoded data slices is needed to recover the processed data segment. The method continues by storing the set of encoded data slices in the memory of the storage network.
    Type: Application
    Filed: February 3, 2023
    Publication date: June 8, 2023
    Applicant: Pure Storage, Inc.
    Inventors: Ilya Volvovski, Wesley B. Leggette, Michael C. Storm, Jason K. Resch