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: 11016702Abstract: A managing unit included in a distributed storage network (DSN) receives an event representation request, and identifies event record entries based on that request. The event record entries include information associating reporting entities with the event record entries. The management unit obtains the event record entries from the reporting entities; at least one event record entry is obtained from a first reporting entity, and at least another event record entry is obtained from a second reporting entity. In response to receiving the event representation request, the management unit generates a representation of the event record entries, and outputs the representation to a requesting entity.Type: GrantFiled: October 1, 2018Date of Patent: May 25, 2021Assignee: PURE STORAGE, INC.Inventors: Greg R. Dhuse, Yogesh R. Vedpathak
-
Patent number: 11019146Abstract: A method for execution by a dispersed storage and task (DST) processing unit includes determining a first optimal slice size requirement is determined for a first independent data element (IDE). The first IDE is split into a first plurality of IDEs based on determining the first IDE compares unfavorably to the first optimal slice size requirement. An error coding function is performed on the first plurality of IDEs to produce a set of encoded slices for each of the first plurality of IDEs for transmission to storage units. A subset of additional IDEs are selected to be merged into a merged IDE based on a second optimal slice size requirement, and continuous content of the subset of additional IDEs is concatenated to produce the merged IDE. The error coding function is performed on the merged IDE to produce a second set of encoded slices for transmission to storage units.Type: GrantFiled: September 16, 2019Date of Patent: May 25, 2021Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Jason K. Resch, Ram Narayanan, Andrew D. Baptist, Praveen Viraraghavan, Wesley B. Leggette, Ethan S. Wozniak, Manish Motwani, Bart R. Cilfone, Greg R. Dhuse
-
Patent number: 10970168Abstract: A method includes determining, by a computing device of a dispersed storage network (DSN), routing path performance information of a set of routing paths with respect to a set of storage units of the DSN. The method further includes adjusting a pillar width to decode threshold ratio of a dispersed storage error encoding function when the routing path performance information deviates from a performance threshold. The performance threshold includes a first error rate threshold and a second error rate threshold. The method further includes dispersed storage error encoding a data object using the adjusted 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: GrantFiled: April 8, 2019Date of Patent: April 6, 2021Assignee: 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: 10969972Abstract: A computing device of a dispersed storage network includes a processing module operable to receive a plurality of requests regarding writing a plurality of data objects to storage units from a plurality of user computing devices. The processing module is further operable to activate a verification process to verify a content format verification code provided by a user computing device for a request regarding writing a data object, activate a signature process to sign the content format verification code with a trusted certificate to produce a signed content format verification code, send the trusted certificate and a signed content format verification code identification to a dispersed storage (DS) processing unit, receive a verification message indicating that the content format verification code identifies a correct format for the data object, and send the data object in the correct format to the DS processing unit for dispersed storage error encoding and storage.Type: GrantFiled: July 31, 2019Date of Patent: April 6, 2021Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Andrew D. Baptist, Bart R. Cilfone, Greg R. Dhuse, Wesley B. Leggette, Manish Motwani, Jason K. Resch, Ilya Volvovski, Ethan S. Wozniak
-
Patent number: 10963397Abstract: A method includes determining, by a storage unit, to place a pointer in a hash table that is stored in local memory of the storage unit. The method further includes executing, by the storage unit, a hash function on addressing information relating to the pointer to produce a hash resultant. The method further includes executing, by the storage unit, a second function on related data to the addressing information or to the pointer to produce an auxiliary resultant. The method further includes storing, by the storage unit, the hash resultant and the auxiliary resultant as an entry in the hash table for the pointer, wherein, when a hash collision occurs with respect to the hash resultant, the storage unit utilizes the auxiliary resultant to resolve the hash collision.Type: GrantFiled: March 26, 2018Date of Patent: March 30, 2021Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Greg R. Dhuse, Ilya Volvovski, Ethan S. Wozniak, Ravi V. Khadiwala, Jason K. Resch, Andrew D. Baptist, Praveen Viraraghavan
-
Patent number: 10956266Abstract: A method begins by obtaining, for a set of data access requests to a set of storage units of a dispersed storage network, a storage-revision indicator from each of at least some storage units of the set of storage units, where the set of data access requests is regarding a data access transaction involving a set of encoded data slices. The method continues by generating an anticipated storage-revision indicator for the data access transaction based on a current revision level of the set of encoded data slices and a data access type of the data access transaction. The method continues by comparing the anticipated storage-revision indicator with the storage-revision indicators received from the at least some storage units. When a threshold number of the storage-revision indicators received from the at least some storage units substantially match the anticipated storage-revision indicator, the method continues by executing the data access transaction.Type: GrantFiled: March 27, 2019Date of Patent: March 23, 2021Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Greg R. Dhuse, Ravi V. Khadiwala
-
Patent number: 10942684Abstract: An integrity processing unit includes rebuild modules to rebuild one or more encoded data slices in a dispersed storage network (DSN) memory unit. The rebuild modules determine a rebuild rate of the DSN memory unit, and, based on the rebuild rate, a rebuild rate status of the DSN memory unit. When the rebuild rate status is a high rebuild rate status, the rebuild rate to the DSN memory unit is reduced and, when the rebuild rate is not zero, the one or more encoded data slices are rebuilt in the DSN memory unit.Type: GrantFiled: August 31, 2018Date of Patent: March 9, 2021Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Andrew D. Baptist, Greg R. Dhuse, Jason K. Resch, Ethan S. Wozniak
-
Patent number: 10944712Abstract: A method for processing partial tasks in a distributed storage network (DSN) includes receiving a partial task request message for a DS execution unit, where the partial task request message includes corresponding partial tasks. The method continues by processing each partial task request message in accordance with the processing parameters to produce task request slice groupings, generating slices, such that each message is directed at a corresponding DS execution unit, and the sending the slice groupings and the task request slice groupings to the selected DS execution units for storage therein. The method continues by retrieving at least a decode threshold number of task response slices of one or more task response slice groupings from the DS execution units, decoding the task response slices, retrieving at least a decode threshold number of partial result slices, and decoding the partial results slices and processing the partial results to produce a result.Type: GrantFiled: April 29, 2020Date of Patent: March 9, 2021Assignee: PURE STORAGE, INC.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: 10936448Abstract: A method includes determining an encoding modification for a set of encoded data slices where a data segment of data is dispersed storage error encoded into the set of encoded data slices based on dispersed storage error encoding parameters. The method further includes determining a plurality of tasks for executing the encoding modification, where the encoding modification includes altering one or more parameters of the dispersed storage error encoding parameters. The method further includes assigning a first task of the plurality of tasks to a first storage unit and assigning remaining tasks of the plurality of tasks to a set of storage units. The method further includes executing, by the first storage unit and at least some storage units of the set of storage units, the first task and the remaining tasks of the plurality of tasks, respectively, to produce a modified set of encoded data slices.Type: GrantFiled: October 12, 2018Date of Patent: March 2, 2021Assignee: PURE STORAGE, INC.Inventors: Wesley B. Leggette, Andrew D. Baptist, Greg R. Dhuse, Jason K. Resch, Gary W. Grube, S. Christopher Gladwin
-
Patent number: 10922179Abstract: A method for execution by a dispersed storage network (DSN), the method begins by determining a slice name of an encoded data slice to verify, obtaining the encoded data slice and optionally compressing the encoded data slice, determining a dispersed storage (DS) unit of the stored set of DS units to produce a selected DS unit, sending the compressed encoded data slice request message to the selected DS unit, receiving a compressed encoded data slice response message to produce a selected compressed encoded data slice, determining a compressed encoded data slice partial of the encoded data slice, determining whether a sum of compressed encoded data slice partials compares favorably to the selected compressed encoded data slice, indicating a failed test when the processing module determines that the comparison is not favorable and indicating a passed test when the processing module determines that the comparison is favorable.Type: GrantFiled: May 30, 2019Date of Patent: February 16, 2021Assignee: PURE STORAGE, INC.Inventors: Jason K. Resch, Greg R. Dhuse
-
Patent number: 10915261Abstract: A method for execution by a computing device of a dispersed storage network includes identifying a DSN address for data to be accessed within a DSN. A plurality of storage cohorts associated with the data to be accessed are identified. Ranked scoring information for each storage cohort obtaining ranked scoring information for each storage cohort of the plurality of storage cohorts with regards to the data to be accessed is obtained. A storage cohort of the plurality of storage cohorts is selected based on the ranked scoring information. Slice access requests are issued to a set of storage units of the selected storage cohort for the data to be accessed. Slice access responses received from at least one of the set of storage units of the selected storage cohort are processed.Type: GrantFiled: December 15, 2017Date of Patent: February 9, 2021Assignee: PURE STORAGE, INC.Inventors: Andrew D. Baptist, Greg R. Dhuse, Wesley B. Leggette, Jason K. Resch, Ilya Volvovski
-
Patent number: 10904337Abstract: A distributed storage network (DSN) includes a DSN memory and a distributed storage (DS) processing unit. The DS processing unit determines a particular revision of source data for persistence, and generates a protocol message associated with the particular revision of source data. The protocol message is generated based on a balance between durability and persistence associated with the particular revision. The protocol message is transmitted from the DS processing unit to the DSN memory, and indicates to the DSN memory a particular persistence protocol. The DSN memory process data slices corresponding to the particular revision of source data in accordance with the particular persistence protocol.Type: GrantFiled: June 28, 2019Date of Patent: January 26, 2021Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Andrew D. Baptist, Greg R. Dhuse, Ravi V. Khadiwala, Manish Motwani, Praveen Viraraghavan, Ilya Volvovski
-
Patent number: 10871905Abstract: 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: GrantFiled: January 24, 2019Date of Patent: December 22, 2020Assignee: PURE STORAGE, INC.Inventors: Greg R. Dhuse, Jason K. Resch, Ethan S. Wozniak
-
Patent number: 10855759Abstract: A method for execution by a dispersed storage and task (DST) processing unit includes generating contention level data by evaluating an update contention level in response to determining to update an entry of a node of a dispersed hierarchical index. The update of the node is executed when the contention level data indicates that the update contention level is favorable. An index update request is generated for transmission to an index update unit via a network when the contention level data indicates that the update contention level is unfavorable.Type: GrantFiled: January 3, 2017Date of Patent: December 1, 2020Assignee: PURE STORAGE, INC.Inventors: Greg R. Dhuse, Adam M. Gray, Scott M. Horan, Ravi V. Khadiwala, Tyler K. Reid, Jason K. Resch, Daniel J. Scholl, Ilya Volvovski
-
Patent number: 10838814Abstract: A method for execution by a processing system in dispersed storage and task network (DSTN) that includes a processor, includes: identifying a slice name of a slice in error of a set of slices stored in a set of dispersed storage (DS) units; identifying a number of slice errors of the set of slices; generating a queue entry that includes the slice name of the slice in error, a rebuilding task indicator, an identity of the set of slices, and the number of slice errors; identifying a rebuilding queue based on the number of slice errors, wherein the rebuilding queue is associated with one of: the set of DS units or another set of DS units; and facilitating storing the queue entry in the identified rebuilding queue.Type: GrantFiled: January 10, 2019Date of Patent: November 17, 2020Assignee: PURE STORAGE, INC.Inventors: Andrew D. Baptist, Greg R. Dhuse, Adam M. Gray, Wesley B. Leggette, Jason K. Resch, Ilya Volvovski
-
Patent number: 10831600Abstract: A method for execution by a dispersed storage and task (DST) execution unit includes identifying a plurality of pending operations. A resource availability level to support execution of at least one of the plurality of pending operations is determined, and a required resource level to execute the at least one of the plurality of pending operations is determined. A balance factor between at least two types of the plurality of pending operations is determined based on the resource availability level and the required resource level. Determination of required timing of the execution of the at least one of the plurality of pending operations is coordinated with at least one other DST execution unit. An operation execution schedule is updated based on the required resource levels, the resource availability level, the balance factor, and the required timing of the execution.Type: GrantFiled: April 21, 2020Date of Patent: November 10, 2020Assignee: 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: 10831544Abstract: 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 generates a prioritized request that includes at least one of a task for execution or a priority level based on information stored within a storage unit (SU) of a plurality of storage units (SUs) implemented within the DSN. Note that the information corresponds to a data object that is related to a set of encoded data slices (EDSs) that are distributedly stored within the DSN. The computing device then transmits the prioritized request to the SU and receives, from the SU, a response to the prioritized request.Type: GrantFiled: November 25, 2019Date of Patent: November 10, 2020Assignee: PURE STORAGE, INC.Inventors: Ahmad Alnafoosi, Andrew D. Baptist, Greg R. Dhuse, Jason K. Resch, Ilya Volvovski
-
Patent number: 10834196Abstract: A method for execution by a dispersed storage and task (DST) processing unit includes determining a first optimal slice size requirement is determined for a first independent data element (IDE). The first IDE is split into a first plurality of IDEs based on determining the first IDE compares unfavorably to the first optimal slice size requirement. An error coding function is performed on the first plurality of IDEs to produce a set of encoded slices for each of the first plurality of IDEs for transmission to storage units. A subset of additional IDEs are selected to be merged into a merged IDE based on a second optimal slice size requirement, and continuous content of the subset of additional IDEs is concatenated to produce the merged IDE. The error coding function is performed on the merged IDE to produce a second set of encoded slices for transmission to storage units.Type: GrantFiled: March 21, 2019Date of Patent: November 10, 2020Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Jason K. Resch, Ram Narayanan, Andrew D. Baptist, Praveen Viraraghavan, Wesley B. Leggette, Ethan S. Wozniak, Manish Motwani, Bart R. Cilfone, Greg R. Dhuse
-
Patent number: 10834194Abstract: A method for execution by a computing device includes, for each update operation of a plurality of update operations, creating a new batch update containing the update operation. The update operation is evaluated in an empty transaction context to generate cached values. When it is determined that the new batch overlaps with an existing waiting batch, the new batch is merged with the existing waiting batch, and intermediate are generated based on serially composing the update operations of the merged batches. When it is determined that the new batch overlaps with a running batch, the new batch is added to the existing waiting batches. Otherwise, immediate running of the new batch is authorized. The new batch is run by creating a CASN transaction from its evaluated transaction context that includes the cached values.Type: GrantFiled: February 13, 2019Date of Patent: November 10, 2020Assignee: INTERNATIONAL BUSINESS MACHNES CORPORATIONInventors: Greg R. Dhuse, Brian S. Farrell
-
Patent number: 10805042Abstract: A method for execution by a computing device of a dispersed storage network (DSN). The method begins by dispersed storage error encoding a data segment of data into a set of encoded data slices, wherein data blocks of the data segment are arranged into a data matrix, wherein the data matrix is multiplied by an encoding matrix to create the set of encoded data slices. The method continues by arranging data blocks of an encoded data slice into a second data matrix and multiplying the second data matrix with a second encoding matrix to produce a set of transmission data slices. The method continues with identifying a plurality of paths for transmitting a decode threshold number of transmission data slices to a storage unit of the DSN. The method continues by transmitting the decode threshold number of transmission data slices to the storage unit via the plurality of paths.Type: GrantFiled: February 15, 2017Date of Patent: October 13, 2020Assignee: PURE STORAGE, INC.Inventors: Andrew D. Baptist, Greg R. Dhuse, S. Christopher Gladwin, Gary W. Grube, Timothy W. Markison, Jason K. Resch, Ilya Volvovski