Patents Assigned to Pure Storage
  • Patent number: 12099742
    Abstract: A data segment to be stored at one or more storage devices is formed, wherein the data segment is to be stored at the one or more storage devices using a first programming mode having a first page size. A determination that a fragment of data of the data segment is less than the first page size is made. The fragment of data is stored at the one or more storage devices using a second programming mode having a second page size that is less than the first page size and the remaining data of the data segment is stored at the one or more storage device using the first programming mode.
    Type: Grant
    Filed: March 15, 2021
    Date of Patent: September 24, 2024
    Assignee: PURE STORAGE, INC.
    Inventors: Zoltan DeWitt, Benjamin Scholbrock, Andrew R. Bernat
  • Patent number: 12099752
    Abstract: A method includes receiving an error message including first information associated with a first reported error and a time at which the first reported error was detected. First stored event records associated with second reported errors are identified. The first stored event records include second information describing previously reported errors that occurred within a predetermined time prior to the time at which the first reported error was detected. The method determines, based on the first information and the second information, whether a correlation exists among one or more of the previously reported errors and the first reported error. In response to determining that the correlation exists, generating an error correlation report predicting occurrence of a third error.
    Type: Grant
    Filed: February 6, 2023
    Date of Patent: September 24, 2024
    Assignee: Pure Storage, Inc.
    Inventors: Greg R. Dhuse, Yogesh R. Vedpathak
  • Patent number: 12099441
    Abstract: A storage array controller may receive a write request comprising data to be stored at one or more solid-state storage devices. A write granularity associated with the write request may be generated that is less than a logical block size associated with the storage array controller. The data associated with the write request may be segmented based on the generated write granularity. The write request may be executed to store the segmented data at the one or more solid-state storage devices.
    Type: Grant
    Filed: July 27, 2023
    Date of Patent: September 24, 2024
    Assignee: PURE STORAGE, INC.
    Inventors: Gordon James Coleman, Eric Seppanen
  • Patent number: 12099741
    Abstract: A system and method comprising: receiving a request to write data stored at a first range of a first volume to a second range of a second volume, where first metadata for the first range of the first volume is associated with a range of physical addresses where the data is stored in the storage system; and responsive to receiving the request: creating second metadata for the second range of the second volume, wherein the second metadata is associated with the range of physical addresses where the data is stored in the storage system; and associating the second volume with the second metadata.
    Type: Grant
    Filed: May 5, 2023
    Date of Patent: September 24, 2024
    Assignee: PURE STORAGE, INC.
    Inventors: Ethan Miller, Jianting Cao, John Colgrove, Christopher Golden, John Hayes, Cary Sandvig, Grigori Inozemtsev
  • Publication number: 20240314087
    Abstract: 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: Application
    Filed: May 20, 2024
    Publication date: September 19, 2024
    Applicant: Pure Storage, Inc.
    Inventors: Jason K. Resch, Greg R. Dhuse, Manish Motwani, Andrew D. Baptist, Wesley B. Leggette
  • Publication number: 20240311251
    Abstract: A method for execution by one or more computing devices of a storage network includes dispersed storage error encoding a data segment of data into a set of encoded data slices in accordance with an information dispersal algorithm width number and a decode threshold number, where the decode threshold number of encoded data slices of the set of encoded data slices are needed to reconstruct the data segment. The method further includes storing the set of encoded data slices in primary storage slots of a set of storage units deployed across multiple sites of the storage network in accordance with a mapping of the primary storage slots to storage units of the set of storage units, where a number of the primary storage slots is equal to or greater than the information dispersal algorithm width number.
    Type: Application
    Filed: May 31, 2024
    Publication date: September 19, 2024
    Applicant: Pure Storage, Inc.
    Inventors: Ravi V. Khadiwala, Wesley B. Leggette, Andrew D. Baptist, Greg R. Dhuse, Ilya Volvovski, Jason K. Resch, Manish Motwani
  • Patent number: 12093527
    Abstract: A method includes determining an encoded data slice of a first subset of encoded data slices associated with a set of encoded data slices requires rebuilding, where the first subset of encoded data slices is stored in a set of storage units and includes at least a decode threshold number of encoded data slices. The method further includes identifying a second encoded data slice of a second subset of encoded data slices of the set of encoded data slices, where the second subset of encoded data slices is not currently stored in the set of storage units. The method further includes generating the second encoded data slice from the first subset of encoded data slices and sending the second encoded data slice to the set of storage units, where when stored, the second encoded data slice no longer included in the second subset of encoded data slices.
    Type: Grant
    Filed: August 5, 2022
    Date of Patent: September 17, 2024
    Assignee: Pure Storage, Inc.
    Inventors: Jason K. Resch, Greg R. Dhuse
  • Patent number: 12093236
    Abstract: A method for deleting a set of keys from a storage server is provided. The method includes generating a probabilistic data structure for a first set of keys and for each key in a second set of keys, determining whether a key of the second set of keys is found in the probabilistic data structure. The method includes identifying the key as a candidate for deletion if the key is not found in the probabilistic data structure. A system is also provided.
    Type: Grant
    Filed: May 12, 2023
    Date of Patent: September 17, 2024
    Assignee: PURE STORAGE, INC.
    Inventors: Ethan Miller, John Colgrove, John Hayes
  • Patent number: 12093402
    Abstract: Replicating data using inferred trust, including: receiving, by a first storage system from a computing device, data encrypted using a first encryption key; decrypting, by the first storage system, the encrypted data using the first encryption key; encrypting, by the first storage system, the decrypted data using a second encryption key; storing, on the first storage system, the data encrypted using the second encryption key; sending, from the first storage system to the second storage system, the data; and servicing, by the second storage system, an input/output (‘I/O’) operation directed to the data.
    Type: Grant
    Filed: July 24, 2020
    Date of Patent: September 17, 2024
    Assignee: PURE STORAGE, INC.
    Inventors: Ronald Karr, Constantine Sapuntzakis, John Colgrove
  • Patent number: 12093545
    Abstract: A storage system has a first memory, a second memory that include solid-state storage memory, and a processing device. The processing device is to select a mode for each portion of data to be written. Selection of the mode is based at least on size of the portion of data. Selection of the mode is from among modes that include a first mode of writing the portion of data in mirrored RAID form to the first memory for later transfer from the first memory to the second memory, a second mode of writing the portion of data in parity-based RAID form to the first memory for later transfer from the first memory to the second memory, and a third mode of writing the portion of data to the second memory, bypassing the first memory. The processing device is to handle portions of data to be written according to such selection.
    Type: Grant
    Filed: January 6, 2022
    Date of Patent: September 17, 2024
    Assignee: PURE STORAGE, INC.
    Inventors: Ying Gao, Boris Feigin, Hari Kannan, Igor Ostrovsky, Jeffrey Tofano, Svitlana Tumanova
  • Patent number: 12093143
    Abstract: A method for execution by a distributed storage network begins by receiving a request to transfer a copy of a set of encoded data slices from at least some associated virtual storage vaults to a destination virtual storage vault and continues by determining whether the destination storage unit supports a source virtual storage vault of the at least some source virtual storage vaults. When the destination storage unit supports the source virtual storage vault the method continues by determining a sub-set of encoded data slices of the set of encoded data slices for transfer and finally, by facilitating sending the sub-set of encoded data slices to the destination storage unit.
    Type: Grant
    Filed: March 10, 2023
    Date of Patent: September 17, 2024
    Assignee: Pure Storage, Inc.
    Inventors: Adam M. Gray, Greg R. Dhuse, Andrew D. Baptist, Ravi V. Khadiwala, Wesley B. Leggette, Scott M. Horan, Franco V. Borich, Bart R. Cilfone, Daniel J. Scholl
  • Publication number: 20240303160
    Abstract: Methods and apparatus for preference based selection of storage network memory for data storage. In an example, a computing device receives a data object for storage in memory of the storage network and determines a system level storage efficiency preference associated with the data object. The computing device selects a set of storage nodes of a plurality of sets of storage nodes for storage of the data object based, at least in part, on the system level storage efficiency preference. The computing device further determines dispersed storage error encoding parameters for the data object, encodes the data object in accordance with the dispersed storage error encoding parameters to produce encoded data slices, and generates system addressing information for the encoded data slices.
    Type: Application
    Filed: May 16, 2024
    Publication date: September 12, 2024
    Applicant: Pure Storage, Inc.
    Inventors: S. Christopher Gladwin, Timothy W. Markison, Greg R. Dhuse, Thomas F. Shirley, JR., Wesley B. Leggette, Jason K. Resch, Gary W. Grube
  • Patent number: 12086409
    Abstract: An example method for optimizing data deletion in a storage system comprises: detecting a command to delete data from a storage volume using a file system, the data stored on one or more blocks within a storage device associated with the storage volume; monitoring a load metric associated with the storage volume, the load metric indicative of a dynamically changing operational load of the storage volume; and initiating, based on the detecting the command and on the monitored load metric, a discard request for the storage device, the discard request commanding the storage device to indicate that the one or more blocks are free for use by the file system to store additional data.
    Type: Grant
    Filed: August 31, 2022
    Date of Patent: September 10, 2024
    Assignee: Pure Storage, Inc.
    Inventors: Ganesh Sangle, Chia-Chun Lin, Prabir Paul, Vijayan Satyamoorthy Srinivasa
  • Patent number: 12086079
    Abstract: A storage system operates by generating system messages, in accordance with the system-level message processing parameters, the system messages including status information, performance information and alarms, each having one of a plurality of priorities. The generating includes: generating a first message of the system messages corresponding to a first of the storage nodes based on the system-level message processing parameters, the first message including a first alarm of the alarms having a first message priority of the plurality of priorities; and generating a second message of the system messages corresponding to a second of the storage nodes based on the system-level message processing parameters, the second message including a second alarm of the alarms having a second message priority of the plurality of priorities.
    Type: Grant
    Filed: September 8, 2022
    Date of Patent: September 10, 2024
    Assignee: Pure Storage, Inc.
    Inventor: Greg R. Dhuse
  • Patent number: 12086030
    Abstract: A system and method for offset protection data in a RAID array. A computer system comprises client computers and data storage arrays coupled to one another via a network. A data storage array utilizes solid-state drives and Flash memory cells for data storage. A storage controller within a data storage array is configured to store user data in a first page of a first storage device of the plurality of storage devices; generate intra-device protection data corresponding to the user data, and store the intra-device protection data at a first offset within the first page. The controller is further configured to generate inter-device protection data corresponding to the first page, and store the inter-device protection data at a second offset within a second page in a second storage device of the plurality of storage devices, wherein the first offset is different from the second offset.
    Type: Grant
    Filed: February 13, 2023
    Date of Patent: September 10, 2024
    Assignee: PURE STORAGE, INC.
    Inventors: John Colgrove, John Hayes, Bo Hong, Ethan Miller
  • Patent number: 12086472
    Abstract: A storage cluster is provided. The storage cluster includes a plurality of storage nodes coupled together as the storage cluster. The plurality of storage nodes is configured to assign data to two or more logical arrays and the plurality of storage nodes is configured to establish data striping across the plurality of storage nodes for user data of each of the two or more logical arrays.
    Type: Grant
    Filed: November 12, 2021
    Date of Patent: September 10, 2024
    Assignee: PURE STORAGE, INC.
    Inventors: John Hayes, Par Botes
  • Patent number: 12086431
    Abstract: Selective communication protocol layering for synchronous replication, including: initiating, by a first storage system issuing a command in accordance with a first communication protocol, a connection specifying the first storage system to be a target of storage content from a second storage system; receiving, from the second storage system by the first storage system, a connection request in accordance with the first communication protocol, wherein the connection request specifies the first storage system to be a source of storage content to the second storage system; and based on both initiating the connection and receiving the connection request in accordance with the first communication protocol: establishing, by the first storage system and in accordance with a second communication protocol, both a connection for receiving storage content from the second storage system and a connection for sending storage content to the second storage system.
    Type: Grant
    Filed: April 30, 2020
    Date of Patent: September 10, 2024
    Assignee: PURE STORAGE, INC.
    Inventors: Roland Dreier, Anatoliy Glagolev, Logan Jennings, Aaron Dailey, Nicole Tselentis, Daquan Zuo
  • Patent number: 12086031
    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: Grant
    Filed: June 29, 2023
    Date of Patent: September 10, 2024
    Assignee: Pure Storage, Inc.
    Inventors: Andrew Baptist, Wesley Leggette, Jason K. Resch, Zachary J. Mark, Ilya Volvovski, Greg Dhuse
  • Patent number: 12086029
    Abstract: Multiple allocation units are selected from a set of solid state storage devices for storage of data. An erasure code and intra-device recovery data associated with the data are generated. The intra-device recovery data is written in each of the plurality of allocation units of the set of solid-state storage devices. The erasure code is written in a subset of the plurality of allocation units.
    Type: Grant
    Filed: July 11, 2023
    Date of Patent: September 10, 2024
    Assignee: PURE STORAGE, INC.
    Inventors: Peter E. Kirkpatrick, Ronald Karr
  • Patent number: 12086413
    Abstract: Deploying client-specific applications in a storage system utilizing redundant system resources, including: identifying a redundant controller in the storage system, wherein the storage system includes at least a first controller and the redundant controller; and executing one or more applications on the redundant controller, wherein the one or more applications are executed in a container.
    Type: Grant
    Filed: September 27, 2022
    Date of Patent: September 10, 2024
    Assignee: PURE STORAGE, INC.
    Inventors: John Colgrove, Lydia Do, Ethan Miller, Terence Noonan