Patents Assigned to Pure Storage Inc.
-
Publication number: 20250147699Abstract: A processing system operates by: detecting an access anomaly associated with an access request from a requestor for a set of encoded data slices, the access anomaly having an unfavorable access pattern, wherein the set of encoded data slices is dispersed storage error encoded and stored in at least one storage unit of the storage network; denying the access request in response to detecting the access anomaly; generating, based on the unfavorable access pattern, an anomaly detection indicator identifying the requestor; and sending the anomaly detection indicator to other devices of the storage network.Type: ApplicationFiled: January 9, 2025Publication date: May 8, 2025Applicant: Pure Storage, Inc.Inventor: Jason K. Resch
-
Publication number: 20250147980Abstract: 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: ApplicationFiled: January 13, 2025Publication date: May 8, 2025Applicant: Pure Storage, Inc.Inventors: Asimuddin Kazi, Jason K. Resch
-
Publication number: 20250147684Abstract: A method includes error encoding 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 data slice is stored in a slice storage location indicated by the metadata. Based on determining to access the data slice, the metadata for the data slice is accessed in the metadata storage tree to determine the slice storage location for the data slice, and the data slice is accessed in the slice storage location based on determining the slice storage location for the data slice via accessing the metadata storage tree.Type: ApplicationFiled: January 8, 2025Publication date: May 8, 2025Applicant: Pure Storage, Inc.Inventors: Renars W. Narubin, Jason K. Resch, Gary W. Grube
-
Patent number: 12293111Abstract: A method of using flash storage devices with different sized erase blocks is provided. The method includes allocating a plurality of erase blocks of heterogeneous erase block sizes to a RAID stripe, to form a tile pattern having the heterogeneous erase block sizes in the RAID stripe. The method includes writing the RAID stripe across the flash storage devices in accordance with the allocating, and stopping the writing the RAID stripe, responsive to contents of the RAID stripe reaching a threshold.Type: GrantFiled: July 13, 2023Date of Patent: May 6, 2025Assignee: PURE STORAGE, INC.Inventors: Eric D. Seppanen, Andrew R. Bernat, Timothy W. Brennan, Mark L McAuliffe, Neil Buda Vachharajani
-
Patent number: 12293112Abstract: A method includes, responsive to receiving a modified first reservation command from a storage controller, identifying, by a storage drive, a first range of storage based on a first range identifier of the modified reservation command. The method also includes granting, by the storage drive, a reservation for access to the storage drive on behalf of a first host controller by associating the reservation for the first range with a second range of storage.Type: GrantFiled: February 20, 2024Date of Patent: May 6, 2025Assignee: PURE STORAGE, INC.Inventors: Gordon James Coleman, Peter E. Kirkpatrick, Roland Dreier
-
Publication number: 20250138747Abstract: 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: ApplicationFiled: January 2, 2025Publication date: May 1, 2025Applicant: 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
-
Patent number: 12287990Abstract: An illustrative method includes receiving, by a container storage interface (CSI) filter driver executing on a node of a cluster managed by a container orchestrator, a request to deploy a containerized application; selecting, by the CSI filter driver based on one or more attributes of the containerized application, a storage system from a plurality of storage systems attached to a plurality of clusters managed by the container orchestrator; and transmitting, by the CSI filter driver, a command to a CSI driver executing on a node of a cluster to which the storage system is attached, the cluster included in the plurality of clusters, the command configured to direct the CSI driver to provision a volume on the storage system for use with the containerized application.Type: GrantFiled: December 21, 2022Date of Patent: April 29, 2025Assignee: Pure Storage, Inc.Inventors: Luis Pablo Pabón, Taher Vohra, Naveen Neelakantam
-
Publication number: 20250131013Abstract: Methods and apparatus for replication of data in storage networks. In an embodiment, a processing module(s) of a computing device identifies a first storage set and a second storage set for replicated storage of data. The processing module(s) maintains a synchronization log for the first storage set and the second storage set. After initiating storage of a data object in the first storage set and the second storage set, the processing module(s) detects an unavailability of one or more storage units of the second storage set. In response to detecting a return to availability of the one or more storage units, the processing module(s) determines, based on the synchronization log, that the second storage set requires at least a portion of the data object to maintain synchronization with the first storage set, and facilitates storage of the at least a portion of the data object in the second storage set.Type: ApplicationFiled: December 20, 2024Publication date: April 24, 2025Applicant: Pure Storage, Inc.Inventors: Jason K. Resch, Scott M. Horan, Ravi V. Khadiwala, Greg R. Dhuse
-
Patent number: 12282436Abstract: Rekeying in a storage system, including: receiving a request to rekey a first storage location of a storage system, wherein the first storage location is associated with a first cryptographic key; acknowledging completion of the request to rekey the first storage location without re-encrypting data stored at the first storage location of the storage system; and mapping a second cryptographic key identified by the request to rekey to the first storage location of the storage system.Type: GrantFiled: April 22, 2022Date of Patent: April 22, 2025Assignee: PURE STORAGE, INC.Inventors: Mark Fay, Andrew Bernat
-
Patent number: 12282686Abstract: A first set of physical units of a storage device of a storage system is selected for performance of low latency access operations, wherein other access operations are performed by remaining physical units of the storage device. A determination as to whether a triggering event has occurred that causes a selection of a new set of physical units of the storage device for the performance of low latency access operations is made. A second set of physical units of the storage device is selected for the performance of low latency access operations upon determining that the triggering event has occurred.Type: GrantFiled: March 27, 2023Date of Patent: April 22, 2025Assignee: PURE STORAGE, INC.Inventors: Hari Kannan, Boris Feigin, Ying Gao, John Colgrove
-
Patent number: 12282399Abstract: Prioritizing highly performant storage systems for servicing a synchronously replicated dataset: detecting a communication fault between two or more storage systems that are synchronously replicating a dataset; identifying a preferred storage system for winning mediation, including determining that the preferred storage system winning mediation would result in better performance than other storage systems winning mediation; and requesting, by the preferred storage system, mediation from a mediation target.Type: GrantFiled: June 26, 2023Date of Patent: April 22, 2025Assignee: PURE STORAGE, INC.Inventors: Ronald Karr, John Colgrove, Ganesh Ramanarayanan, David Grunwald
-
Patent number: 12282799Abstract: A method for a transactional commit in a storage unit is provided. The method includes receiving a logical record from a storage node into a transaction engine of a storage unit of the storage node and writing the logical record into a data structure of the transaction engine. The method includes writing, to a command queue of the transaction engine, an indication to perform an atomic update using the logical record and transferring each portion of the logical record from the data structure of the transaction engine to non-persistent memory of the storage unit as a committed transaction. A storage unit for a storage system is also provided.Type: GrantFiled: December 16, 2021Date of Patent: April 22, 2025Assignee: PURE STORAGE, INC.Inventors: John Hayes, Brian Gold, Shantanu Gupta, Robert Lee, Hari Kannan
-
Patent number: 12277030Abstract: A distributed storage integrity system in a dispersed storage network includes a scanning agent and a control unit. The scanning agent identifies an encoded data slice that requires rebuilding, wherein the encoded data slice is one of a plurality of encoded data slices generated from a data segment using an error encoding dispersal function. The control unit retrieves at least a number T of encoded data slices needed to reconstruct the data segment based on the error encoding dispersal function. The control unit is operable to reconstruct the data segment from at least the number T of the encoded data slices and generate a rebuilt encoded data slice from the reconstructed data segment. The scanning agent is located in a storage unit and the control unit is located in the storage unit or in a storage integrity processing unit, a dispersed storage processing unit or a dispersed storage managing unit.Type: GrantFiled: March 2, 2023Date of Patent: April 15, 2025Assignee: Pure Storage, Inc.Inventors: Greg Dhuse, Andrew Baptist, Zachary J. Mark, Jason K. Resch, Ilya Volvovski
-
Patent number: 12277106Abstract: A system and method for managing tables in a storage system is described.Type: GrantFiled: May 3, 2023Date of Patent: April 15, 2025Assignee: PURE STORAGE, INC.Inventors: John Colgrove, Joseph S. Hasbani, John Hayes, Ethan Miller, Cary Sandvig
-
Patent number: 12271264Abstract: A method for adjustable error correction in a storage cluster is provided. The method includes determining health of a non-volatile memory of a non-volatile solid-state storage unit of each of a plurality of storage nodes in a storage cluster on a basis of per flash package, per flash die, per flash plane, per flash block, or per flash page. The determining is performed by the storage cluster. The plurality of storage nodes is housed within a chassis that couples the storage nodes as the storage cluster. The method includes adjusting erasure coding across the plurality of storage nodes based on the health of the non-volatile memory and distributing user data throughout the plurality of storage nodes through the erasure coding. The user data is accessible via the erasure coding from a remainder of the plurality of storage nodes if any of the plurality of storage nodes are unreachable.Type: GrantFiled: November 18, 2022Date of Patent: April 8, 2025Assignee: PURE STORAGE, INC.Inventors: John D. Davis, John Hayes, Zhangxi Tan, Hari Kannan, Nenad Miladinovic
-
Patent number: 12271359Abstract: A storage system is provided. The storage system include a primary storage node that includes a primary processing device. The primary storage node is communicatively coupled to a secondary storage node. The secondary storage node includes a secondary processing device and a set of non-volatile memory modules. The primary processing device is to identify one or more storage operations to be performed on the set of non-volatile memory modules of the secondary storage node and transmit one or more instructions to the secondary storage node to perform the one or more storage operations, the one or more storage operations performed by the secondary processing device.Type: GrantFiled: March 1, 2023Date of Patent: April 8, 2025Assignee: PURE STORAGE, INC.Inventors: Hari Kannan, Ying Gao, Boris Feigin, Robert Lee
-
Publication number: 20250110831Abstract: A computing device of a storage network, the computing device including memory, an interface, and at least one processing module operably coupled to the memory and the interface, where the at least one processing module is operable to error encode a data segment in accordance with error encoding parameters to produce a set of encoded data slices. The at least one processing module also sends via the interface, a first subset of encoded data slices of the set of encoded data slices via a first routing path of a plurality of routing paths to a set of storage units, where the first routing path has a performance level greater than a first performance threshold, and sends, via the interface, a second subset of encoded data slices of the set of encoded data slices via a second routing path of the plurality of routing paths to the set of storage units.Type: ApplicationFiled: December 13, 2024Publication date: April 3, 2025Applicant: 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: 12267251Abstract: Methods and apparatus for identifying multiple resources of a storage network for data retrieval are disclosed. In various embodiments, a determination is made to retrieve an encoded data slice from the storage network. Based on configuration information for the storage network, one or more configurations are identified, including a current configuration. For the identified configurations, ranked scoring information relating to the encoded data slice is determined for a plurality of resources associated with the identified configurations. Based on the ranked scoring information, a resource is selected for each of the identified configurations. In addition, a retrieval likelihood level for the data slice is determined for each of the selected resources. Based on the likelihood levels for the selected resources, one or more of the selected resources are identified for encoded data slice retrieval and read slice requests are issued to the one or more selected resources.Type: GrantFiled: May 20, 2024Date of Patent: April 1, 2025Assignee: Pure Storage, Inc.Inventors: Jason K. Resch, Greg R. Dhuse, Manish Motwani, Andrew D. Baptist, Wesley B. Leggette
-
Patent number: 12267440Abstract: A device for use in a storage network including storage network memory distributed amongst a plurality of storage units. The device includes a processing module operably couple to a memory that stores operational instructions. The processing module is configured to execute the operational instructions to determine storage parameters associated with encoded data slices generated from data to be stored in the plurality of storage units. The storage parameters include information indicating a read threshold number of encoded data slices required to recover the data. The method further includes facilitating distributed storage of the encoded data slices among the plurality of storage units such that the number of the error-encoded data slices stored in any particular storage unit is chosen so that in the event of an unavailability of any individual storage unit, at least a read threshold number of encoded data slices are still accessible from the remaining storage units.Type: GrantFiled: January 3, 2024Date of Patent: April 1, 2025Assignee: Pure Storage, Inc.Inventors: Jason K. Resch, Greg R. Dhuse
-
Publication number: 20250103432Abstract: A computing device of a storage network includes an interface configured to interface and communicate with a set of storage, 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 select a set of storage network storage units and divide the set of storage network storage units into pairs of storage units, where each storage unit of the set of storage units is configured to communicate with every other storage unit of the set of storage units. The processing circuitry is further configured to generate an encryption key for each pair of storage units and distribute the encryption key to each pair of storage units.Type: ApplicationFiled: December 5, 2024Publication date: March 27, 2025Applicant: Pure Storage, Inc.Inventors: Praveen Viraraghavan, Jason K. Resch