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: 20230004505
    Abstract: A storage system operates by generating system messages, in accordance with the system-level message processing parameters, the system messages including status information, performance information and alarms, each having one of a plurality of priorities. The generating includes: generating a first message of the system messages corresponding to a first of the storage nodes based on the system-level message processing parameters, the first message including a first alarm of the alarms having a first message priority of the plurality of priorities; and generating a second message of the system messages corresponding to a second of the storage nodes based on the system-level message processing parameters, the second message including a second alarm of the alarms having a second message priority of the plurality of priorities.
    Type: Application
    Filed: September 8, 2022
    Publication date: January 5, 2023
    Applicant: Pure Storage, Inc.
    Inventor: Greg R. Dhuse
  • Patent number: 11543964
    Abstract: A method includes determining whether an encoded data slice (EDS) of an “x” number of EDSs associated with a set of EDSs requires rebuilding, where the “x” number of EDSs is stored in a set of storage units of the storage network and the encoded data slice is stored in a first storage unit of the set of storage units. When the encoded data slice requires rebuilding, the method continues by identifying one of a “z” number of EDSs to replace the encoded data slice, where the “z” number of EDSs are not currently stored in the set of storage units. The method continues by constructing the one of the “z” number of EDSs from a decode threshold number of EDSs of the “x” number of EDSs and sending the one of the “z” number of EDSs to a second storage unit of the set of storage units.
    Type: Grant
    Filed: February 11, 2021
    Date of Patent: January 3, 2023
    Assignee: Pure Storage, Inc.
    Inventors: Jason K. Resch, Greg R. Dhuse
  • Patent number: 11526398
    Abstract: A method includes determining, by a computing device of a storage network, a pillar width to decode threshold ratio of a dispersed storage error encoding function based on routing path performance information of a set of routing paths with respect to a set of storage units of the storage network. The method further includes dispersed storage error encoding a data object in accordance with the pillar width to decode threshold ratio to produce a plurality of sets of encoded data slices. The method further includes sending the plurality of sets of encoded data slices to the set of storage units via the set of routing paths for storage therein.
    Type: Grant
    Filed: March 4, 2021
    Date of Patent: December 13, 2022
    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
  • Publication number: 20220391098
    Abstract: A method begins by a computing device of a storage network receiving a storage network access request and determining whether the storage network access request requires multiple access steps to a plurality of storage units, where a data segment of the plurality of data segments is dispersed error encoded in accordance with dispersed storage error encoding parameters to produce a set of encoded data slices that are distributedly stored among a plurality of storage units, and where a decode threshold number of encoded data slices are needed to recover the data segment. When the storage network access request requires multiple access steps to a plurality of storage units, the method continues with the computing device determining to delegate at least as portion of the multiple access steps to a delegation agent issuing a multi-step object access partial task to the delegation agent; and receiving a multistep object access result.
    Type: Application
    Filed: August 16, 2022
    Publication date: December 8, 2022
    Applicant: Pure Storage, Inc.
    Inventors: Greg R. Dhuse, Jason K. Resch
  • Publication number: 20220382751
    Abstract: A method for execution by at least one processor of a database system includes indexing a first column via a probabilistic indexing scheme. An IO pipeline that includes a probabilistic index-based IO construct for access of the first column is determined based on a query including a query predicate indicating the first column. The probabilistic index-based IO construct is applied in conjunction with execution of the query via the IO pipeline by applying an index element of the probabilistic index-based IO construct to identify a first subset of rows based on index data of the probabilistic indexing scheme for the first column. A filter element of the probabilistic index-based IO construct is applied to identify ones of a first subset of the plurality of column values corresponding to the first subset of rows that compare favorably to the query predicate.
    Type: Application
    Filed: May 28, 2021
    Publication date: December 1, 2022
    Applicant: Ocient Holdings LLC
    Inventors: Greg R. Dhuse, Matthew Ashbeck
  • Patent number: 11513700
    Abstract: A method for execution by one or more processing modules of one or more computing devices of a dispersed storage network (DSN). The method includes performing multiple splits in a single operation with a dispersed lockless concurrent index (DLCI) backed by a distributed transaction protocol by determining how many nodes n are required to hold data object entries, adding the n nodes to a distributed transaction, and when a parent node does not require a cascading split, adding it to the distributed transaction, and when the parent node needs to be split, recursively applying the determining and adding steps to the parent node until reaching a node that does not need to be split or is a root node of the DLCI.
    Type: Grant
    Filed: March 4, 2019
    Date of Patent: November 29, 2022
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Greg R. Dhuse, Kevin M. Freese, Thomas Dubucq
  • Publication number: 20220374162
    Abstract: A processing system of a storage network operates by receiving a write request associated with a data object; identifying dispersed storage error encoding parameters; and determining a number of available storage units. When the number of available storage units is determined to exceed a first number, the processing system operates by: determining a first write threshold number in accordance with the dispersed storage error encoding parameters; dispersed error encoding the data object to produce a first write threshold number of encoded data slices; and writing, to available storage units, the first write threshold number of encoded data slices.
    Type: Application
    Filed: August 8, 2022
    Publication date: November 24, 2022
    Applicant: Pure Storage, Inc.
    Inventors: Jason K. Resch, Andrew D. Baptist, Niall J. McShane, Greg R. Dhuse, Thomas F. Shirley, JR., Gregory Palinckx, Russell P. Kennedy, S. Christopher Gladwin, Robert C. McCammon, James Sherer
  • Publication number: 20220374311
    Abstract: A method includes determining an encoded data slice of a first subset of encoded data slices associated with a set of encoded data slices requires rebuilding, where the first subset of encoded data slices is stored in a set of storage units and includes at least a decode threshold number of encoded data slices. The method further includes identifying a second encoded data slice of a second subset of encoded data slices of the set of encoded data slices, where the second subset of encoded data slices is not currently stored in the set of storage units. The method further includes generating the second encoded data slice from the first subset of encoded data slices and sending the second encoded data slice to the set of storage units, where when stored, the second encoded data slice no longer included in the second subset of encoded data slices.
    Type: Application
    Filed: August 5, 2022
    Publication date: November 24, 2022
    Applicant: Pure Storage, Inc.
    Inventors: Jason K. Resch, Greg R. Dhuse
  • 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: 11507459
    Abstract: A method for execution in a storage network begins by generating a set of query requests for each data segment of a plurality of data segments that includes a corresponding set of slice identifiers of a plurality of sets of slice identifiers, where each slice identifier of the corresponding set of slice identifiers includes a pillar index based on a vault affiliated with the plurality of data segments. The method continues by transmitting the set of query requests to a set of storage units affiliated with the storage network, receiving a plurality of sets of query responses from the storage units, obtaining a data identifier for slice location identification and generating a storage record that includes the data identifier and an identity of the set of storage units. The method then continues by facilitating migration of at least some encoded data slices associated with the plurality of sets of slice identifiers when the storage record compares unfavorably to a storage record requirement.
    Type: Grant
    Filed: August 23, 2021
    Date of Patent: November 22, 2022
    Assignee: Pure Storage, Inc.
    Inventors: Ahmad Alnafoosi, Andrew D. Baptist, Greg R. Dhuse, Jason K. Resch, Ilya Volvovski
  • Publication number: 20220368757
    Abstract: A method for managing error recovery data in a dispersed storage network begins with a storage network processing module receiving a write request for an encoded data slice of a set of encoded data slices, where data is dispersed in accordance with dispersed error encoding parameters to produce a set of encoded data slices. The method continues with the storage network processing module generating parity data for the encoded data slice and sending the encoded data slice to a first storage unit of a set of storage units. Finally, the method continues with the storage network processing module sending the parity data for the encoded data slice to a second storage unit of a set of storage units.
    Type: Application
    Filed: July 29, 2022
    Publication date: November 17, 2022
    Applicant: Pure Storage, Inc.
    Inventors: Greg R. Dhuse, Jason K. Resch, Wesley B. Leggette
  • Publication number: 20220365687
    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 based on a data type of the access request and one or more storage access requirements of the 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. The method further includes 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 sending the access request to the processing unit.
    Type: Application
    Filed: August 2, 2022
    Publication date: November 17, 2022
    Applicant: Pure Storage, Inc.
    Inventors: Jason K. Resch, S. Christopher Gladwin, Kumar Abhijeet, Greg R. Dhuse
  • Patent number: 11487620
    Abstract: A network storage system operates by: sending, to at least one storage unit of a 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 a data segment, wherein the data segment is codable 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 slices that is required to decode the data segment; receiving from the at least one storage unit, a first subset of encoded data slices of the set of encoded data slices, wherein the first subset of encoded data slices is missing at least one missing encoded data slice from the number of the set of slices that is required to decode the data segment and that was not received from the at least one storage
    Type: Grant
    Filed: June 27, 2022
    Date of Patent: November 1, 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
  • Patent number: 11474729
    Abstract: A method for updating software of storage units of a set of storage units in a storage network. In an embodiment, each storage unit of the set of storage units determines a data slice storage status for data slices stored in the storage unit (e.g., by monitoring rebuilding messages relating to the data slices). A processing module of the storage network obtains the data slice storage status of the storage units of the set of storage units and determines whether to perform a software update to software of the storage units of the set of storage units. Determining whether to perform the software update includes determining, based on the data slice storage status of the storage units, whether a threshold number of storage units are associated with a favorable data slice storage status. In response to determining that a threshold number of storage units are associated with a favorable data slice storage status, the processing module indicates to perform the software update.
    Type: Grant
    Filed: July 30, 2021
    Date of Patent: October 18, 2022
    Assignee: Pure Storage, Inc.
    Inventors: Manish Motwani, Joseph M. Kaczmarek, Michael C. Storm, Ilya Volvovski, Greg R. Dhuse, Anthony J. Baldocchi, Jason K. Resch, Thomas D. Cocagne
  • Patent number: 11474958
    Abstract: A method for use with a storage network includes generating system messages, in accordance with the system-level message processing parameters, the system messages including status information, performance information and alarms, each having one of a plurality of priorities, wherein the generating includes: generating a first message of the system messages corresponding to a first of the storage nodes based on the system-level message processing parameters, the first message including a first alarm of the alarms having a first message priority of the plurality of priorities; and generating a second message of the system messages corresponding to a second of the storage nodes based on the system-level message processing parameters, the second message including a second alarm of the alarms having a second message priority of the plurality of priorities.
    Type: Grant
    Filed: February 3, 2020
    Date of Patent: October 18, 2022
    Assignee: PURE STORAGE, INC.
    Inventor: Greg R. Dhuse
  • Publication number: 20220327103
    Abstract: A method begins with a processing module of a distributed storage network (DSN), receiving a request to access a data object stored in the DSN and identifying a first data descriptor associated with the data object, identifying a second data descriptor associated with the data object, identifying a first data index key and a first index structure for the first data descriptor and identifying a second data index key and a second index structure for the second data descriptor. The method continues with the processing module accessing the first index structure for the first data descriptor , based on the first and second data index keys, to retrieve a first and second set of data identifiers, respectively and based on one or more data identifiers being common to the first set of data identifiers and the second set of data identifiers, creating a superset of data identifiers.
    Type: Application
    Filed: June 29, 2022
    Publication date: October 13, 2022
    Applicant: Pure Storage, Inc.
    Inventors: Greg R. Dhuse, Ilya Volvovski, Adam M. Gray, Andrew D. Baptist
  • Publication number: 20220327022
    Abstract: A network storage system operates by: sending, to at least one storage unit of a 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 a data segment, wherein the data segment is codable 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 slices that is required to decode the data segment; receiving from the at least one storage unit, a first subset of encoded data slices of the set of encoded data slices, wherein the first subset of encoded data slices is missing at least one missing encoded data slice from the number of the set of slices that is required to decode the data segment and that was not received from the at least one storage
    Type: Application
    Filed: June 27, 2022
    Publication date: October 13, 2022
    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
  • Patent number: 11463420
    Abstract: A method for execution by one or more storage units of a dispersed storage network (DSN). The method begins by receiving, at a first storage unit, a request for a partial task. The method continues by generating a slice request, to one or more additional storage units, when the first storage unit does not contain all encoded data slices required to execute the partial task. The method continues by receiving the at least one additional encoded data slice from the one or more additional storage units and performing the partial task on the first encoded data slice and the at least one additional encoded data slice to produce at least partial results.
    Type: Grant
    Filed: April 27, 2020
    Date of Patent: October 4, 2022
    Assignee: PURE STORAGE, INC.
    Inventors: Andrew D. Baptist, Greg R. Dhuse, Wesley B. Leggette, Jason K. Resch
  • Publication number: 20220308962
    Abstract: Methods and apparatus for selection of memory devices in a distributed storage network. In an example, a computing device receives a data object for storage and selects a set of storage nodes of a plurality of sets of storage nodes for storing the data object. Selection of the set of storage nodes includes determining storage attributes associated with each set of storage nodes of the plurality of sets of storage nodes. Selection of the set of storage nodes additionally includes determining a storage preference associated with the data object, and comparing the storage preference with the storage attributes of the plurality of sets of storage nodes to determine a best match. Following selection of a set of storage nodes, the computing device facilitates storage of the data object in the selected set of storage nodes.
    Type: Application
    Filed: June 13, 2022
    Publication date: September 29, 2022
    Applicant: 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
  • Patent number: 11449280
    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 processing circuitry operably coupled to the interface and to the memory. The processing circuitry is configured to execute the operational instructions to perform various operations and functions. The computing device determines a number storage units that have been provisioned on the storage network but has not been assigned for storage of data. The computing device then determines a storage utilization level for each of a plurality of active storage units associated with the storage network and based on the storage utilization level, determines whether to activate one or more inactive storage units. The computing device is configured to determine at least a portion of the number of inactive storage units for activation and issue an assignment message to the at least a portion of the number of inactive storage units.
    Type: Grant
    Filed: January 14, 2021
    Date of Patent: September 20, 2022
    Assignee: PURE STORAGE, INC.
    Inventors: Greg R. Dhuse, Jason K. Resch