-
公开(公告)号:US11636031B2
公开(公告)日:2023-04-25
申请号:US17360791
申请日:2021-06-28
Applicant: PURE STORAGE, INC.
Inventor: John Colgrove , John Hayes , Ethan Miller , Feng Wang
IPC: G06F12/10 , G06F12/02 , G06F3/06 , G06F12/1009 , G06F12/0802
Abstract: Methods, computer systems, and computer readable medium are described. In a particular embodiment, a storage controller is configured to receive, from a host computing device, a request to perform a bulk array task and in response to receiving the request, store an indication relating old keys of a mapping table to new keys, wherein both the old keys and the new keys correspond to the request. The storage controller is also configured to convey a response indicating completing of the request without prior access of user data and update the mapping table to replace the old keys with the new keys.
-
公开(公告)号:USRE49148E1
公开(公告)日:2022-07-26
申请号:US15885500
申请日:2018-01-31
Applicant: Pure Storage, Inc.
Inventor: John Colgrove , John Hayes , Ethan Miller , Cary Sandvig , Joseph S. Hasbani , Feng Wang
IPC: G06F12/02 , G06F3/06 , G06F16/174
Abstract: A system and method for performing garbage collection. A system includes a storage medium, a first table including entries which map a virtual address to locations in the storage medium, and a second table with entries which include a reverse mapping of a physical address in a data storage medium to one or more virtual addresses. A storage controller is configured to perform garbage collection. During garbage collection, the controller is configured to identify one or more entries in the second table which correspond to a segment to be garbage collected. In response to determining the first table includes a valid mapping for a virtual address included in an entry of the one of the one or more entries, the controller is configured to copy data from a first location identified in the entry to a second location in the data storage medium, and reclaim the first storage location.
-
公开(公告)号:US11307772B1
公开(公告)日:2022-04-19
申请号:US15221686
申请日:2016-07-28
Applicant: Pure Storage, Inc.
Inventor: John Colgrove , John Hayes , Bo Hong , Feng Wang , Ethan Miller , Craig Harmer
IPC: G06F3/06
Abstract: A system and method for effectively scheduling read and write operations among a plurality of solid-state storage devices. 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 comprises an I/O scheduler. The storage controller is configured to receive a read request targeted to the data storage medium, and identify at least a first storage device of the plurality of storage devices which contains data targeted by the read request. In response to either detecting or predicting the first storage device will exhibit variable performance, the controller is configured to generate a reconstruct read request configured to obtain the data from one or more devices of the plurality of storage devices other than the first storage device.
-
公开(公告)号:US11275509B1
公开(公告)日:2022-03-15
申请号:US16266734
申请日:2019-02-04
Applicant: PURE STORAGE, INC.
Inventor: John Colgrove , Craig Harmer , John Hayes , Bo Hong , Ethan Miller , Feng Wang
Abstract: A computer system comprising: a data storage medium comprising a plurality of storage devices configured to store data; and a data storage controller coupled to the data storage medium; wherein the data storage controller is configured to: receive read and write requests targeted to the data storage medium; schedule said read and write requests for processing by said plurality of storage devices; detect a given device of the plurality of devices is exhibiting an unscheduled behavior comprising variable performance by one or more of the plurality of storage devices, wherein the variable performance comprises at least one of a relatively high response latency or relatively low throughput; and schedule one or more reactive operations in response to detecting the occurrence of the unscheduled behavior, said one or more reactive operations being configured to cause the given device to enter a known state.
-
公开(公告)号:US10783131B1
公开(公告)日:2020-09-22
申请号:US15861279
申请日:2018-01-03
Applicant: Pure Storage, Inc.
Inventor: Marco Sanvido , Richard Hankins , John Hayes , Steve Hodgson , Feng Wang , Sergey Zhuravlev , Andrew Kleinerman
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.
-
公开(公告)号:US10452297B1
公开(公告)日:2019-10-22
申请号:US15339684
申请日:2016-10-31
Applicant: Pure Storage, Inc.
Inventor: Ronald Karr , Ethan L. Miller , Cary A. Sandvig , Feng Wang , Wei Zhang
IPC: G06F3/06
Abstract: The method and system generates a first deduplication map (DDM) level including first data and a second DDM level including second data. The method or apparatus also generates a first index summary (IS) level corresponding to the first DDM level and a second IS level corresponding to the second DDM level. The method or apparatus merges the first data of the first DDM level and the second data of the second DDM level to generate a third DDM level comprising third data. The method or apparatus in response to generating the third DDM level, generates a third IS level to accelerate lookup within the third DDM level.
-
27.
公开(公告)号:US10156998B1
公开(公告)日:2018-12-18
申请号:US15418035
申请日:2017-01-27
Applicant: Pure Storage, Inc.
Inventor: John Colgrove , John Hayes , Bo Hong , Feng Wang , Ethan Miller , Craig Harmer
IPC: G06F3/06
Abstract: A system and method for effectively scheduling read and write operations among a plurality of solid-state storage devices. 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 comprises an I/O scheduler. The characteristics of corresponding storage devices are used to schedule I/O requests to the storage devices in order to maintain relatively consistent response times at predicted times. Should a device exhibit an unscheduled behavior which may be indicative of the device being in an unknown state, the scheduler may schedule one or more reactive operations on the device configured to cause the device to enter a known state.
-
公开(公告)号:US10126982B1
公开(公告)日:2018-11-13
申请号:US15418944
申请日:2017-01-30
Applicant: Pure Storage, Inc.
Inventor: John Colgrove , John Hayes , Bo Hong , Feng Wang , Ethan Miller , Craig Harmer
IPC: G06F3/06
Abstract: A system and method for effectively scheduling read and write operations among a plurality of solid-state storage devices. 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 comprises an I/O scheduler. The characteristics of corresponding storage devices are used to schedule I/O requests to the storage devices in order to maintain relatively consistent response times at predicted times. In order to reduce a likelihood of unscheduled behaviors of the storage devices, the storage controller is configured to schedule proactive operations on the storage devices that will reduce a number of occurrences of unscheduled behaviors.
-
公开(公告)号:US09684460B1
公开(公告)日:2017-06-20
申请号:US15224281
申请日:2016-07-29
Applicant: Pure Storage, Inc.
Inventor: John Colgrove , John Hayes , Bo Hong , Feng Wang , Ethan Miller , Craig Harmer
IPC: G06F12/00 , G06F3/06 , G06F12/0891 , G06F12/02
CPC classification number: G06F3/0611 , G06F3/06 , G06F3/061 , G06F3/0613 , G06F3/0629 , G06F3/0653 , G06F3/0655 , G06F3/0656 , G06F3/0659 , G06F3/0683 , G06F3/0688 , G06F3/0689 , G06F12/0238 , G06F12/0246 , G06F12/08 , G06F12/0802 , G06F12/0891 , G06F2003/0697 , G06F2212/60
Abstract: A system and method for scheduling read and write operations among a plurality of solid-state storage devices. 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 comprises an I/O scheduler. The data storage controller is configured to receive requests targeted to the data storage medium, said requests including a first type of operation and a second type of operation. The controller is further configured to schedule requests of the first type for immediate processing by said plurality of storage devices, and queue requests of the second type for later processing by the plurality of storage devices. Operations of the first type may correspond to operations with an expected relatively low latency, and operations of the second type may correspond to operations with an expected relatively high latency.
-
公开(公告)号:US09423967B2
公开(公告)日:2016-08-23
申请号:US14715552
申请日:2015-05-18
Applicant: Pure Storage, Inc.
Inventor: John Colgrove , John Hayes , Bo Hong , Feng Wang , Ethan Miller , Craig Harmer
CPC classification number: G06F3/0611 , G06F3/06 , G06F3/061 , G06F3/0613 , G06F3/0629 , G06F3/0653 , G06F3/0655 , G06F3/0656 , G06F3/0659 , G06F3/0683 , G06F3/0688 , G06F3/0689 , G06F12/0238 , G06F12/0246 , G06F12/08 , G06F12/0802 , G06F12/0891 , G06F2003/0697 , G06F2212/60
Abstract: A system and method for scheduling read and write operations among a plurality of solid-state storage devices. 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 comprises an I/O scheduler. The data storage controller is configured to receive requests targeted to the data storage medium, said requests including a first type of operation and a second type of operation. The controller is further configured to schedule requests of the first type for immediate processing by said plurality of storage devices, and queue requests of the second type for later processing by the plurality of storage devices. Operations of the first type may correspond to operations with an expected relatively low latency, and operations of the second type may correspond to operations with an expected relatively high latency.
-
-
-
-
-
-
-
-
-