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

  • Publication number: 20240137226
    Abstract: A device for use in a storage network including storage network memory distributed amongst a plurality of storage units. The device includes a processing module operably couple to a memory that stores operational instructions. The processing module is configured to execute the operational instructions to determine storage parameters associated with encoded data slices generated from data to be stored in the plurality of storage units. The storage parameters include information indicating a read threshold number of encoded data slices required to recover the data. The method further includes facilitating distributed storage of the encoded data slices among the plurality of storage units such that the number of the error-encoded data slices stored in any particular storage unit is chosen so that in the event of an unavailability of any individual storage unit, at least a read threshold number of encoded data slices are still accessible from the remaining storage units.
    Type: Application
    Filed: January 3, 2024
    Publication date: April 25, 2024
    Applicant: Pure Storage, Inc.
    Inventors: Jason K. Resch, Greg R. Dhuse
  • Publication number: 20240134858
    Abstract: A database system is operable to determine a query for execution. A disjunction of a plurality of conjunctive normal form (CNF) filtering predicates is determined based on filtering predicates of the query. An IO pipeline is generated based on the disjunction of the plurality of CNF filtering predicates that includes, based on applying at least one type of optimization, at least one shared IO element common to multiple ones of plurality of the CNF filtering predicates. The IO pipeline is executed in accordance with execution of the query to generate a filtered subset of a plurality of rows that each meet at least one of the plurality of CNF filtering predicates.
    Type: Application
    Filed: October 11, 2023
    Publication date: April 25, 2024
    Applicant: Ocient Holdings LLC
    Inventors: Sarah Kate Schieferstein, Jason Arnold, Austen Thomas Darre, Darius Russell Kish, Matthew Ashbeck, Greg R. Dhuse, Anna Veselova, Benjamin Daniel Rabe, Pieter Charles Jas Svenson
  • Patent number: 11960361
    Abstract: A method for execution by a storage network includes receiving a request pertaining to a data object. Metadata associated with the data object is determined and used to identify data segments associated with the data object and a set of storage units associated with the data segments. Based on a set of query requests, a response is received from a storage unit from the set of storage units. When the response indicates a storage environment that is unfavorable as compared to predetermined performance metrics, the storage network facilitates migration of encoded data slices associated with the storage unit to another storage unit.
    Type: Grant
    Filed: October 21, 2022
    Date of Patent: April 16, 2024
    Assignee: Pure Storage, Inc.
    Inventors: Ahmad Alnafoosi, Andrew D. Baptist, Greg R. Dhuse, Jason K. Resch, Ilya Volvovski
  • Publication number: 20240111745
    Abstract: A method includes performing a search of an inverted index structure indexing values of a column to generate an in-range indexed value set by identifying all indexed values of the inverted index structure falling within a range corresponding to a range-based filter. A set of characteristics of the in-range indexed value set are identified based on performing the search of an inverted index structure. When the set of characteristics compare favorably to the set of index-usage requirements, output is generated based on performing a plurality of searches to the inverted index structure based on the in-range indexed value set. When the set of characteristics compare unfavorably to the set of index-usage requirements, the output is generated without performing any searches to the inverted index structure.
    Type: Application
    Filed: September 15, 2023
    Publication date: April 4, 2024
    Applicant: Ocient Holdings LLC
    Inventors: Richard George Wendel, III, Greg R. Dhuse, Hassan Farahani, Matthew Ashbeck, Anna Veselova, Benjamin Daniel Rabe
  • 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: 11934380
    Abstract: A source storage unit of a storage network operates by: sending a slice to migrate from the source storage unit to a destination storage unit; sending a slice verification request to the destination storage unit, wherein the slice verification request includes one or more of: a slice identifier, the slice, a revision indicator, a verification method indicator, or a nonce; receiving an integrity value from the destination storage unit; determining when the integrity value compares favorably to the slice verification request by determining when a hash of the slice and a nonce matches the integrity value or determining when a decrypted signature of the integrity value matches a hash of the slice and the nonce or the slice and the nonce; when the integrity value compares favorably to the slice verification request, updating a slice identifier assignment associated with a slice identifier corresponding to the slice, wherein updating the slice identifier assignment associates the destination storage unit with the s
    Type: Grant
    Filed: December 14, 2021
    Date of Patent: March 19, 2024
    Assignee: Pure Storage, Inc.
    Inventors: Greg R. Dhuse, Jason K. Resch
  • Publication number: 20240078154
    Abstract: A method for execution by one or more computing devices includes selecting a first routing path from a plurality of routing paths to a set of storage units based on routing path performance information, where the first routing path has a performance level greater than a first performance threshold. The method further includes selecting a second routing path from the plurality of routing paths based on the routing path performance information, where the second routing path has a performance level less than or equal to the first performance threshold. The method further includes sending a first subset of encoded data slices to the set of storage units via the first routing path for storage therein. The method further includes sending a second subset of encoded data slices to the set of storage units via the second routing path for storage therein.
    Type: Application
    Filed: November 1, 2023
    Publication date: March 7, 2024
    Applicant: Pure Storage, Inc.
    Inventors: Gary W. Grube, Timothy W. Markison, S. Christopher Gladwin, Greg R. Dhuse, Andrew D. Baptist, Ilya Volvovski, Jason K. Resch
  • 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
  • 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
  • Patent number: 11870916
    Abstract: A method for use in a distributed storage network including a distributed storage network (DSN) memory, which in turn includes multiple storage units, includes determining storage parameters associated with error-encoded data slices generated from data to be stored in the DSN memory. The storage parameters include information indicating a read-threshold number of error-encoded data slices required to recover the data. The method further includes distributedly storing the error-encoded data slices among the plurality of storage units so that the number of the error-encoded data slices stored in any particular storage unit is chosen so that in the event of a failure of any individual storage unit, at least a read-threshold number of error-encoded data slices are still accessible from the remaining storage units.
    Type: Grant
    Filed: February 1, 2023
    Date of Patent: January 9, 2024
    Assignee: Pure Storage, Inc.
    Inventors: Jason K. Resch, Greg R. Dhuse
  • Publication number: 20240004858
    Abstract: A database system is operable to generate a first segment that includes a first subset of a plurality of rows. A first secondary indexing scheme for indexing the first segment is selected from a plurality of secondary indexing options, and first index data for the first segment is generated in accordance with the first secondary indexing scheme. A second segment is generated that includes a second subset of the plurality of rows. A second secondary indexing scheme for indexing the second segment is selected from the plurality of secondary indexing options, and second index data is generated for the second segment in accordance with the second secondary indexing scheme. Execution of a query is facilitated by utilizing the first index data and the second index data.
    Type: Application
    Filed: September 19, 2023
    Publication date: January 4, 2024
    Applicant: Ocient Holdings LLC
    Inventors: Greg R. Dhuse, Daniel Coombs
  • Publication number: 20230418827
    Abstract: A database system is operable to determine a query operator execution flow that includes a plurality of operators for execution of a corresponding query against a database having a schema that includes a plurality of columns. The query operator execution flow is executed in conjunction with executing the corresponding query against the database based on generating a first plurality of data blocks of a multi-column data stream as first output of a first operator of the plurality of operators, where each data block of the multi-column data stream includes column values for each of the plurality of columns. Executing the query operator execution flow is further based on processing the multi-column data stream as input of a second operator of the plurality of operators serially after the first operator to generate a second plurality of data blocks as second output of the second operator.
    Type: Application
    Filed: May 24, 2023
    Publication date: December 28, 2023
    Applicant: Ocient Holdings LLC
    Inventors: George Kondiles, Ellis Mihalko Saupe, Greg R. Dhuse
  • Publication number: 20230418820
    Abstract: A database system is operable to store a plurality of column values for a first column of a plurality of rows. A query having a query predicate indicating a negation of a condition for the first column based on a first value is executed. A first index element is applied to identify a first proper subset of the plurality of rows having values for the first column meeting the condition based on accessing index data. At least one second index element is applied to identify a second proper subset of the plurality of rows having values for the first column meeting at least one missing data-based condition based on accessing the index data. A set difference between the plurality of rows and a union of the first proper subset and the second proper subset is identified. A query resultant for the query is generated based on the set difference.
    Type: Application
    Filed: September 7, 2023
    Publication date: December 28, 2023
    Applicant: Ocient Holdings LLC
    Inventors: Anna Veselova, Greg R. Dhuse, Matthew Ashbeck
  • 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: 20230385278
    Abstract: A database system is operable to determine a query for execution. The database system can execute a left join operation for the query based on receiving a plurality of left input rows, and forwarding all of the plurality of left input rows are forwarded. It is determined whether any right input rows match with each given left input row based on a hash map. When one right input row is identified as matching with the given left input row, a value of right input row is copied and emitted in conjunction with the given left input row. When no right input rows are identified as matching with the given left input row, a null value is emitted in conjunction with the given left input row.
    Type: Application
    Filed: May 23, 2023
    Publication date: November 30, 2023
    Applicant: Ocient Holdings LLC
    Inventors: Samuel Peter Bove, Jason Arnold, Susmita Saha, Sarah Kate Schieferstein, Max Guthmann, Ellis Mihalko Saupe, Greg R. Dhuse
  • Publication number: 20230388101
    Abstract: A method for execution in a storage network begins by performing a key derivation function on a password to produce a key and issuing a set of passwords based on the key to a set of storage units, where a data object is dispersed error encoded in accordance with dispersed error encoding parameters to produce a set of encoded data slices and the set of encoded data slices are stored in the set of storage units. The method continues, by receiving at least a decode threshold number of confidential information responses from the set of storage units and regenerating a set of keys for the confidential information responses. The method then continues by decrypting the confidential information responses using the set of keys to reproduce a set of encoded data slices and dispersed storage error decoding a decode threshold number of the set of encoded data slices to produce recovered data.
    Type: Application
    Filed: August 8, 2023
    Publication date: November 30, 2023
    Applicant: Pure Storage, Inc.
    Inventors: Jason K. Resch, Greg R. Dhuse, Bart R. Cilfone
  • Patent number: 11822532
    Abstract: A database system operates by: receiving a user-generated secondary indexing hint data for a dataset from a client device, wherein the client device generated the user-generated hint data based on user input in response to at least one prompt displayed by an interactive interface displayed via a display device of the client device; generating a plurality of segments that each include distinct subsets of a plurality of rows of a dataset; automatically selecting, for each of the plurality of segments, a secondary indexing scheme from a plurality of secondary indexing options based on the user-provided secondary indexing hint data; generating a plurality of secondary indexes for each of the plurality of segments in accordance with the corresponding secondary indexing scheme; and storing the plurality of segments and the plurality of secondary indexes in memory.
    Type: Grant
    Filed: March 24, 2021
    Date of Patent: November 21, 2023
    Assignee: Ocient Holdings LLC
    Inventors: Greg R. Dhuse, Daniel Coombs
  • 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