-
公开(公告)号:USRE49011E1
公开(公告)日:2022-04-05
申请号:US15874387
申请日:2018-01-18
Applicant: Pure Storage, Inc.
Inventor: John Colgrove , John Hayes , Ethan Miller , Cary Sandvig
Abstract: A system and method for maintaining a mapping table in a data storage subsystem. A data storage subsystem supports multiple mapping tables. Records within a mapping table are arranged in multiple levels which may be logically ordered by time. Each level stores pairs of a key value and a pointer value. New records are inserted in a created new (youngest) level. All levels other than the youngest may be read only. In response to detecting a flattening condition, a data storage controller is configured to identify a group of two or more adjacent levels of the plurality of levels for flattening which are logically adjacent in time. A new level is created and one or more records stored within the group are stored in the new level, in response to detecting each of the one or more records stores a unique key among keys stored within the group.
-
公开(公告)号:US20220083420A1
公开(公告)日:2022-03-17
申请号:US17535152
申请日:2021-11-24
Applicant: Pure Storage, Inc.
Inventor: John D. Davis , John Hayes , Hari Kannan , Nenad Miladinovic , Zhangxi Tan
Abstract: In some embodiments, a method for die-level monitoring is provided. The method includes distributing user data throughout a plurality of storage nodes through erasure coding, wherein the plurality of storage nodes are housed within a chassis that couples the storage nodes. Each of the storage nodes has a non-volatile solid-state storage with non-volatile memory and the user data is accessible via the erasure coding from a remainder of the storage nodes in event of two of the storage nodes being unreachable. The method includes producing diagnostic information that diagnoses the non-volatile memory on a basis of per package, per die, per plane, per block, or per page, the producing performed by each of the plurality of storage nodes. The method includes writing the diagnostic information to a memory in the storage cluster.
-
公开(公告)号:US11232079B2
公开(公告)日:2022-01-25
申请号:US14801722
申请日:2015-07-16
Applicant: Pure Storage, Inc.
Inventor: John Hayes , Robert Lee , Igor Ostrovsky , Peter Vajgel
IPC: G06F16/182 , G06F16/18
Abstract: A method for distribution of directories in a storage system is provided. The method includes distributing information, regarding location in the storage system of a plurality of files in a directory, to a plurality of owners in a plurality of storage nodes of the storage system, wherein ownership of differing subsets of the plurality of files of the directory is distributed among differing owners in differing storage nodes. The method includes receiving a request for location information in the storage system of a file of the plurality of files in the directory and determining, based on a file name of the file and an identity of the directory, which of the plurality of owners has ownership of the file and the location information for the file.
-
公开(公告)号:US11204830B2
公开(公告)日:2021-12-21
申请号:US16800669
申请日:2020-02-25
Applicant: Pure Storage, Inc.
Inventor: John D. Davis , John Hayes , Hari Kannan , Nenad Miladinovic , Zhangxi Tan
Abstract: In some embodiments, a method for die-level monitoring is provided. The method includes distributing user data throughout a plurality of storage nodes through erasure coding, wherein the plurality of storage nodes are housed within a chassis that couples the storage nodes. Each of the storage nodes has a non-volatile solid-state storage with non-volatile memory and the user data is accessible via the erasure coding from a remainder of the storage nodes in event of two of the storage nodes being unreachable. The method includes producing diagnostic information that diagnoses the non-volatile memory on a basis of per package, per die, per plane, per block, or per page, the producing performed by each of the plurality of storage nodes. The method includes writing the diagnostic information to a memory in the storage cluster.
-
公开(公告)号:US11204701B2
公开(公告)日:2021-12-21
申请号:US16826740
申请日:2020-03-23
Applicant: Pure Storage, Inc.
Inventor: John Hayes , Robert Lee , Igor Ostrovsky , Peter Vajgel
IPC: G06F3/06
Abstract: A method of processing transactions associated with a command in a storage system is provided. The method includes receiving, at a first authority of the storage system, a command relating to user data. The method includes sending a transaction of the command, from the first authority to a second authority of the storage system, wherein a token accompanies the transaction and writing data in accordance with the transaction as permitted by the token into a partition that is allocated to the second authority in a storage device of the storage system.
-
公开(公告)号:US11188476B1
公开(公告)日:2021-11-30
申请号:US16700927
申请日:2019-12-02
Applicant: PURE STORAGE, INC.
Inventor: John Hayes , Par Botes , Robert Lee , Peter Vajgel
Abstract: A method for preserving a media access control (MAC) address of a virtual server is provided. The method includes assigning a physical computing resource to a virtual server, assigning a physical storage memory resource to the virtual server, and assigning a physical network resource to the virtual server. The method includes assigning a virtual MAC address to the virtual server, the virtual MAC address to remain with the virtual server despite reassignment of one or more of the physical computing resource, the physical storage memory resource or the physical network resource, wherein at least one method operation is performed by a processor. A computing and storage system is also provided.
-
公开(公告)号:US20210216209A1
公开(公告)日:2021-07-15
申请号:US17213697
申请日:2021-03-26
Applicant: Pure Storage, Inc.
Inventor: John D. Davis , John Hayes , Hari Kannan , Nenad Miladinovic , Zhangxi Tan
Abstract: A storage cluster is provided. The storage cluster includes a plurality of storage nodes, each of the plurality of storage nodes having nonvolatile solid-state memory and a plurality of operations queues coupled to the solid-state memory. The plurality of storage nodes is configured to distribute the user data and metadata throughout the plurality of storage nodes such that the plurality of storage nodes can access the user data with a failure of two of the plurality of storage nodes. Each of the plurality of storage nodes is configured to determine whether a read of 1 or more bits in the solid-state memory via a first path is within a latency budget. The plurality of storage nodes is configured to perform a read of user data or metadata via a second path, responsive to a determination that the read of the bit via the first path is not within the latency budget.
-
公开(公告)号:US20210173741A1
公开(公告)日:2021-06-10
申请号:US17172706
申请日:2021-02-10
Applicant: PURE STORAGE, INC.
Inventor: John Colgrove , John Hayes , Bo Hong , Ethan Miller
Abstract: A storage controller of a data storage subsystem including a plurality of storage devices in a redundant array of independent drives (RAID) configuration writes a first RAID stripe to the plurality of storage devices. Writing the first RAID stripe includes for each storage device of a subset of the plurality of storage devices, writing within a page of the storage device, user data, and checksums that validate the user data stored on storage devices of the subset of the plurality of storage devices and writing, within a page of a particular storage device of the plurality of storage devices inter-device redundancy data, intra-page error recovery data, and inter-page protection data.
-
公开(公告)号:US10983859B2
公开(公告)日:2021-04-20
申请号:US14454537
申请日:2014-08-07
Applicant: Pure Storage, Inc.
Inventor: John D. Davis , John Hayes , Zhangxi Tan , Hari Kannan , Nenad Miladinovic
Abstract: 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.
-
公开(公告)号:US20210073193A1
公开(公告)日:2021-03-11
申请号:US16953213
申请日:2020-11-19
Applicant: Pure Storage, Inc.
Inventor: John Hayes , Ethan Miller , John Colgrove
IPC: G06F16/22 , G06F16/215 , G06F16/2455
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.
-
-
-
-
-
-
-
-
-