Patents by Inventor Greg R. Dhuse

Greg R. Dhuse 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: 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: 11815998
    Abstract: A method includes dispersed storage error encoding a data object to produce a set of encoded data slices. The method further includes obtaining routing path performance information for a plurality of routing paths from the computing device to a set of storage units. The method further includes selecting a first routing path for sending a first subset of the set of encoded data slices, where the first routing path has a performance level greater than a first performance threshold. The method further includes selecting a second routing path for sending a second subset of the set of encoded data slices, where the second routing path has a performance level less than or equal to the first performance threshold. The method further includes sending the first and second subsets of encoded data slices to the set of storage units via the first and second routing paths for storage therein.
    Type: Grant
    Filed: November 14, 2022
    Date of Patent: November 14, 2023
    Assignee: Pure Storage, Inc.
    Inventors: Gary W. Grube, Timothy W. Markison, S. Christopher Gladwin, Greg R. Dhuse, Andrew D. Baptist, Ilya Volvovski, Jason K. Resch
  • 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: 11803544
    Abstract: A method for execution by at least one processor of a database system includes storing a plurality of column values for a first column of a plurality of rows. Each of a set of missing data-based conditions for the first column are indexed via an indexing scheme. A subset of the set of missing data-based conditions that satisfy a query predicate of a query are identified. An IO pipeline for access of the first column based on the query predicate and further based on the subset of the set of missing data-based conditions is generated. The IO pipeline is applied in conjunction with execution of the query by applying at least one index element to identify a proper subset of the plurality of rows based on index data of the indexing scheme, and by generating a query resultant based on the proper subset.
    Type: Grant
    Filed: October 6, 2021
    Date of Patent: October 31, 2023
    Assignee: Ocient Holdings LLC
    Inventors: Anna Veselova, Greg R. Dhuse, Matthew Ashbeck
  • Publication number: 20230342250
    Abstract: A decentralized computer system operates by: storing encoded data blocks in an existing set of decentralized storage units of the decentralized computer system, wherein the decentralized computer system operates in accordance with a decentralized agreement protocol; assigning one or more additional decentralized storage units to the decentralized computing system, wherein the one or more additional decentralized storage units do not currently store the encoded data blocks; allocating the encoded data blocks to the one or more additional decentralized storage units, in accordance with the decentralized agreement protocol; and facilitating storage of the encoded data blocks from the existing set of decentralized storage units of the decentralized computer system to the at least one of the one or more additional decentralized storage units.
    Type: Application
    Filed: July 6, 2023
    Publication date: October 26, 2023
    Applicant: Pure Storage, Inc.
    Inventors: Ravi V. Khadiwala, Greg R. Dhuse, Manish Motwani, Jason K. Resch, Ilya Volvovski
  • Publication number: 20230306041
    Abstract: Methods and apparatus for asynchronous replication of data in a storage network. In an embodiment, a method begins by a processing module(s) of a computing device identifying at least a first storage set and a second storage set for replicated storage of data. The processing module maintains a synchronization schedule for the first storage set and the second storage set. After initiating storage of a data object in the first storage set, the processing module determines, based at least in part on the synchronization schedule, to synchronize the first storage set and the second storage set. In response to determining to synchronize the first and second storage sets, the processing module determines that the second storage set requires the data object to maintain synchronization with the first storage set, and facilitates storage of the data object in the second storage set.
    Type: Application
    Filed: May 25, 2023
    Publication date: September 28, 2023
    Applicant: Pure Storage, Inc.
    Inventors: Jason K. Resch, Scott M. Horan, Ravi V. Khadiwala, Greg R. Dhuse
  • Publication number: 20230273858
    Abstract: A computing device for use in a storage network includes one or more network interfaces, memory with operational instructions and a processing module. The processing module is configured to execute the operational instructions receive a storage request for data and select a plurality of memory devices for storage of the data. The processing module partitions the data into a plurality of chunk sets and encode each chunk set of the plurality of chunk sets according to a dispersed storage error coded function to produce a plurality of chunks. Finally, the processing module facilitates storage of each chunk of the plurality of chunks in a memory device of the plurality of memory devices.
    Type: Application
    Filed: May 9, 2023
    Publication date: August 31, 2023
    Applicant: Pure Storage, Inc.
    Inventors: Greg R. Dhuse, Jason K. Resch
  • Patent number: 11740972
    Abstract: Methods and apparatus for use in a storage network operate by: storing, in a first storage unit of a first set of storage units of the storage network, a first encoded data slice corresponding to at least one data object; assigning one or more additional storage units to the storage network to form a second set of storage units, the second set of storage units including the one or more additional storage units; migrating the first encoded data slice from the first storage unit to at least one of the one or more additional storage units of the second set of storage units; and reallocating a mapping of the first encoded data slice from the first storage unit to the at least one of the one or more additional storage units of the second set of storage units.
    Type: Grant
    Filed: October 30, 2020
    Date of Patent: August 29, 2023
    Assignee: Pure Storage, Inc.
    Inventors: Ravi V. Khadiwala, Greg R. Dhuse, Manish Motwani, Jason K. Resch, Ilya Volvovski
  • 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: 11728964
    Abstract: A method begins by a processing module of a storage unit of a storage network identifying a first storage format used to store a plurality of encoded data slices in a first memory of the storage unit and continues with the processing module determining to utilize another storage format for storage of the plurality of encoded data slices. The method then continues, with the storage unit selecting a second storage format for storage of the plurality of encoded data slices and initiating migration of the plurality of encoded data slices from the first storage format to storage using the second storage format. Finally, the method continues with updating a performance metric for at least a portion of the storage network while initiating migrating the plurality of encoded data slices.
    Type: Grant
    Filed: May 16, 2022
    Date of Patent: August 15, 2023
    Assignee: Pure Storage, Inc.
    Inventors: Jason K. Resch, Greg R. Dhuse, Bart R. Cilfone
  • Publication number: 20230244659
    Abstract: A database system operates by determining a query operator execution flow that includes a negation of a logical connective indicating a first column of a plurality of rows in a first operand of the logical connective and indicating a second column of the plurality of rows in a second operand of the logical connective; and facilitating execution of the negation of the logical connective of the query operator execution flow against the plurality of rows utilizing first and second index data of a probabilistic indexing scheme on first and second columns of the plurality of rows.
    Type: Application
    Filed: March 29, 2023
    Publication date: August 3, 2023
    Applicant: Ocient Holdings LLC
    Inventors: Greg R. Dhuse, Matthew Ashbeck
  • 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: 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
  • 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: 20230195574
    Abstract: A method for execution by a computing device of a storage network includes obtaining performance information for a storage device of a set of storage devices of the storage network, wherein data is error encoded into sets of encoded data slices that are stored in the storage devices. The method further includes obtaining additional performance information for each storage device of the storage devices, wherein the additional performance information is based on historical data. The method further includes comparing the performance information to the additional performance information to produce comparison performance information and identifying at least one component of the comparison performance information. The method further includes comparing the at least one component to a corresponding error threshold and outputting indication of a performance error for the storage device when at least one component of the comparison performance information is greater than an error threshold.
    Type: Application
    Filed: February 21, 2023
    Publication date: June 22, 2023
    Applicant: Pure Storage, Inc.
    Inventors: Greg R. Dhuse, Jason K. Resch, Ilya Volvovski
  • Patent number: 11681582
    Abstract: A storage unit operates by: receiving a write slice request, wherein the write slice request includes a plurality of encoded data slices and wherein the write slice request corresponds to a range; determining whether a write lock conflict exists based on the range; issuing an unfavorable write slice response when the write lock conflict is determined to exist; and when the write lock conflict is determined to not exist: initiating local storage of the plurality of encoded data slices; and issuing a favorable write slice response.
    Type: Grant
    Filed: March 2, 2022
    Date of Patent: June 20, 2023
    Assignee: Pure Storage, Inc.
    Inventors: Zachary J. Mark, Ilya Volvovski, Greg R. Dhuse
  • Publication number: 20230176790
    Abstract: A method includes receiving an error message including first information associated with a first reported error and a time at which the first reported error was detected. First stored event records associated with second reported errors are identified. The first stored event records include second information describing previously reported errors that occurred within a predetermined time prior to the time at which the first reported error was detected. The method determines, based on the first information and the second information, whether a correlation exists among one or more of the previously reported errors and the first reported error. In response to determining that the correlation exists, generating an error correlation report predicting occurrence of a third error.
    Type: Application
    Filed: February 6, 2023
    Publication date: June 8, 2023
    Applicant: Pure Storage, Inc.
    Inventors: Greg R. Dhuse, Yogesh R. Vedpathak
  • Patent number: 11669397
    Abstract: A storage network receives data and a corresponding task, selects a storage units for the task, determines whether the data slice is locally available and when the data slice is not locally available, determines whether a redundant data slice is available from another storage unit. When the redundant data slice is not available from another storage unit, the storage network facilitates rebuilding the data slice to produce a rebuilt data slice by retrieving a decode threshold number of data slices corresponding to the data slice, decoding the decode threshold number of data slices to reproduce a data segment and re-encoding the data segment to produce a pillar width number of data slices that includes the rebuilt data slice.
    Type: Grant
    Filed: October 13, 2022
    Date of Patent: June 6, 2023
    Assignee: Pure Storage, Inc.
    Inventors: Greg R. Dhuse, Jason K. Resch