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: 11928230
    Abstract: 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: Grant
    Filed: February 3, 2023
    Date of Patent: March 12, 2024
    Assignee: Pure Storage, Inc.
    Inventors: Ilya Volvovski, Wesley B. Leggette, Michael C. Storm, Jason K. Resch
  • 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: 20230177199
    Abstract: 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: Application
    Filed: February 3, 2023
    Publication date: June 8, 2023
    Applicant: Pure Storage, Inc.
    Inventors: Ilya Volvovski, Wesley B. Leggette, Michael C. Storm, Jason K. Resch
  • Patent number: 11625300
    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 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 the
    Type: Grant
    Filed: September 20, 2022
    Date of Patent: April 11, 2023
    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: 11586755
    Abstract: 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: Grant
    Filed: December 10, 2020
    Date of Patent: February 21, 2023
    Assignee: Pure Storage, Inc.
    Inventors: Ilya Volvovski, Wesley B. Leggette, Michael C. Storm, Jason K. Resch
  • Publication number: 20230009883
    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 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 the
    Type: Application
    Filed: September 20, 2022
    Publication date: January 12, 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
  • 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
  • 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: 11429486
    Abstract: 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: Grant
    Filed: October 30, 2020
    Date of Patent: August 30, 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
  • Publication number: 20210357143
    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: Application
    Filed: July 30, 2021
    Publication date: November 18, 2021
    Applicant: 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: 11010357
    Abstract: 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: Grant
    Filed: October 4, 2018
    Date of Patent: May 18, 2021
    Assignee: 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: 10891390
    Abstract: 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: Grant
    Filed: May 26, 2020
    Date of Patent: January 12, 2021
    Assignee: PURE STORAGE, INC.
    Inventors: Ilya Volvovski, Wesley B. Leggette, Michael C. Storm, Jason K. Resch
  • Patent number: 10831600
    Abstract: 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: Grant
    Filed: April 21, 2020
    Date of Patent: November 10, 2020
    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: 10318382
    Abstract: 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: Grant
    Filed: October 3, 2018
    Date of Patent: June 11, 2019
    Assignee: International Business Machines Corporation
    Inventors: 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: 20190155701
    Abstract: 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: Application
    Filed: January 23, 2019
    Publication date: May 23, 2019
    Inventors: Manish Motwani, Jason K. Resch, Wesley B. Leggette, Michael C. Storm
  • Publication number: 20190065315
    Abstract: 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: Application
    Filed: October 26, 2018
    Publication date: February 28, 2019
    Inventors: 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: 20190042768
    Abstract: 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: Application
    Filed: October 4, 2018
    Publication date: February 7, 2019
    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
  • Publication number: 20190034278
    Abstract: 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: Application
    Filed: October 3, 2018
    Publication date: January 31, 2019
    Inventors: 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: 20190018741
    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 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: Application
    Filed: September 20, 2018
    Publication date: January 17, 2019
    Inventors: Manish Motwani, Jason K. Resch, Wesley B. Leggette, Michael C. Storm