-
公开(公告)号:US10528419B2
公开(公告)日:2020-01-07
申请号:US15705691
申请日:2017-09-15
Applicant: Pure Storage, Inc.
Inventor: John D. Davis , John Hayes , Hari Kannan , Nenad Miladinovic , Zhangxi Tan
IPC: G06F11/10 , H03M13/37 , H03M13/11 , H03M13/09 , H03M13/15 , G11C29/00 , G06F12/08 , G06F12/06 , G06F12/02 , H03M13/05
Abstract: A method of failure mapping is provided. The method includes determining that a non-volatile memory block in the memory has a defect and generating a mask that indicates the non-volatile memory block and the defect. The method includes reading from the non-volatile memory block with application of the mask, wherein the reading and the application of the mask are performed by the non-volatile solid-state storage.
-
公开(公告)号:US10268548B2
公开(公告)日:2019-04-23
申请号:US15418333
申请日:2017-01-27
Applicant: PURE STORAGE, INC.
Inventor: John D. Davis , John Hayes , Hari Kannan , Nenad Miladinovic , Zhangxi Tan
IPC: G06F11/00 , G06F11/14 , G06F11/16 , G11C29/00 , G06F11/10 , G06F12/1009 , G11C29/36 , G11C29/38 , G11C29/44
Abstract: A storage cluster is provided. The storage cluster includes a plurality of storage nodes within a chassis. The plurality of storage nodes has flash memory for storage of user data and is configured to distribute the user data and metadata throughout the plurality of storage nodes such that the storage nodes can access the user data with a failure of two of the plurality of storage nodes. Each of the storage nodes is configured to generate at least one address translation table that maps around defects in the flash memory on one of a per flash package basis, per flash die basis, per flash plane basis, per flash block basis, per flash page basis, or per physical address basis. Each of the plurality of storage nodes is configured to apply the at least one address translation table to write and read accesses of the user data.
-
公开(公告)号:US20190065391A1
公开(公告)日:2019-02-28
申请号:US16174124
申请日:2018-10-29
Applicant: Pure Storage, Inc.
Inventor: John Davis , John Hayes , Brian Gold , Shantanu Gupta , Zhangxi Tan
CPC classification number: G06F12/10 , G06F3/061 , G06F3/0619 , G06F3/0638 , G06F3/0652 , G06F3/0679 , G06F3/0683 , G06F3/0688 , G06F12/0246 , G06F2212/7201 , G11C16/16
Abstract: A method of applying an address space to data storage in a non-volatile solid-state storage is provided. The method includes receiving a plurality of portions of user data for storage in the non-volatile solid-state storage and assigning to each successive one of the plurality of portions of user data one of a plurality of sequential, nonrepeating addresses of an address space. The address range of the address space exceeds a maximum number of addresses expected to be applied during a lifespan of the non-volatile solid-state storage. The method includes writing each of the plurality of portions of user data to the non-volatile solid-state storage such that each of the plurality of portions of user data is identified and locatable for reading via the one of the plurality of sequential, nonrepeating addresses of the address space.
-
公开(公告)号:US10185506B2
公开(公告)日:2019-01-22
申请号:US15357243
申请日:2016-11-21
Applicant: Pure Storage, Inc.
Inventor: John Hayes , Shantanu Gupta , John Davis , Brian Gold , Zhangxi Tan
Abstract: A method of applying scheduling policies 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 single chassis coupling the storage nodes as a cluster. The method includes receiving operations relating to a non-volatile memory of one of the plurality of storage nodes into a plurality of operation queues. The method includes evaluating each of the operations in the plurality of operation queues as to benefit to the non-volatile solid-state storage according to a plurality of policies. For each channel of a plurality of channels coupling the operation queues to the non-volatile memory, the method includes iterating a selection and an execution of a next operation from the plurality of operation queues, with each next operation having a greater benefit than at least a subset of operations remaining in the operation queues.
-
公开(公告)号:US20180088820A1
公开(公告)日:2018-03-29
申请号:US15830984
申请日:2017-12-04
Applicant: PURE STORAGE, INC.
Inventor: John Davis , John Hayes , Brian Gold , Shantanu Gupta , Zhangxi Tan
CPC classification number: G06F3/065 , G06F3/0619 , G06F3/0688 , G06F11/1004 , G06F11/108 , G06F13/28
Abstract: A non-volatile solid-state storage is provided. The non-volatile solid state storage includes a non-volatile random access memory (NVRAM) addressable by a processor external to the non-volatile solid state storage. The NVRAM is configured to store user data and metadata relating to the user data. The non-volatile solid state storage includes a flash memory addressable by the processor. The flash memory is configured to store the user data responsive to the processor directing transfer of the user data from the NVRAM to the flash memory.
-
公开(公告)号:US20180004594A1
公开(公告)日:2018-01-04
申请号:US15705691
申请日:2017-09-15
Applicant: Pure Storage, Inc.
Inventor: John D. Davis , John Hayes , Hari Kannan , Nenad Miladinovic , Zhangxi Tan
IPC: G06F11/10 , H03M13/37 , H03M13/11 , H03M13/09 , H03M13/15 , G11C29/00 , G06F12/08 , G06F12/06 , G06F12/02 , H03M13/05
CPC classification number: G06F11/1012 , G06F11/1008 , G06F12/0246 , G06F12/0646 , G06F12/08 , G11C29/70 , G11C29/76 , G11C29/765 , G11C29/88 , G11C29/883 , G11C29/886 , H03M13/05 , H03M13/09 , H03M13/1102 , H03M13/1515 , H03M13/3761
Abstract: A method of failure mapping is provided. The method includes determining that a non-volatile memory block in the memory has a defect and generating a mask that indicates the non-volatile memory block and the defect. The method includes reading from the non-volatile memory block with application of the mask, wherein the reading and the application of the mask are performed by the non-volatile solid-state storage.
-
公开(公告)号:US09836245B2
公开(公告)日:2017-12-05
申请号:US14322891
申请日:2014-07-02
Applicant: Pure Storage, Inc.
Inventor: John Hayes , Shantanu Gupta , John Davis , Brian Gold , Zhangxi Tan
CPC classification number: G06F3/065 , G06F3/0619 , G06F3/0688 , G06F11/1004 , G06F13/28
Abstract: A non-volatile solid-state storage is provided. The non-volatile solid state storage includes a non-volatile random access memory (NVRAM) addressable by a processor external to the non-volatile solid state storage. The NVRAM is configured to store user data and metadata relating to the user data. The non-volatile solid state storage includes a flash memory addressable by the processor. The flash memory is configured to store the user data responsive to the processor directing transfer of the user data from the NVRAM to the flash memory.
-
公开(公告)号:US09817750B2
公开(公告)日:2017-11-14
申请号:US14323876
申请日:2014-07-03
Applicant: Pure Storage, Inc.
Inventor: John Hayes , Shantanu Gupta , John Davis , Brian Gold , Zhangxi Tan
CPC classification number: G06F12/0246 , G06F11/10 , G06F11/108 , G06F12/1441 , G06F17/30 , G06F17/30218 , G06F2212/1016 , G06F2212/7205 , G06F2212/7207 , G06F2212/7208
Abstract: A method for storing user data is provided. The method includes distributing the user data throughout a plurality of storage nodes through erasure coding, wherein the plurality of storage nodes are housed within a single chassis that couples the storage nodes as a cluster, each of the plurality of storage nodes having nonvolatile solid-state memory for user data storage. The method includes performing analytics on user data and grouping portions of the user data according to results of the analytics. The method includes writing the user data to blocks of flash memory in the non-volatile solid-state memory, wherein each block receives portions of the user data grouped according to at least one of the results of the analytics.
-
公开(公告)号:US09747229B1
公开(公告)日:2017-08-29
申请号:US14323894
申请日:2014-07-03
Applicant: Pure Storage, Inc.
Inventor: John Hayes , Shantanu Gupta , John Davis , Brian Gold , Zhangxi Tan
CPC classification number: G06F13/28 , G06F3/0625 , G06F3/0629 , G06F3/0688
Abstract: A method of applying a data format in a direct memory access transfer 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 single chassis that couples the storage nodes as a cluster, each of the plurality of storage nodes having nonvolatile solid-state memory for user data storage. The method includes reading a self-describing data portion from a first memory of the nonvolatile solid-state memory and extracting a destination from the self-describing data portion. The method includes writing data, from the self-describing data portion, to a second memory of the nonvolatile solid-state memory according to the destination.
-
公开(公告)号:US20170199823A1
公开(公告)日:2017-07-13
申请号:US15321424
申请日:2015-07-02
Applicant: Pure Storage, Inc.
Inventor: John Hayes , Shantanu Gupta , John Davis , Brian Gold , Zhangxi Tan
CPC classification number: G06F12/10 , G06F3/061 , G06F3/0638 , G06F3/0683 , G06F3/0688 , G06F12/0246 , G06F2212/7201 , G11C16/16
Abstract: A method of applying an address space to data storage in a non-volatile solid-state storage is provided. The method includes receiving a plurality of portions of user data for storage in the non-volatile solid-state storage and assigning to each successive one of the plurality of portions of user data one of a plurality of sequential, nonrepeating addresses of an address space. The address range of the address space exceeds a maximum number of addresses expected to be applied during a lifespan of the non-volatile solid-state storage. The method includes writing each of the plurality of portions of user data to the non-volatile solid-state storage such that each of the plurality of portions of user data is identified and locatable for reading via the one of the plurality of sequential, nonrepeating addresses of the address space.
-
-
-
-
-
-
-
-
-