-
公开(公告)号:US20140304472A1
公开(公告)日:2014-10-09
申请号:US14312088
申请日:2014-06-23
Applicant: PURE Storage, Inc.
Inventor: John Colgrove , John Hayes , Ethan Miller , Feng Wang
CPC classification number: G06F12/0246 , G06F3/0608 , G06F3/061 , G06F3/0638 , G06F3/0665 , G06F3/067 , G06F12/0802 , G06F12/1009 , G06F2212/50 , G06F2212/7201
Abstract: A system and method for efficiently performing user storage virtualization for data stored in a storage system including a plurality of solid-state storage devices. A data storage subsystem supports multiple mapping tables. Records within a mapping table are arranged in multiple levels. Each level stores pairs of a key value and a pointer value. The levels are sorted by time. New records are inserted in a created newest (youngest) level. No edits are performed in-place. All levels other than the youngest may be read only. The system may further include an overlay table which identifies those keys within the mapping table that are invalid.
-
公开(公告)号:US08856489B2
公开(公告)日:2014-10-07
申请号:US14160137
申请日:2014-01-21
Applicant: PURE Storage, Inc.
Inventor: John Colgrove , John Hayes , Ethan Miller , Feng Wang
CPC classification number: G06F12/0246 , G06F3/0608 , G06F3/061 , G06F3/0638 , G06F3/0665 , G06F3/067 , G06F12/0802 , G06F12/1009 , G06F2212/50 , G06F2212/7201
Abstract: A system and method for efficiently performing user storage virtualization for data stored in a storage system including a plurality of solid-state storage devices. A data storage subsystem supports multiple mapping tables. Records within a mapping table are arranged in multiple levels. Each level stores pairs of a key value and a pointer value. The levels are sorted by time. New records are inserted in a created newest (youngest) level. No edits are performed in-place. All levels other than the youngest may be read only. The system may further include an overlay table which identifies those keys within the mapping table that are invalid.
-
公开(公告)号:US20140195749A1
公开(公告)日:2014-07-10
申请号:US14046876
申请日:2013-10-04
Applicant: PURE Storage, INC.
Inventor: John Colgrove , Ethan Miller , John Hayes , Cary Sandvig , Christopher Golden , Jianting Cao
CPC classification number: G06F11/1469 , G06F3/0604 , G06F3/0605 , G06F3/0608 , G06F3/061 , G06F3/0611 , G06F3/0614 , G06F3/0619 , G06F3/0626 , G06F3/0632 , G06F3/0641 , G06F3/0644 , G06F3/065 , G06F3/0652 , G06F3/0655 , G06F3/0664 , G06F3/0665 , G06F3/0667 , G06F3/067 , G06F3/0671 , G06F3/0673 , G06F3/0683 , G06F3/0685 , G06F3/0689 , G06F11/1451 , G06F12/0875 , G06F12/0891 , G06F12/10 , G06F12/1009 , G06F12/121 , G06F17/30156 , G06F17/30345 , G06F2212/1008 , G06F2212/1016 , G06F2212/1032 , G06F2212/1044 , G06F2212/152 , G06F2212/154 , G06F2212/163 , G06F2212/261 , G06F2212/263
Abstract: A system and method for performing coarse-grained deduplication of volume regions. A storage controller detects that a first region of a first volume is identical to a second region of a second volume, wherein the first volume points to a first medium and the second volume points to a second medium. In response to detecting the identical regions, the storage controller stores an indication that the first range of the first medium underlies the second range of the second medium. Also in response to detecting the identical regions, the mappings associated with the second range of the second medium are invalidated.
Abstract translation: 用于执行卷区域粗粒度重复数据删除的系统和方法。 存储控制器检测到第一卷的第一区域与第二卷的第二区域相同,其中第一卷指向第一介质,第二卷指向第二介质。 响应于检测到相同的区域,存储控制器存储第一介质的第一范围在第二介质的第二范围之下的指示。 响应于检测相同区域,与第二介质的第二范围相关联的映射也被无效。
-
公开(公告)号:US20140136810A1
公开(公告)日:2014-05-15
申请号:US14160137
申请日:2014-01-21
Applicant: PURE Storage, Inc.
Inventor: John Colgrove , John Hayes , Ethan Miller , Feng Wang
IPC: G06F12/10
CPC classification number: G06F12/0246 , G06F3/0608 , G06F3/061 , G06F3/0638 , G06F3/0665 , G06F3/067 , G06F12/0802 , G06F12/1009 , G06F2212/50 , G06F2212/7201
Abstract: A system and method for efficiently performing user storage virtualization for data stored in a storage system including a plurality of solid-state storage devices. A data storage subsystem supports multiple mapping tables. Records within a mapping table are arranged in multiple levels. Each level stores pairs of a key value and a pointer value. The levels are sorted by time. New records are inserted in a created newest (youngest) level. No edits are performed in-place. All levels other than the youngest may be read only. The system may further include an overlay table which identifies those keys within the mapping table that are invalid.
-
公开(公告)号:US08645657B2
公开(公告)日:2014-02-04
申请号:US13919151
申请日:2013-06-17
Applicant: Pure Storage, Inc.
Inventor: John Colgrove , John Hayes , Bo Hong , Feng Wang , Ethan Miller , Craig Harmer
IPC: G06F12/00
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.
Abstract translation: 一种用于在多个固态存储设备之间调度读取和写入操作的系统和方法。 计算机系统包括经由网络彼此耦合的客户端计算机和数据存储阵列。 数据存储阵列利用固态驱动器和闪存单元进行数据存储。 数据存储阵列中的存储控制器包括I / O调度器。 数据存储控制器被配置为接收针对数据存储介质的请求,所述请求包括第一类型的操作和第二类型的操作。 所述控制器还被配置为调度所述第一类型的请求以供所述多个存储设备立即处理,以及所述第二类型的队列请求以供所述多个存储设备稍后处理。 第一类型的操作可以对应于具有预期的相对低的等待时间的操作,并且第二类型的操作可以对应于具有预期的较高等待时间的操作。
-
公开(公告)号:US12177368B2
公开(公告)日:2024-12-24
申请号:US18166426
申请日:2023-02-08
Applicant: PURE STORAGE, INC.
Inventor: Robert Lee , John Hayes
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 I/O command, wherein the token is specific to assignment of 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.
-
公开(公告)号:US12111729B2
公开(公告)日:2024-10-08
申请号:US18489496
申请日:2023-10-18
Applicant: PURE STORAGE, INC.
Inventor: John Colgrove , John Hayes , Bo Hong , Ethan Miller
CPC classification number: G06F11/108 , G06F3/0619 , G06F3/0646 , G06F3/0665 , G06F3/0688 , G06F3/0689 , G06F11/1076 , G06F11/1008 , G06F11/1068 , G06F11/2053
Abstract: A system, method, and product for flexible RAID layouts in a storage system, including: determining a reliability of an individual storage device of a plurality of storage devices, the individual storage device containing a plurality of portions of a Redundant Array of Independent Disks (RAID) stripe in a storage system, wherein the RAID stripe includes user data and inter-device parity data; detecting a change in the reliability of the individual storage device that contains the portion corresponding to the RAID stripe; and changing an amount of intra-device protection corresponding to the RAID stripe by decreasing, in the RAID stripe, an amount of space used to store the inter-device protection data.
-
公开(公告)号:US12093236B2
公开(公告)日:2024-09-17
申请号:US18316779
申请日:2023-05-12
Applicant: PURE STORAGE, INC.
Inventor: Ethan Miller , John Colgrove , John Hayes
IPC: G06F16/22 , G06F16/215 , G06F16/2455
CPC classification number: G06F16/2228 , G06F16/215 , G06F16/24553
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.
-
公开(公告)号:US11971828B2
公开(公告)日:2024-04-30
申请号:US16953079
申请日:2020-11-19
Applicant: Pure Storage, Inc.
Inventor: Brian T. Gold , John Hayes , Hari Kannan
CPC classification number: G06F12/109 , G06F11/1072 , G06F11/1076 , G06F11/1435 , G06F11/1456 , G11C29/789 , G11C29/86 , G06F12/0246 , G06F2201/84 , G06F2212/657 , G06F2212/7201 , G11C2029/0411
Abstract: A method for hardware assisted data lookup in a storage unit is provided. The method includes formatting data in at least one of a plurality of data formats for storage in the storage unit. The method includes configuring a logic unit with one or more parameters associated with the plurality of data formats and identifying incoming data with the one or more parameters as an instruction for execution.
-
公开(公告)号:US11797386B2
公开(公告)日:2023-10-24
申请号:US17902720
申请日:2022-09-02
Applicant: PURE STORAGE, INC.
Inventor: John Colgrove , John Hayes , Bo Hong , Ethan Miller
CPC classification number: G06F11/108 , G06F3/0619 , G06F3/0646 , G06F3/0665 , G06F3/0688 , G06F3/0689 , G06F11/1076 , G06F11/1008 , G06F11/1068 , G06F11/2053
Abstract: A system, method, and product for flexible RAID layouts in a storage system, including: determining a reliability of an individual storage device of a plurality of storage devices, the individual storage device containing a plurality of portions of a Redundant Array of Independent Disks (RAID) stripe in a storage system, wherein the RAID stripe includes user data and inter-device parity data; detecting a change in the reliability of the individual storage device that contains the portion corresponding to the RAID stripe; and changing an amount of intra-device protection corresponding to the RAID stripe by decreasing, in the RAID stripe, an amount of space used to store the inter-device protection data.
-
-
-
-
-
-
-
-
-