-
公开(公告)号:US11625300B2
公开(公告)日:2023-04-11
申请号:US17933563
申请日:2022-09-20
Applicant: Pure Storage, Inc.
Inventor: Ilya Volvovski , Bruno H. Cabral , Manish Motwani , Thomas D. Cocagne , Timothy W. Markison , Gary W. Grube , Wesley B. Leggette , Jason K. Resch , Michael C. Storm , Greg R. Dhuse , Yogesh R. Vedpathak , Ravi V. Khadiwala
IPC: G06F11/10 , G06F11/07 , G06F3/06 , H04L67/62 , H04L47/72 , G06F16/00 , H04L67/1097 , H04L47/28 , G06F9/50
Abstract: A processing system of a storage network operates by: sending, to at least one storage unit of the storage network, at least one read request corresponding to at least a read threshold number of a set of encoded data slices to be retrieved, wherein the set of encoded data slices correspond to a data segment, wherein the data segment is coded in accordance with dispersed error coding parameters that include a write threshold number and the read threshold number, wherein the write threshold number is a number of encoded data slices in the set of encoded data slices and wherein the read threshold number is a number of the set of slices that is required to decode the data segment; receiving, via the at least one processing circuit and from the at least one storage unit, a first subset of encoded data slices of the set of encoded data slices, wherein the first subset of encoded data slices is missing at least one missing encoded data slice that was not received from the at least one storage unit in response to the at least one read request and wherein the number of encoded data slices in the first subset of the encoded data slices is less than the read threshold number; generating, via the at least one processing circuit, at least one rebuilt encoded data slice corresponding to the at least one missing encoded data slice utilizing locally decodable redundancy data, wherein the locally decodable redundancy data generated from a second subset of the set of encoded data slices that includes the at least one missing encoded data slice; and recovering, via the at least one processing circuit, the data segment based on the at least one rebuilt encoded data slice and the first subset of encoded data slices.
-
公开(公告)号:US20230072456A1
公开(公告)日:2023-03-09
申请号:US18054992
申请日:2022-11-14
Applicant: Pure Storage, Inc.
Inventor: Gary W. Grube , Timothy W. Markison , S. Christopher Gladwin , Greg R. Dhuse , Andrew D. Baptist , Ilya Volvovski , Jason K. Resch
Abstract: A method includes dispersed storage error encoding a data object to produce a set of encoded data slices. The method further includes obtaining routing path performance information for a plurality of routing paths from the computing device to a set of storage units. The method further includes selecting a first routing path for sending a first subset of the set of encoded data slices, where the first routing path has a performance level greater than a first performance threshold. The method further includes selecting a second routing path for sending a second subset of the set of encoded data slices, where the second routing path has a performance level less than or equal to the first performance threshold. The method further includes sending the first and second subsets of encoded data slices to the set of storage units via the first and second routing paths for storage therein.
-
公开(公告)号:US11599419B2
公开(公告)日:2023-03-07
申请号:US17334168
申请日:2021-05-28
Applicant: Pure Storage, Inc.
Inventor: Greg R. Dhuse , Jason K. Resch , Andrew D. Baptist , Ilya Volvovski
IPC: G06F11/10 , H04L67/1097 , G06F3/06 , G06F16/23
Abstract: A method for execution by a computing device of a storage network includes obtaining storage performance information for a set of storage units of the storage network, where data segments are dispersed storage error encoded into pluralities of sets of encoded data slices in accordance with error encoding parameters that include a pillar width number and a decode threshold number, which is a number of encoded data slices the set of encode data slices is required to reconstruct a data segment of data segments. The method further includes determining, based on the storage performance information and the error encoding parameters, a performance threshold number for a write request to store a set of encoded data slices of the pluralities of sets of encoded data slices in the set of storage units, where the performance threshold number is greater than the decode threshold number and less than the pillar width number.
-
公开(公告)号:US20230027787A1
公开(公告)日:2023-01-26
申请号:US17937365
申请日:2022-09-30
Applicant: Pure Storage, Inc.
Inventor: S. Christopher Gladwin , Timothy W. Markison , Greg R. Dhuse , Thomas F. Shirley, JR. , Wesley B. Leggette , Jason K. Resch , Gary W. Grube
Abstract: Apparatus for tiered storage of data in a storage network. In an example of operation, a computing device receives a data object for storage and forwards the data object for storage in a first plurality of memory devices of a first memory type. The computing device determines a system level storage efficiency for the data object based, at least in part, on a data attribute associated with the data object. The computing device further selects, based at least in part on the system level storage efficiency preference, a second plurality of memory devices comprised of a second memory type. The computing device determines error encoding parameters based on the second plurality of memory devices, retrieves the data object from the first plurality of memory devices, and encodes the data object with the error encoding parameters to generate a plurality of encoded data slices for storage in the second plurality of memory devices.
-
公开(公告)号:US11556435B1
公开(公告)日:2023-01-17
申请号:US17248707
申请日:2021-02-03
Applicant: Pure Storage, Inc.
Inventor: Wesley B. Leggette , Andrew D. Baptist , Greg R. Dhuse , Jason K. Resch , Gary W. Grube , S. Christopher Gladwin
IPC: G06F7/02 , G06F16/00 , G06F11/16 , G06F11/10 , G06F16/16 , G06F16/23 , H03M13/37 , G06Q30/04 , H04L67/1097 , H03M13/15 , G06F3/06
Abstract: A method includes determining a change to storage parameters associated with storage of data objects in a storage network, where a data segment of the data objects is dispersed storage error encoded into a set of encoded data slices based on dispersed storage error encoding parameters, and where the set of encoded data slices is stored in the set of storage units. The method also includes determining a storage modification process for the set of encoded data slices based on the change to the storage parameters. The method also includes executing the storage modification process such that the set of encoded data slices are stored in the storage network in accordance with the changed storage parameters.
-
公开(公告)号:US11543964B1
公开(公告)日:2023-01-03
申请号:US17248885
申请日:2021-02-11
Applicant: Pure Storage, Inc.
Inventor: Jason K. Resch , Greg R. Dhuse
Abstract: A method includes determining whether an encoded data slice (EDS) of an “x” number of EDSs associated with a set of EDSs requires rebuilding, where the “x” number of EDSs is stored in a set of storage units of the storage network and the encoded data slice is stored in a first storage unit of the set of storage units. When the encoded data slice requires rebuilding, the method continues by identifying one of a “z” number of EDSs to replace the encoded data slice, where the “z” number of EDSs are not currently stored in the set of storage units. The method continues by constructing the one of the “z” number of EDSs from a decode threshold number of EDSs of the “x” number of EDSs and sending the one of the “z” number of EDSs to a second storage unit of the set of storage units.
-
公开(公告)号:US20220374311A1
公开(公告)日:2022-11-24
申请号:US17881667
申请日:2022-08-05
Applicant: Pure Storage, Inc.
Inventor: Jason K. Resch , Greg R. Dhuse
IPC: G06F11/10
Abstract: A method includes determining an encoded data slice of a first subset of encoded data slices associated with a set of encoded data slices requires rebuilding, where the first subset of encoded data slices is stored in a set of storage units and includes at least a decode threshold number of encoded data slices. The method further includes identifying a second encoded data slice of a second subset of encoded data slices of the set of encoded data slices, where the second subset of encoded data slices is not currently stored in the set of storage units. The method further includes generating the second encoded data slice from the first subset of encoded data slices and sending the second encoded data slice to the set of storage units, where when stored, the second encoded data slice no longer included in the second subset of encoded data slices.
-
公开(公告)号:US20220374162A1
公开(公告)日:2022-11-24
申请号:US17818067
申请日:2022-08-08
Applicant: Pure Storage, Inc.
Inventor: Jason K. Resch , Andrew D. Baptist , Niall J. McShane , Greg R. Dhuse , Thomas F. Shirley, JR. , Gregory Palinckx , Russell P. Kennedy , S. Christopher Gladwin , Robert C. McCammon , James Sherer
IPC: G06F3/06
Abstract: A processing system of a storage network operates by receiving a write request associated with a data object; identifying dispersed storage error encoding parameters; and determining a number of available storage units. When the number of available storage units is determined to exceed a first number, the processing system operates by: determining a first write threshold number in accordance with the dispersed storage error encoding parameters; dispersed error encoding the data object to produce a first write threshold number of encoded data slices; and writing, to available storage units, the first write threshold number of encoded data slices. When the number of available storage units is determined to not exceed the first number, the processing system operates by: determining a second write threshold number in accordance with the dispersed storage error encoding parameters associated, wherein the second write threshold number is less than the first write threshold number; dispersed error encoding the data object to produce a second write threshold number of encoded data slices; and writing, to the available storage units, the second write threshold number of encoded data slices.
-
公开(公告)号:US11507459B2
公开(公告)日:2022-11-22
申请号:US17408872
申请日:2021-08-23
Applicant: Pure Storage, Inc.
Inventor: Ahmad Alnafoosi , Andrew D. Baptist , Greg R. Dhuse , Jason K. Resch , Ilya Volvovski
IPC: G06F11/10 , G06F21/64 , H04L67/10 , H04L47/70 , G06F9/50 , H04L67/1097 , G06F3/06 , H04L67/61 , H04L43/0852 , H04L9/40
Abstract: A method for execution in a storage network begins by generating a set of query requests for each data segment of a plurality of data segments that includes a corresponding set of slice identifiers of a plurality of sets of slice identifiers, where each slice identifier of the corresponding set of slice identifiers includes a pillar index based on a vault affiliated with the plurality of data segments. The method continues by transmitting the set of query requests to a set of storage units affiliated with the storage network, receiving a plurality of sets of query responses from the storage units, obtaining a data identifier for slice location identification and generating a storage record that includes the data identifier and an identity of the set of storage units. The method then continues by facilitating migration of at least some encoded data slices associated with the plurality of sets of slice identifiers when the storage record compares unfavorably to a storage record requirement.
-
公开(公告)号:US20220365687A1
公开(公告)日:2022-11-17
申请号:US17816928
申请日:2022-08-02
Applicant: Pure Storage, Inc.
Inventor: Jason K. Resch , S. Christopher Gladwin , Kumar Abhijeet , Greg R. Dhuse
Abstract: A method includes determining, by a computing device of a plurality of computing devices of a storage network, a data processing plan for processing an access request based on a data type of the access request and one or more storage access requirements of the access request. The method further includes identifying two or more processing units of a plurality of processing units of the storage network based on the data processing plan. The method further includes determining processing capabilities of each of the two or more processing units. The method further includes selecting a processing unit of the two or more processing units to process the access request based on a favorable comparison of the processing capabilities of the processing unit and the data processing plan. The method further includes sending the access request to the processing unit.
-
-
-
-
-
-
-
-
-