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

  • Patent number: 11429486
    Abstract: In various embodiments, a method is presented for execution by a processing circuit of a storage network device that includes a processor. The method comprises: receiving, via the processing circuit, a first subset of encoded data slices of a set of encoded data slices corresponding to a data segment; identifying, via the processing circuit, at least one missing encoded data slice of the first subset of slices that is required to decode the data segment; generating, via the processing circuit, at least one rebuilt encoded data slice corresponding to the at least one missing encoded data slice utilizing locally decodable redundancy data; and recovering, via the processing circuit, the data segment based on the at least one rebuilt encoded data slice and the first subset of encoded data slices.
    Type: Grant
    Filed: October 30, 2020
    Date of Patent: August 30, 2022
    Assignee: 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: 20220269562
    Abstract: A method includes receiving a data retrieval request. A plurality of identifiers are determined in accordance with the data retrieval request. Integrity information is generated based on determining the plurality of identifiers by performing a cyclic redundancy check. Stored integrity information corresponding to the data retrieval request is compared with the integrity information, where the stored integrity information was previously generated by performing the cyclic redundancy check. When the stored integrity information compares unfavorably with the integrity information, corruption associated with the plurality of identifiers is determined.
    Type: Application
    Filed: May 13, 2022
    Publication date: August 25, 2022
    Applicant: Pure Storage, Inc.
    Inventors: Gary W. Grube, Timothy W. Markison, Sebastien Vas, Zachary J. Markison, Jason K. Resch
  • 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: 20220261167
    Abstract: Methods and apparatus for storage pool tiering in a storage network. In an embodiment, a method includes receiving data for storage and storing the data in a first pool of storage units, the first pool of storage units associated with a first storage tier having a first access latency performance level. The method further includes initializing a frequency of access indicator corresponding to the stored data and determining, based at least in part on the frequency of access indicator, to move the stored data to a second pool of storage units associated with a second storage tier having a second access latency performance level, wherein the second access latency performance level corresponds to higher average access latency than the first access latency performance level.
    Type: Application
    Filed: May 3, 2022
    Publication date: August 18, 2022
    Applicant: Pure Storage, Inc.
    Inventors: Jason K. Resch, Wesley B. Leggette
  • Publication number: 20220263666
    Abstract: A method for use in a distributed storage network includes determining storage parameters associated with error-encoded data slices generated from data to be stored in the distributed storage network. The storage parameters include information indicating a read threshold number of error-encoded data slices required to recover the data. Storage requirements of a storage unit included in the distributed storage network are also determined. The storage unit includes multiple memory devices configured to store one or more error-encoded data slices of the read threshold number of error-encoded data slices. A number of the one or more error-encoded data slices are stored in the storage unit based on the storage requirements of the storage unit and the storage parameters.
    Type: Application
    Filed: May 6, 2022
    Publication date: August 18, 2022
    Applicant: Pure Storage, Inc.
    Inventors: Jason K. Resch, Greg R. Dhuse
  • Patent number: 11416339
    Abstract: A system includes a plurality of storage units, where one or more storage vaults is associated with the plurality of storage units and each storage vault of the one or more storage vaults represents a software-constructed grouping of storage units of the plurality of storage units. The software-constructed grouping of storage units stores encoded data slices. A data segment is encoded using an information dispersal algorithm to produce the encoded data slices. The system further includes a grid access manager that generates a data structure pertaining to the software-constructed grouping of storage units. A storage unit of the software-constructed grouping of storage units receives, from a client computer of the system, a request regarding the data segment, obtains, from the data structure, information regarding the request, determines whether the request is valid based on the information regarding the request, and when the request is valid, executes the request.
    Type: Grant
    Filed: August 7, 2020
    Date of Patent: August 16, 2022
    Assignee: PURE STORAGE, INC.
    Inventors: Sebastien Vas, Zachary J. Mark, Jason K. Resch
  • Patent number: 11416340
    Abstract: A method includes receiving a write request to store a data object; identifying object parameters associated with the data object; selecting a memory type based on the identified object parameters; selecting a selected memory based on the memory type; and facilitating storage of the data object in the selected memory, wherein the data object is dispersed error encoded.
    Type: Grant
    Filed: October 26, 2020
    Date of Patent: August 16, 2022
    Assignee: PURE STORAGE, INC.
    Inventors: Andrew D. Baptist, Wesley B. Leggette, Jason K. Resch
  • Patent number: 11418591
    Abstract: Systems and methods for storing encoded data slices in a storage network involve generating a set of write slice requests relating to the encoded data slices, outputting the set of write slice requests to distributed storage units, 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: March 2, 2020
    Date of Patent: August 16, 2022
    Assignee: PURE STORAGE, INC.
    Inventors: Greg R. Dhuse, Andrew D. Baptist, Ilya Volvovski, Jason K. Resch
  • Patent number: 11418580
    Abstract: A method begins by a processing module of a dispersed storage network (DSN) receiving a signature contribution request and payload, logging the request and determining whether a timestamp for the request compares favorably to a timing template. When the timestamp for the request compares favorably to the timing template the method continues with the processing modules determining whether the request compares favorably to a functionality template and when it compares favorably to a functionality template retrieving a key share based on sharing function parameters and outputting a signature result. When the timestamp for the request does not compare favorably to the timing template or the request does not compare favorably to the functionality template the method continues with the processing module outputting a signature contribution request rejection message.
    Type: Grant
    Filed: November 26, 2018
    Date of Patent: August 16, 2022
    Assignee: PURE STORAGE, INC.
    Inventors: Greg R. Dhuse, Jason K. Resch, Wesley B. Leggette
  • Patent number: 11416149
    Abstract: A method includes determining, by a computing device of a plurality of computing devices of a storage network, a data processing plan for processing an access request. The method further includes identifying two or more processing units of a plurality of processing units of the storage network based on the data processing plan and availability information, and determining processing capabilities of each of the two or more processing units. The method further includes selecting a processing unit of the two or more processing units to process the access request based on a favorable comparison of the processing capabilities of the processing unit and the data processing plan. The method further includes selecting one or more processing options of the processing unit to process the access request according to the data processing plan, and sending the access request and selection of the one or more processing options to the processing unit.
    Type: Grant
    Filed: July 31, 2020
    Date of Patent: August 16, 2022
    Assignee: Pure Storage, Inc.
    Inventors: Jason K. Resch, S. Christopher Gladwin, Kumar Abhijeet, Greg R. Dhuse
  • Publication number: 20220253355
    Abstract: method and apparatus for synchronizing replicated data in a storage network. In an embodiment, a method begins by a processing module of a computing device identifying a first storage set and a second storage set for replicated storage of a data object. The processing module initiates storage of the data object in both the first and second storage sets, and further maintains a synchronization status for the data object. The processing module determines, based at least in part on the synchronization status, to resynchronize the first storage set and the second storage set. In response to determining to resynchronize the first storage set and the second storage set, the processing module identifies a latest available revision of the data object, determines that the second storage set requires the latest available revision of the data object to maintain synchronization, and facilitates storage of the identified latest available revision of the data object in the second storage set.
    Type: Application
    Filed: April 27, 2022
    Publication date: August 11, 2022
    Applicant: Pure Storage, Inc.
    Inventors: Jason K. Resch, Scott M. Horan, Ravi V. Khadiwala, Greg R. Dhuse
  • Patent number: 11410019
    Abstract: A method for execution by a dispersed storage and task (DST) execution unit includes receiving system registry integrity data via a network that corresponds to a plurality of system registry files, a request for a subset of the plurality of system registry files is generated for transmission to a dispersed storage network (DSN) unit via the network. The subset of system registry files are received from the DSN unit via the network. Integrity check data is generated based on the received subset of the plurality of system registry files and the system registry integrity data, where the integrity check data includes a verification indicator. The system registry files are stored in memory when the verification indicator indicates that verification was successful.
    Type: Grant
    Filed: August 6, 2020
    Date of Patent: August 9, 2022
    Assignee: PURE STORAGE, INC.
    Inventors: Thomas D. Cocagne, Jason K. Resch
  • Patent number: 11409767
    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 13, 2020
    Date of Patent: August 9, 2022
    Assignee: PURE STORAGE, INC.
    Inventors: Asimuddin Kazi, Jason K. Resch
  • Patent number: 11398988
    Abstract: Methods and apparatus for selecting data access resources in a distributed storage network (DSN) are disclosed. In various embodiments, a processing module(s) receives a data access request including a data identifier. Addressing information is determined for the data access request. In addition, the processing module obtains DSN configuration information associated with a plurality of access resources that interface with DSN memory. Ranked scoring information is determined for the plurality of access resources based, at least in part, on the DSN configuration information and the addressing information. In an example, a distributed agreement protocol module is utilized to calculate the ranked scoring information as a processing capacity of a respective access resource divided by a negative log of a normalized deterministic function value based on the addressing information and an identifier. The ranked scoring information is then utilized to select an access resource for processing of the data access request.
    Type: Grant
    Filed: April 27, 2020
    Date of Patent: July 26, 2022
    Assignee: PURE STORAGE, INC.
    Inventors: Ravi V. Khadiwala, Jason K. Resch, Thomas D. Cocagne
  • Patent number: 11394779
    Abstract: A method includes all-or-nothing (AONT) encoding a first data chunk of a plurality of data chunks in accordance with distributed data storage parameters to produce a first set of AONT encoded data pieces, where the distributed data storage parameters include a T number that corresponds to a minimum number AONT encoded data pieces needed to recover a data chunk of the plurality of data chunks, and where the first set of AONT encoded data pieces includes the T number of AONT encoded data pieces. The method further includes facilitating storage of the first set of AONT encoded data pieces in a set of storage units of the storage network, where the set of storage units includes the T number of storage units.
    Type: Grant
    Filed: August 10, 2020
    Date of Patent: July 19, 2022
    Assignee: PURE STORAGE, INC.
    Inventors: Jason K. Resch, Wesley B. Leggette
  • Publication number: 20220222142
    Abstract: A method for execution by a computing device of a storage network begins or continues by generating a plurality of estimated efficiency models associated with a plurality of processing units of the storage network, where an estimated efficiency model of the plurality of estimated efficiency models includes estimated efficiency probabilities, and where the estimated efficiency probabilities correspond to data access request types for a processing unit of the plurality of processing units. The method further includes storing the plurality of estimated efficiency models in memory of the storage network.
    Type: Application
    Filed: March 31, 2022
    Publication date: July 14, 2022
    Applicant: Pure Storage, Inc.
    Inventors: Ravi V. Khadiwala, Jason K. Resch
  • Patent number: 11385964
    Abstract: A method for execution by a computing device of a storage network includes determining an encoded data slice reduction scheme for a set of encoded data slices stored in a set of storage units of the storage network, where a data segment of data is encoded into the set of encoded data slices in accordance with encoding parameters, and where the encoding parameters include a pillar width number and a decode threshold number. The method further includes maintaining storage of the set of encoded data slices in accordance with the encoded data slice reduction scheme, where the maintaining storage includes keeping, until a deletion time for the set of encoded data slices, a number of encoded data slices of the set of encoded data slices equal to or greater than the decode threshold number and less than the pillar width number.
    Type: Grant
    Filed: October 9, 2020
    Date of Patent: July 12, 2022
    Assignee: PURE STORAGE, INC.
    Inventors: S. Christopher Gladwin, Gary W. Grube, Jason K. Resch
  • Publication number: 20220214944
    Abstract: A storage network method begins by receiving a data retrieval request, wherein a data object is segmented into a plurality of data segments, determining a storage configuration associated with the data retrieval request based on an encoded data slice identifier included in the retrieval request and, based on the storage configuration, determining a plurality of storage resources associated with the encoded data slice identifier The mehod continues by determining an estimated performance level for each storage resource of a plurality of storage resources associated with the encoded data slice identifier, determining an expected retrieval performance for the retrieval request and selecting a storage resource of the plurality of storage resources based on the expected retrieval performance. The method then continues by transmitting a read request for one or more encoded data slices associated with the encoded data slice identifier to the storage resource.
    Type: Application
    Filed: March 22, 2022
    Publication date: July 7, 2022
    Applicant: Pure Storage, Inc.
    Inventors: Thomas F. Shirley, JR., Greg R. Dhuse, Jason K. Resch
  • Publication number: 20220187989
    Abstract: A data object to be stored in one or more memories as a first set of encoded data segments is received at a storage processing module. An index to include an entry identifying the data object to be stored is updated, and storage of the data object is initiated. Initiating storage of the data object includes initiating storage of the first set of encoded data segments. A determination is made regarding whether storage of the data object to the one or more memories has been completed. If storage of the data object has been completed, the entry identifying the data object to be stored is removed from the index.
    Type: Application
    Filed: March 4, 2022
    Publication date: June 16, 2022
    Applicant: Pure Storage, Inc.
    Inventors: Jason K. Resch, Wesley B. Leggette, Ilya Volvovski
  • Publication number: 20220188179
    Abstract: A computing device includes processing circuitry configured to determine whether to modify the dispersed error encoding parameters of a set of encoded data slices (EDSs) stored in a distributed storage network to produce a set of modified EDSs, wherein a data object is segmented into a plurality of data segments and in response to a determination to modify the dispersed error encoding parameters of the set of EDSs, identify a plurality of storage units to store the modified EDSs and determine modified dispersed error encoding parameters for the modified EDSs. The computing device is further configured to assign each storage unit of the plurality of storage units to execute one or more storage modification tasks associated with producing the modified EDSs; and transmit one or more EDS of the set of EDSs to each storage unit of the plurality of storage units for modification and storage.
    Type: Application
    Filed: March 4, 2022
    Publication date: June 16, 2022
    Applicant: Pure Storage, Inc.
    Inventors: Wesley B. Leggette, Andrew D. Baptist, Greg R. Dhuse, Jason K. Resch, Gary W. Grube, S. Christopher Gladwin