Patents Assigned to Pure Storage
  • Patent number: 11809727
    Abstract: Predicting failures in a storage system that includes a plurality of storage devices, including: gathering information describing a plurality of blocks within the storage devices; developing, using the information describing the plurality of blocks within the storage devices and information describing known dead block conditions, a block lifespan model; and determining, in dependence upon the information describing the plurality of blocks within the storage devices and the block lifespan model, a predicted lifespan for the plurality of blocks within the storage devices.
    Type: Grant
    Filed: April 29, 2018
    Date of Patent: November 7, 2023
    Assignee: PURE STORAGE, INC.
    Inventors: Frank Tuzzolino, John Colgrove, Taher Vohra, Andrew Kleinerman, Xiaohui Wang, Benjamin Scholbrock
  • Publication number: 20230351062
    Abstract: A method includes obtaining input encoded data slices from memory of the storage network, where the input encoded data slices include a set of encoded data slices interspersed with a set of auxiliary data slices, where a data segment was error encoded into the set of encoded data slices, and where auxiliary data was error encoded into the set of auxiliary data slices. The method further includes obtaining de-selection information associated with the input encoded data slices and de-selecting the sequence of input encoded data slices based on the de-selection information to produce deselected encoded data slices. The method further includes error decoding at least a decode threshold number of encoded data slices of the deselected encoded data slices in accordance with error decoding parameters to reproduce the data segment. The method further includes outputting the data segment to a requesting computing device of the storage network.
    Type: Application
    Filed: July 6, 2023
    Publication date: November 2, 2023
    Applicant: Pure Storage, Inc.
    Inventors: S. Christopher Gladwin, Chuck Wilson Templeton, Jason K. Resch, Gary W. Grube
  • Publication number: 20230350918
    Abstract: A storage network operates by: encoding, via a dispersed error encoding, at least one data object as a write threshold number of encoded data slices; storing the write threshold number of the encoded data slices in a set of storage units of the storage network; determining when, due to a failure, less than a pillar width number of the encoded data slices are retrievable from the set of storage units: retrieving a decode threshold number of the encoded data slices from others of the set of storage units; decoding the decode threshold number of the encoded data slices to reproduce the at least one data object; restoring availability of the pillar width number of the encoded data slices of the common revision by: rebuilding at least a subset of encoded data slices of the set of encoded data slices, based on an encoding of the at least one data object; and storing the at least a subset of encoded data slices in the storage network.
    Type: Application
    Filed: July 7, 2023
    Publication date: November 2, 2023
    Applicant: Pure Storage, Inc.
    Inventors: Asimuddin Kazi, Jason K. Resch
  • Patent number: 11803567
    Abstract: Systems, methods, and computer readable storage mediums for replicating data to the cloud. A first dataset is replicated from a first storage subsystem to the cloud, with only the changes made to the first dataset since a previous replication event being replicated to the cloud. Additionally, the data may be deduplicated and compressed before being replicated from the first storage subsystem to the cloud. In some cases, the first dataset may be replicated to the cloud in a stream format which is not directly usable and then, at a later point in time, loaded onto a second storage subsystem from the cloud.
    Type: Grant
    Filed: November 7, 2019
    Date of Patent: October 31, 2023
    Assignee: PURE STORAGE, INC.
    Inventors: Benjamin Borowiec, Ethan L. Miller, Steve Hodgson, Andrew R. Bernat, Ganesh Ramanarayanan, Malcolm Sharpe, Alan S. Driscoll
  • Patent number: 11803338
    Abstract: Executing a machine learning model in an artificial intelligence infrastructure that includes one or more storage systems and one or more graphical processing unit (‘GPU’) servers, including: receiving, by a graphical processing unit (‘GPU’) server, a dataset transformed by a storage system that is external to the GPU server; and executing, by the GPU server, one or more machine learning algorithms using the transformed dataset as input.
    Type: Grant
    Filed: November 30, 2021
    Date of Patent: October 31, 2023
    Assignee: PURE STORAGE, INC.
    Inventors: Brian Gold, Emily Potyraj, Ivan Jibaja, Igor Ostrovsky, Roy Kim
  • Patent number: 11803453
    Abstract: Using host connectivity states to avoid queuing I/O requests: identifying a fault in data communications between a first storage system and a second storage system among a plurality of storage systems across which a dataset is synchronously replicated; updating, upon identifying the fault, an access state of a data communications path between first storage system and a host from an active state to a transitional state with respect to the dataset; and indicating, to the host, a first access state change.
    Type: Grant
    Filed: March 26, 2021
    Date of Patent: October 31, 2023
    Assignee: PURE STORAGE, INC.
    Inventors: Brian Bunker, Krishna Kant, Ronald Karr
  • Patent number: 11803492
    Abstract: Ensuring the appropriate utilization of system resources using weighted workload based, time-independent scheduling, including: receiving an I/O request associated with an entity; determining whether an amount of system resources required to service the I/O request is greater than an amount of available system resources in a storage system; responsive to determining that the amount of system resources required to service the I/O request is greater than the amount of available system resources in the storage system: queueing the I/O request in an entity-specific queue for the entity; detecting that additional system resources in the storage system have become available; and issuing an I/O request from an entity-specific queue for an entity that has a highest priority, where a priority for each entity is determined based on the amount of I/O requests associated with the entity and a weighted proportion of resources designated for use by the entity.
    Type: Grant
    Filed: November 11, 2022
    Date of Patent: October 31, 2023
    Assignee: PURE STORAGE, INC.
    Inventors: Yuval Frandzel, Kiron Vijayasankar
  • Publication number: 20230342249
    Abstract: A method includes receiving, by a storage unit of a storage network, a check request message from a computing device of the storage network, where the check request message includes a group of slice names of a plurality of sets of slice names associated with a plurality of sets of encoded data slices, where a plurality of data segments are dispersed storage error encoded into the plurality of sets of encoded data slices. The method further includes determining, by the storage unit, whether an error condition exists for an encoded data slice associated with the group of slice names. When no, the method includes sending, by the storage unit, a check response message to the computing device, where the check response message includes a group of slice information regarding the group of slice names. When yes, the method includes disregarding sending the check response message.
    Type: Application
    Filed: June 29, 2023
    Publication date: October 26, 2023
    Applicant: Pure Storage, Inc.
    Inventors: Andrew Baptist, Wesley Leggette, Jason K. Resch, Zachary J. Mark, Ilya Volvovski, Greg Dhuse
  • Publication number: 20230342250
    Abstract: A decentralized computer system operates by: storing encoded data blocks in an existing set of decentralized storage units of the decentralized computer system, wherein the decentralized computer system operates in accordance with a decentralized agreement protocol; assigning one or more additional decentralized storage units to the decentralized computing system, wherein the one or more additional decentralized storage units do not currently store the encoded data blocks; allocating the encoded data blocks to the one or more additional decentralized storage units, in accordance with the decentralized agreement protocol; and facilitating storage of the encoded data blocks from the existing set of decentralized storage units of the decentralized computer system to the at least one of the one or more additional decentralized storage units.
    Type: Application
    Filed: July 6, 2023
    Publication date: October 26, 2023
    Applicant: Pure Storage, Inc.
    Inventors: Ravi V. Khadiwala, Greg R. Dhuse, Manish Motwani, Jason K. Resch, Ilya Volvovski
  • Patent number: 11797403
    Abstract: Maintaining a synchronous replication relationship between two or more storage systems, including: receiving, by at least one of a plurality of storage systems across which a dataset will be synchronously replicated, timing information for at least one of the plurality of storage systems; and establishing, based on the timing information, a synchronous replication lease describing a period of time during which the synchronous replication relationship is valid, wherein a request to modify the dataset may only be acknowledged after a copy of the dataset has been modified on each of the storage systems.
    Type: Grant
    Filed: September 12, 2022
    Date of Patent: October 24, 2023
    Assignee: PURE STORAGE, INC.
    Inventors: David Grunwald, Steven Hodgson, Ronald Karr, Kunal Trivedi, Christopher Golden, Thomas Gill, Connor Brooks, Zoheb Shivani
  • Patent number: 11797569
    Abstract: Continuous data protection, including sending, to a target data repository from a source data repository, metadata describing one or more updates to one or more datasets stored within the source data repository; generating, based on the metadata describing the one or more updates to the one or more datasets, an ordered log of metadata describing an ordered application of the one or more updates to the one or more datasets; and generating, on the source data repository and based on the ordered log of metadata, the one or more datasets in accordance with the one or more updates corresponding to a specified point in time.
    Type: Grant
    Filed: October 30, 2019
    Date of Patent: October 24, 2023
    Assignee: PURE STORAGE, INC.
    Inventors: David Grunwald, Thomas Gill, John Colgrove, Ronald Karr, Matthew Fay, Luke Paulsen, Zong Wang
  • Patent number: 11797211
    Abstract: A method for storage cluster expansion is provided. The method includes distributing user data throughout a storage cluster as directed by each of a plurality of authorities in the storage cluster. Each of the plurality of authorities has a plurality of wards, and each of the plurality of wards has ownership of a range of the user data. The method includes splitting one of the plurality of authorities, as a parent authority, into at least two child authorities and assigning a first subset of the plurality of wards of the parent authority to one of the at least two child authorities, and a second subset of the plurality of wards of the parent authority to another one of the at least two child authorities.
    Type: Grant
    Filed: July 29, 2022
    Date of Patent: October 24, 2023
    Assignee: PURE STORAGE, INC.
    Inventors: Robert Lee, John Martin Hayes, Faissal Sleiman
  • Patent number: 11797212
    Abstract: A method for migration of data is provided. The method includes triggering a rebuild of data according to a first migration mechanism from a first storage drive to a second storage drive. Monitoring space utilization associated with the second storage drive, and adaptively switching the migration of the data from the first migration mechanism to a second migration mechanism based on the monitoring.
    Type: Grant
    Filed: April 26, 2022
    Date of Patent: October 24, 2023
    Assignee: PURE STORAGE, INC.
    Inventors: Taher Vohra, Ronald Karr
  • Patent number: 11797197
    Abstract: Dynamic scaling of a virtual storage system, including: detecting, within one or more virtual components of the virtual storage system, a change in performance; determining, in response to the detected change in performance, a scaling response based on the virtual storage system meeting one or more target performance metrics; and scaling, based on one or more available virtual components of the virtual storage system, up or down such that performance of the virtual storage system is in accordance within the one or more target performance metrics.
    Type: Grant
    Filed: January 30, 2020
    Date of Patent: October 24, 2023
    Assignee: PURE STORAGE, INC.
    Inventors: Ronald Karr, Naveen Neelakantam, Joshua Freilich, Aswin Karumbunathan
  • Patent number: 11797386
    Abstract: A system, method, and product for flexible RAID layouts in a storage system, including: determining a reliability of an individual storage device of a plurality of storage devices, the individual storage device containing a plurality of portions of a Redundant Array of Independent Disks (RAID) stripe in a storage system, wherein the RAID stripe includes user data and inter-device parity data; detecting a change in the reliability of the individual storage device that contains the portion corresponding to the RAID stripe; and changing an amount of intra-device protection corresponding to the RAID stripe by decreasing, in the RAID stripe, an amount of space used to store the inter-device protection data.
    Type: Grant
    Filed: September 2, 2022
    Date of Patent: October 24, 2023
    Assignee: PURE STORAGE, INC.
    Inventors: John Colgrove, John Hayes, Bo Hong, Ethan Miller
  • Publication number: 20230333931
    Abstract: A method for execution by one or more computing devices of a storage network includes error encoding data into a set of encoded data slices. The method further includes storing the set of encoded data slices in first storage units of a first vault in accordance with first error encoding parameters. The method further includes initiating storage of the set of encoded data slices in second storage units of a second vault in accordance with second error encoding parameters. When a decode threshold number of encoded data slices of the set of encoded data slices are stored in the second vault, the method further includes deleting one or more encoded data slices of the set of encoded data slices stored in the first vault.
    Type: Application
    Filed: June 13, 2023
    Publication date: October 19, 2023
    Applicant: Pure Storage, Inc.
    Inventor: S. Christopher Gladwin
  • Patent number: 11789638
    Abstract: Continuing replication during storage system transportation, including: replicating, between a first storage system and a second storage system, a dataset; connecting, by the first storage system during movement of the first storage system to a new physical location, to a communication network available at one or more intermediate physical locations; and continuing the replicating of the dataset between the first storage system at one or more of the intermediate physical locations and the second storage system over the communication network available at one or more of the intermediate physical locations.
    Type: Grant
    Filed: September 12, 2022
    Date of Patent: October 17, 2023
    Assignee: PURE STORAGE, INC.
    Inventors: Aaron Dailey, Ronald Karr, Nicole Tselentis, Logan Jennings
  • Patent number: 11789631
    Abstract: A method includes receiving data for storage and encoding the data to produce a plurality of data slices. Metadata is determined for a data slice of the plurality of data slices. The metadata is stored in a metadata storage tree. The metadata storage tree is stored via a first plurality of memory devices of a first memory type. The data slice is stored in a slice storage location in a second plurality of memory devices of a second memory type. The slice storage location is indicated by the metadata. The first memory type has a higher performance level than the second memory type based on a utilization approach.
    Type: Grant
    Filed: June 7, 2022
    Date of Patent: October 17, 2023
    Assignee: Pure Storage, Inc.
    Inventors: Renars W. Narubin, Jason K. Resch, Gary W. Grube
  • Patent number: 11789626
    Abstract: One or more performance parameters associated with data stored at a storage device of a plurality of storage devices are received by a storage controller. A first number of blocks of the storage device to a high resiliency portion and a second number of blocks of the storage device to a low resiliency portion of the storage device are allocated based on the one or more performance parameters.
    Type: Grant
    Filed: September 28, 2022
    Date of Patent: October 17, 2023
    Assignee: PURE STORAGE, INC.
    Inventors: Hari Kannan, Gordon James Coleman, Yijie Zhao, Peter E. Kirkpatrick, Robert Lee, Yuhong Mao, Boris Feigin
  • Patent number: 11789832
    Abstract: In various examples, a computing device of a dispersed storage network (DSN) receives a store data request including a data object. The computing device identifies a storage unit pool associated with the store data request. The storage unit pool includes a plurality of storage sets, each of the storage sets associated with a plurality of address ranges that are associated with a respective set of memories of the storage set. The computing device identifies a first set of memories of a first storage set of the storage unit pool, and issues a set of write slice requests to the first set of memories to initiate storage of encoded data slices produced from the data object. When an unfavorable storage condition is detected, the computing device identifies a second set of memories of the first storage set and facilitates storage of the data object in the second set of memories.
    Type: Grant
    Filed: March 31, 2020
    Date of Patent: October 17, 2023
    Assignee: PURE STORAGE, INC.
    Inventor: Jason K. Resch