-
公开(公告)号:US12204768B2
公开(公告)日:2025-01-21
申请号:US18324331
申请日:2023-05-26
Applicant: PURE STORAGE, INC.
Inventor: Andrew R. Bernat , Wei Tang
IPC: G06F3/06 , G06F12/06 , G06F12/0804
Abstract: A set of blocks of a storage device are allocated for storage of data, wherein the set of blocks of the storage device is selected based on a power requirement that is based on a number of partially programmed blocks stored in the cache. Subsequent data to be stored at the storage device is assigned to the set of blocks for storage at the storage device.
-
公开(公告)号:US11853164B2
公开(公告)日:2023-12-26
申请号:US17979841
申请日:2022-11-03
Applicant: PURE STORAGE, INC.
Inventor: Timothy Brennan , Andrew Bernat , Peter Kirkpatrick , Wei Tang
CPC classification number: G06F11/1092 , G06F11/076 , G06F11/1096
Abstract: Continuous value data redundancy, including: receiving, by a storage system, a dataset; determining, based on a data resiliency metric, an integer redundancy value for the dataset from among a plurality of redundancy values; and generating, based on the integer redundancy value for the dataset, data recovery information for the dataset, wherein the integer redundancy value for the dataset is different from at least one other integer redundancy value for another dataset stored within the storage system.
-
公开(公告)号:US11157179B2
公开(公告)日:2021-10-26
申请号:US16701991
申请日:2019-12-03
Applicant: Pure Storage, Inc.
Inventor: Andrew Bernat , Wei Tang
Abstract: A power requirement associated with a storage device of the plurality of storage devices is determined. A set of blocks of the storage device is allocated for storage of data, wherein the set of blocks of the storage device is less than the power requirement of the storage device. User data to be stored at the storage system is received. The user data is assigned to the set of blocks for storage at the storage device.
-
公开(公告)号:US11003369B1
公开(公告)日:2021-05-11
申请号:US16246771
申请日:2019-01-14
Applicant: PURE STORAGE, INC.
Inventor: Andrew Bernat , Wei Tang
IPC: G06F3/06 , G06F9/4401
Abstract: Performing a tune-up procedure on a storage device including determining, during a boot process, that a first storage device is available for a tune-up procedure, wherein the tune-up procedure prepares the first storage device for use after being offline; reserving the first storage device to perform the tune-up procedure, wherein reserving the first storage device prevents another system from performing the tune-up procedure on the first storage device; and executing the tune-up procedure on the first storage device.
-
公开(公告)号:US11947815B2
公开(公告)日:2024-04-02
申请号:US17245298
申请日:2021-04-30
Applicant: PURE STORAGE, INC.
Inventor: Andrew Bernat , Wei Tang
IPC: G06F3/06 , G06F9/4401
CPC classification number: G06F3/0632 , G06F3/0604 , G06F3/0673 , G06F9/4401
Abstract: Performing a tune-up procedure on a storage device including determining, during a boot process, that a first storage device is available for a tune-up procedure, wherein the tune-up procedure prepares the first storage device for use after being offline; reserving the first storage device to perform the tune-up procedure, wherein reserving the first storage device prevents another system from performing the tune-up procedure on the first storage device; and executing the tune-up procedure on the first storage device.
-
公开(公告)号:US11846968B2
公开(公告)日:2023-12-19
申请号:US17981285
申请日:2022-11-04
Applicant: Pure Storage, Inc.
Inventor: Andrew R. Bernat , Peter E. Kirkpatrick , Gordon James Coleman , Wei Tang , John Roper
CPC classification number: G06F3/0647 , G06F3/0604 , G06F3/064 , G06F3/0608 , G06F3/0634 , G06F3/0673 , G06F3/0688 , G06F12/06 , G06F2212/1044
Abstract: A command to relocate data is transmitted by a storage controller. The command includes first address information associated with a first set of blocks storing the data at one or more storage devices using a first programming mode and second address information associated with a second set of blocks at the one or more storage devices to store the relocated data using a second programming mode. The command causes the relocation of the data from the first set of blocks to the second set of blocks while bypassing sending the data to the storage controller. An acknowledgement is received that the relocated data has been stored at the second number of blocks.
-
公开(公告)号:US11494267B2
公开(公告)日:2022-11-08
申请号:US16848590
申请日:2020-04-14
Applicant: PURE STORAGE, INC.
Inventor: Timothy Brennan , Andrew Bernat , Peter Kirkpatrick , Wei Tang
Abstract: Continuous value data redundancy, including: receiving, by a storage system, a dataset; determining, based on a data resiliency metric, an integer redundancy value for the dataset from among a plurality of redundancy values; and generating, based on the integer redundancy value for the dataset, data recovery information for the dataset, wherein the integer redundancy value for the dataset is different from at least one other integer redundancy value for another dataset stored within the storage system.
-
公开(公告)号:US20210181941A1
公开(公告)日:2021-06-17
申请号:US16711828
申请日:2019-12-12
Applicant: Pure Storage, Inc.
Inventor: Andrew R. Bernat , Wei Tang , Phillip Hord , Gordon James Coleman
Abstract: A storage unit has one or more processing devices, a solid-state drive and an open blocks cache memory. The open blocks cache memory holds open blocks of data or metadata and holds closed blocks of data or metadata pending writing to the solid-state drive. Closed blocks of data or metadata are written to the solid-state drive and open blocks of data or metadata are written to the open blocks cache memory. Values for open blocks in the open blocks cache memory are tracked. The values are adjusted in a first direction when an open block is written to the open blocks cache memory, and the values are adjusted in a second direction when an open block in the open blocks cache memory is closed and written from the open blocks cache memory to the solid-state drive.
-
公开(公告)号:US11500570B2
公开(公告)日:2022-11-15
申请号:US17352464
申请日:2021-06-21
Applicant: PURE STORAGE, INC.
Inventor: Andrew R. Bernat , Peter E. Kirkpatrick , Gordon James Coleman , Wei Tang , John Roper
Abstract: A command to relocate data is transmitted by a storage controller. The command includes first address information associated with a first set of blocks storing the data at one or more storage devices using a first programming mode and second address information associated with a second set of blocks at the one or more storage devices to store the relocated data using a second programming mode. The command causes the relocation of the data from the first set of blocks to the second set of blocks while bypassing sending the data to the storage controller. An acknowledgement is received that the relocated data has been stored at the second number of blocks.
-
公开(公告)号:US11354058B2
公开(公告)日:2022-06-07
申请号:US16389675
申请日:2019-04-19
Applicant: Pure Storage, Inc.
Inventor: Andrew R. Bernat , Peter E. Kirkpatrick , Gordon James Coleman , Wei Tang , Ronald Karr
Abstract: A storage system includes solid-state storage devices and a storage controller operatively coupled to the solid-state storage devices, the storage controller including a processing device, the processing device to receive, from a solid-state storage device of the solid-state storage devices, an indication of an occurrence of triggering event associated with data stored at a first data block of the solid-state storage device. In response to receiving the indication of the occurrence of the triggering event, a second data block of the solid-state storage device is identified for storage of the data. A command in transmitted to the solid-state storage device that includes address information associated with the second data block of the solid-state storage device for storage of the data, wherein the command causes the solid-state storage device to program the data to the second data block.
-
-
-
-
-
-
-
-
-