Patents by Inventor Michael C. Storm
Michael C. Storm 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: 11928230Abstract: A method for execution by a computing device to adjust efficiency of storing data in a storage network includes processing a data segment based on a storage approach to produce a processed data segment, the storage approach being based on an estimated overwrite frequency for the data segment. The method continues by error encoding the processed data segment to produce a set of encoded data slices, where a decode threshold number of encoded data slices is needed to recover the processed data segment. The method continues by storing the set of encoded data slices in the memory of the storage network.Type: GrantFiled: February 3, 2023Date of Patent: March 12, 2024Assignee: Pure Storage, Inc.Inventors: Ilya Volvovski, Wesley B. Leggette, Michael C. Storm, Jason K. Resch
-
Publication number: 20230205630Abstract: 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 encodedType: ApplicationFiled: February 27, 2023Publication date: June 29, 2023Applicant: 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: 20230177199Abstract: A method for execution by a computing device to adjust efficiency of storing data in a storage network includes processing a data segment based on a storage approach to produce a processed data segment, the storage approach being based on an estimated overwrite frequency for the data segment. The method continues by error encoding the processed data segment to produce a set of encoded data slices, where a decode threshold number of encoded data slices is needed to recover the processed data segment. The method continues by storing the set of encoded data slices in the memory of the storage network.Type: ApplicationFiled: February 3, 2023Publication date: June 8, 2023Applicant: Pure Storage, Inc.Inventors: Ilya Volvovski, Wesley B. Leggette, Michael C. Storm, Jason K. Resch
-
Patent number: 11625300Abstract: 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 a data segment, wherein the data segment 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 slices that is required to decode the data segment; receiving, via the at least one processing circuit and 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 that was not received from the at least one storage unit in response to theType: GrantFiled: September 20, 2022Date of Patent: April 11, 2023Assignee: 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: 11586755Abstract: A method for execution by a computing device to adjust data storage efficiency of data in a storage network includes determining an estimated overwrite frequency for a data segment for storage in memory of the storage network. The method continues by determining a storage approach for the data segment based on the estimated overwrite frequency. The method continues by processing the data segment based on the storage approach to produce a processed data segment. The method continues by error encoding the processed data segment to produce a set of encoded data slices, where a decode threshold number of encoded data slices is needed to recover the processed data segment. The method continues by storing the set of encoded data slices in the memory of the storage network.Type: GrantFiled: December 10, 2020Date of Patent: February 21, 2023Assignee: Pure Storage, Inc.Inventors: Ilya Volvovski, Wesley B. Leggette, Michael C. Storm, Jason K. Resch
-
Publication number: 20230009883Abstract: 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 a data segment, wherein the data segment 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 slices that is required to decode the data segment; receiving, via the at least one processing circuit and 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 that was not received from the at least one storage unit in response to theType: ApplicationFiled: September 20, 2022Publication date: January 12, 2023Applicant: 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: 11487620Abstract: 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 storageType: GrantFiled: June 27, 2022Date of Patent: November 1, 2022Assignee: 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: 11474729Abstract: 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: GrantFiled: July 30, 2021Date of Patent: October 18, 2022Assignee: 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
-
Publication number: 20220327022Abstract: 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 storageType: ApplicationFiled: June 27, 2022Publication date: October 13, 2022Applicant: 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: 11429486Abstract: 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: GrantFiled: October 30, 2020Date of Patent: August 30, 2022Assignee: 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: 20210357143Abstract: 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: ApplicationFiled: July 30, 2021Publication date: November 18, 2021Applicant: 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: 11010357Abstract: A method begins by a processing module of a dispersed storage network (DSN) determining a fault domain for a portion of the DSN and generating a local redundancy for the fault domain. The method continues with the processing module identifying storage locations available for storing the first local redundancy, selecting storage locations for storing the first local redundancy and continues with the processing module facilitating storage of the local redundancy in the storage locations. Upon detecting a storage failure in the DSN, the method continues with the processing module determining whether the storage failure is associated with the fault domain and in response determining whether the first local redundancy is associated with the first fault domain. In response to determining that the local redundancy is associated with the first fault domain the method continues with the processing module recovering the local redundancy and correcting the storage failure.Type: GrantFiled: October 4, 2018Date of Patent: May 18, 2021Assignee: PURE STORAGE, INC.Inventors: Ilya Volvovski, Bruno Hennig Cabral, Manish Motwani, Thomas Darrel Cocagne, Timothy W. Markison, Gary W. Grube, Wesley Leggette, Jason K. Resch, Michael C. Storm, Greg Dhuse, Yogesh Ramesh Vedpathak, Ravi Khadiwala
-
Patent number: 10891390Abstract: A method for execution by a computing device to adjust data storage efficiency of data in a storage network begins by obtaining a data segment for storage in memory of the storage network. The method continues by obtaining access level information regarding the data segment, where the access level information includes an estimated retrieval frequency level for the data segment. The method continues by determining a storage approach for the data segment based on the access level information and processing the data segment based on the storage approach to produce a processed data segment. The method continues by dispersed storage error encoding the processed data segment to produce a set of encoded data slices, where a decode threshold number of encoded data slices is needed to recover the processed data segment. The method continues by sending the set of encoded data slices to the memory for storage therein.Type: GrantFiled: May 26, 2020Date of Patent: January 12, 2021Assignee: PURE STORAGE, INC.Inventors: Ilya Volvovski, Wesley B. Leggette, Michael C. Storm, Jason K. Resch
-
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: 10318382Abstract: A method includes determining, by a computing device of a dispersed storage network (DSN), a source name for a data object to be scanned for missing encoded data slices. The method further includes issuing list source requests to the set of storage units. When a list source response is not received from a storage unit of the set of storage units within a response timeframe, the method further includes identifying one or more encoded data slices stored on the storage unit as potentially missing encoded data slices; determining a next level missing encoded data slice determination approach for the storage unit based on one or more of: a number of potentially missing encoded data slices, a performance goal, a network loading level, a rebuilding loading level, a predetermination, and an entry of a system registry; and executing the next level missing encoded data slice determination approach.Type: GrantFiled: October 3, 2018Date of Patent: June 11, 2019Assignee: International Business Machines CorporationInventors: Thomas F. Shirley, Jr., Gary W. Grube, Bart R. Cilfone, Ravi V. Khadiwala, Greg R. Dhuse, Thomas D. Cocagne, Michael C. Storm, Yogesh R. Vedpathak, Wesley B. Leggette, Jason K. Resch, Andrew D. Baptist, Ilya Volvovski
-
Publication number: 20190155701Abstract: A method for execution by one or more processing modules of a dispersed storage network (DSN), the method begins by migrating a DSN address sub-range from a first DS unit to a second DS unit of a set of DS units and migrating, by the second DS unit, a DSN address sub-range from the second DS unit to a third DS unit and issuing, by the third DS unit, a range owner message with regards to the DSN address sub-range to a home DS unit. The method continues by generating a DS unit access request based on a DSN address, identifying a target DS unit based on the DSN address, determining whether the target DS unit has already been identified and indicating an error when the target DS unit has not already been identified. The method continues by determining whether too many target DS units have already been identified.Type: ApplicationFiled: January 23, 2019Publication date: May 23, 2019Inventors: Manish Motwani, Jason K. Resch, Wesley B. Leggette, Michael C. Storm
-
Publication number: 20190065315Abstract: A method for identifying encoded data slices for rebuilding includes determining, by a computing device of a dispersed storage network (DSN), a partial scanning approach based on an event, where the event is one of a plurality of possible events. When the event is a memory device issue, the method further includes selecting a first partial scanning approach that includes: sending a scan memory device request to the storage unit to scan the memory device for encoded data slices affected by the memory device issue, receiving a scan memory device response from the storage unit, and identifying the encoded data slices indicated in the scan memory device response for rebuilding.Type: ApplicationFiled: October 26, 2018Publication date: February 28, 2019Inventors: Thomas F. Shirley, JR., Gary W. Grube, Bart R. Cilfone, Ravi V. Khadiwala, Greg R. Dhuse, Thomas D. Cocagne, Michael C. Storm, Yogesh R. Vedpathak, Wesley B. Leggette, Jason K. Resch, Andrew D. Baptist, Ilya Volvovski
-
Publication number: 20190042768Abstract: A method begins by a processing module of a dispersed storage network (DSN) determining a fault domain for a portion of the DSN and generating a local redundancy for the fault domain. The method continues with the processing module identifying storage locations available for storing the first local redundancy, selecting storage locations for storing the first local redundancy and continues with the processing module facilitating storage of the local redundancy in the storage locations. Upon detecting a storage failure in the DSN, the method continues with the processing module determining whether the storage failure is associated with the fault domain and in response determining whether the first local redundancy is associated with the first fault domain. In response to determining that the local redundancy is associated with the first fault domain the method continues with the processing module recovering the local redundancy and correcting the storage failure.Type: ApplicationFiled: October 4, 2018Publication date: February 7, 2019Inventors: Ilya Volvovski, Bruno Hennig Cabral, Manish Motwani, Thomas Darrel Cocagne, Timothy W. Markison, Gary W. Grube, Wesley Leggette, Jason K. Resch, Michael C. Storm, Greg Dhuse, Yogesh Ramesh Vedpathak, Ravi Khadiwala
-
Publication number: 20190034278Abstract: A method includes determining, by a computing device of a dispersed storage network (DSN), a source name for a data object to be scanned for missing encoded data slices. The method further includes issuing list source requests to the set of storage units. When a list source response is not received from a storage unit of the set of storage units within a response timeframe, the method further includes identifying one or more encoded data slices stored on the storage unit as potentially missing encoded data slices; determining a next level missing encoded data slice determination approach for the storage unit based on one or more of: a number of potentially missing encoded data slices, a performance goal, a network loading level, a rebuilding loading level, a predetermination, and an entry of a system registry; and executing the next level missing encoded data slice determination approach.Type: ApplicationFiled: October 3, 2018Publication date: January 31, 2019Inventors: Thomas F. Shirley, JR., Gary W. Grube, Bart R. Cilfone, Ravi V. Khadiwala, Greg R. Dhuse, Thomas D. Cocagne, Michael C. Storm, Yogesh R. Vedpathak, Wesley B. Leggette, Jason K. Resch, Andrew D. Baptist, Ilya Volvovski
-
Publication number: 20190018741Abstract: A method for execution by one or more processing modules of one or more computing devices of a dispersed storage network (DSN), the method begins by generating a dispersed storage (DS) unit access request based on a DSN address, identifying a target DS unit based on the DSN address, outputting the DS unit access request to the target DS unit, identifying a DSN address range associated with the target DS unit in accordance with a storage map when receiving an access response addressing error. The method continues by issuing a range owner request to the target DS unit that includes the identified DSN address range associated with the target DS unit and updating the storage map based on received range owner response.Type: ApplicationFiled: September 20, 2018Publication date: January 17, 2019Inventors: Manish Motwani, Jason K. Resch, Wesley B. Leggette, Michael C. Storm