Patents Assigned to Pure Storage
  • 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
  • Patent number: 11582299
    Abstract: A method for execution by a dispersed storage network (DSN) managing unit includes receiving access information from a plurality of distributed storage and task (DST) processing units via a network. Cache memory utilization data is generated based on the access information. Configuration instructions are generated for transmission via the network to the plurality of DST processing units based on the cache memory utilization data.
    Type: Grant
    Filed: January 3, 2017
    Date of Patent: February 14, 2023
    Assignee: PURE STORAGE, INC.
    Inventors: Ilir Iljazi, Jason K. Resch, Ethan S. Wozniak
  • Patent number: 11579974
    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: October 20, 2020
    Date of Patent: February 14, 2023
    Assignee: PURE STORAGE, INC.
    Inventors: John Colgrove, John Hayes, Bo Hong, Ethan Miller
  • Patent number: 11580076
    Abstract: A method includes scanning, from plurality of sets of encoded data slices to plurality of sets of encoded data slices, to identify encoded data slices that are in need of rebuilding. The method further includes adding the identified encoded data slices into a first level rebuilding queue. The method further includes analyzing the identified encoded data slices based on a rebuilding prioritization function to establish a prioritization for the identified encoded data slices. The method further includes transferring, based on the analyzing, a first group of encoded data slices into a first priority rebuilding queue and a second group of encoded data slices into a second priority rebuilding queue. The method further includes rebuilding the first and second group of encoded data slices based on a rebuilding prioritization protocol.
    Type: Grant
    Filed: January 9, 2020
    Date of Patent: February 14, 2023
    Assignee: Pure Storage, Inc.
    Inventors: Andrew D. Baptist, Wesley B. Leggette, Jason K. Resch
  • Patent number: 11579790
    Abstract: Volume migration among a set of storage systems synchronously replicating a dataset for a volume, where volume migration includes: initiating a transfer of the volume in dependence upon determining that a performance metric for accessing the volume stored on a first storage system would improve if transferred to a second storage system; and during the transfer of the volume: determining status information for the transfer; intercepting an I/O operation directed to the volume; and directing, in dependence upon the status information, the I/O operation to either the first storage system or the second storage system.
    Type: Grant
    Filed: September 18, 2020
    Date of Patent: February 14, 2023
    Assignee: PURE STORAGE, INC.
    Inventor: Taher Vohra
  • Patent number: 11582046
    Abstract: A method for authorizing I/O (input/output) commands in a storage cluster is provided. The method includes generating a token responsive to an authority initiating an I/O command, wherein the token is specific to assignment of the authority and a storage node of the storage cluster. The method includes verifying the I/O command using the token, wherein the token includes a signature confirming validity of the token and wherein the token is revocable.
    Type: Grant
    Filed: June 18, 2021
    Date of Patent: February 14, 2023
    Assignee: Pure Storage, Inc.
    Inventors: Robert Lee, John Hayes
  • Patent number: 11581943
    Abstract: A storage controller includes a processing device to send a Non-Volatile Memory Express over Fibre Channel (NVMe/FC) command to a submission queue without routing the NVMe/FC command through a kernel space, the submission queue being reserved for direct access by an initiator device to a user space of the storage controller.
    Type: Grant
    Filed: July 13, 2020
    Date of Patent: February 14, 2023
    Assignee: Pure Storage, Inc.
    Inventor: Roland Dreier
  • Patent number: 11573864
    Abstract: Automatically managing database applications, including identifying, by a management extension, an SQL server host connected to a storage system, wherein the SQL server host comprises an SQL server managing an SQL database supported by the storage system; identifying, by the management extension, the SQL database supported by the storage system based on the identified SQL server host; and scheduling, by the management extension, a backup of the SQL database.
    Type: Grant
    Filed: December 10, 2019
    Date of Patent: February 7, 2023
    Assignee: Pure Storage, Inc.
    Inventors: Ahmed Azmy Hassan, Hesham Anan, Daniele Braga Pecanha, Aoxi Yao, Robert Barker, Jr.
  • Patent number: 11573727
    Abstract: Reversing deletion of a virtual machine including managing, by a storage system, a repository of virtual machine snapshots on a datastore; receiving, by the storage system, a request to recover a deleted virtual machine from the datastore; accessing, by the storage system, the repository of virtual machine snapshots on the datastore to generate a list of deleted virtual machines associated with virtual machine snapshots in the repository of virtual machine snapshots; receiving, by the storage system, a selection of one of the deleted virtual machines in the list of deleted virtual machines; and recovering, by the storage system, the selected deleted virtual machine using a virtual machine snapshot for the selected deleted virtual machine.
    Type: Grant
    Filed: January 20, 2021
    Date of Patent: February 7, 2023
    Assignee: PURE STORAGE, INC.
    Inventors: Vivekkumar Patel, Neale Genereux, Wanru Liu, Marten Heidemeyer, John Colgrove
  • Publication number: 20230032836
    Abstract: An illustrative method includes a monitoring system obtaining event data describing an event within a distributed compute and storage system, generating an event block for the event based on the event data, and attaching the event block to an event blockchain associated with the distributed compute and storage system, the event blockchain being immutable and indicating one or more events within the distributed compute and storage system in a chronological order of the one or more events. The event blockchain is used to provide one or more features of a storage system.
    Type: Application
    Filed: July 30, 2021
    Publication date: February 2, 2023
    Applicant: Pure Storage, Inc.
    Inventors: Luis Pablo Pabón, Naveen Neelakantam, Taher Vohra
  • Patent number: 11567832
    Abstract: A storage unit includes an interface configured to interface and communicate with a dispersed storage network (DSN), a memory that stores operational instructions, and processing circuitry. The storage unit receives a set of read slice requests for a set of encoded data slices (EDSs) associated with a data object stored within a first set of storage units, where the storage the first set of storage units includes the storage unit. When at least a read threshold number of EDSs and fewer than all of the set of EDSs can be successfully retrieved from the first set of storage units, the storage unit identifies at least one EDS associated with a data object that is stored in a second set of storage units, obtains the at least one EDS and stores the at least one EDS in the storage unit.
    Type: Grant
    Filed: March 12, 2021
    Date of Patent: January 31, 2023
    Assignee: PURE STORAGE, INC.
    Inventors: Ravi V. Khadiwala, Yogesh R. Vedpathak, Jason K. Resch, Asimuddin Kazi
  • Patent number: 11567790
    Abstract: Systems, devices, and methods are disclosed herein for containerized scalable storage applications. Methods may include instantiating an application instance based on a plurality of application instance parameters, the application instance being configured to utilize a plurality of storage volumes implemented in a storage cluster. Methods may also include enumerating a plurality of unattached storage volumes included in the cluster associated with the application instance, the plurality of unattached storage volumes having a plurality of underlying physical storage devices, and the plurality of unattached storage volumes being identified based on a plurality of application instance parameters. The methods may further include attaching at least some of the plurality of unattached storage volumes to the application instance, wherein the attaching enables the application instance to access data stored in the attached storage volumes.
    Type: Grant
    Filed: January 29, 2020
    Date of Patent: January 31, 2023
    Assignee: Pure Storage, Inc.
    Inventors: Goutham Rao, Vinod Jayaraman, Ganesh Sangle
  • Patent number: 11567810
    Abstract: Migrating workloads between a plurality of execution environments, including: identifying, in dependence upon on characteristics of a workload, one or more execution environments that can support the workload; determining, for each execution environment, costs associated with supporting the workload on the execution environment; selecting, in dependence upon the costs associated with supporting the workload on each the execution environments, a target execution environment for supporting the workload; and executing the workload on the target execution environment.
    Type: Grant
    Filed: October 23, 2020
    Date of Patent: January 31, 2023
    Assignee: PURE STORAGE, INC.
    Inventors: Chadd Kenney, Farhan Abrol, Lei Zhou, Yi-Chin Wu, Apoorva Bansal
  • Patent number: 11567702
    Abstract: A method for execution by a computing device of a dispersed storage network includes obtaining resource information for a subset of storage units of a storage unit pool. W available storage units of the storage unit pool are identified in response to receiving a store data request. W choose S combinations of selecting S number of storage units of the W available storage units are identified. A plurality of rating levels is calculated based on the resource information, where each of the plurality of rating levels are assigned to a corresponding combination of the W choose S combinations. One combination of the W choose S combinations is selected based on the plurality of rating levels. Storage of data of the store data request is facilitated utilizing the S number of storage units of the selected one combination.
    Type: Grant
    Filed: April 5, 2021
    Date of Patent: January 31, 2023
    Assignee: PURE STORAGE, INC.
    Inventor: Jason K. Resch
  • Patent number: 11566962
    Abstract: A method of testing the structural integrity of a rigid container comprises performing a sampling process on the rigid container comprising sampling a volume of sample gas from a sampling region associated with the rigid container, wherein the method further comprises performing a detection process comprising producing one or more laser beams for excitation of one or more materials that may be in the volume of sample gas, wherein the one or more materials are representative of a gas and/or vapour and/or a liquid leak from the rigid container and detecting light that has passed through the volume of sample gas, and determining the presence and/or absence and/or amount of said one or more materials in the volume of sample gas based on detected light.
    Type: Grant
    Filed: August 21, 2018
    Date of Patent: January 31, 2023
    Assignee: Pure Storage, Inc.
    Inventors: Paul Black, Tom Hunter
  • Patent number: 11567917
    Abstract: A processor-based method for locating data and metadata closely together in a storage system is provided. The method includes writing a first range of a file and a first metadata relating to attributes of the file into at least one segment controlled by a first authority of the file. The method includes delegating, by the first authority, a second authority for a second range of the file, and writing the second range of the file and second metadata relating to the attributes of the file into at least one segment controlled by the second authority.
    Type: Grant
    Filed: August 14, 2020
    Date of Patent: January 31, 2023
    Assignee: Pure Storage, Inc.
    Inventors: John Hayes, Robert Lee, Igor Ostrovsky, Peter Vajgel
  • Publication number: 20230027787
    Abstract: Apparatus for tiered storage of data in a storage network. In an example of operation, a computing device receives a data object for storage and forwards the data object for storage in a first plurality of memory devices of a first memory type. The computing device determines a system level storage efficiency for the data object based, at least in part, on a data attribute associated with the data object. The computing device further selects, based at least in part on the system level storage efficiency preference, a second plurality of memory devices comprised of a second memory type. The computing device determines error encoding parameters based on the second plurality of memory devices, retrieves the data object from the first plurality of memory devices, and encodes the data object with the error encoding parameters to generate a plurality of encoded data slices for storage in the second plurality of memory devices.
    Type: Application
    Filed: September 30, 2022
    Publication date: January 26, 2023
    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
  • Publication number: 20230026842
    Abstract: Methods and apparatus for redirecting data access requests in a storage network are disclosed. In an embodiment, a computing device associated with the storage network performs a method that includes identifying a (second) storage pool of the storage network to replace a first storage pool of the storage network. The method includes issuing a migration message to at least one of the first storage pool or the second storage pool. The migration message initiates a replication of data from the first storage pool to the second storage pool. The method further includes receiving a write data request for the first storage pool prior to completion of the replication of the data, and forwarding the write data request to the second storage pool for further processing.
    Type: Application
    Filed: September 30, 2022
    Publication date: January 26, 2023
    Applicant: Pure Storage, Inc.
    Inventors: Asimuddin Kazi, Andrew D. Baptist, Wesley B. Leggette, Manish Motwani, Ilya Volvovski
  • Publication number: 20230025990
    Abstract: A method for execution by one or more processing modules of one or more computing devices begins by encoding data using a dispersed storage error encoding function to produce a plurality of sets of encoded data slices arranged into a plurality of chunksets of encoded data slices. The method continues by selecting a set of storage units for storing the plurality of chunksets and assigning a distributed computing task to each storage unit of the set of storage units. The method then continues by generating a unique key set for each storage unit of the storage units, encrypting each chunkset of encoded data slices with a corresponding one of the unique key sets to produce a plurality of encrypted chunksets and sending an encrypted chunkset of the plurality of encrypted chunksets and an indication of a corresponding distributed computing task to each storage unit of the set of storage units for storage of the encrypted chunksets and execution of the distributed computing task.
    Type: Application
    Filed: September 30, 2022
    Publication date: January 26, 2023
    Applicant: Pure Storage, Inc.
    Inventors: Andrew D. Baptist, Greg R. Dhuse, Wesley B. Leggette, Jason K. Resch
  • Patent number: 11561949
    Abstract: A system and method for efficiently storing data in a storage system. A data storage subsystem includes multiple data storage locations on multiple storage devices in addition to at least one mapping table. A data storage controller determines whether data to store in the storage subsystem has one or more patterns of data intermingled with non-pattern data within an allocated block. Rather than store the one or more pattern on the storage devices, the controller stores information in a header on the storage devices. The information includes at least an offset for the first instance of a pattern, a pattern length, and an identification of the pattern. The data may be reconstructed for a corresponding read request from the information stored in the header.
    Type: Grant
    Filed: July 22, 2020
    Date of Patent: January 24, 2023
    Assignee: Pure Storage, Inc.
    Inventors: Marco Sanvido, Richard Hankins, John Hayes, Steve Hodgson, Feng Wang, Sergey Zhuravlev, Andrew Kleinerman