-
公开(公告)号:US12197768B2
公开(公告)日:2025-01-14
申请号: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
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.
-
公开(公告)号:US12170717B2
公开(公告)日:2024-12-17
申请号:US18366861
申请日:2023-08-08
Applicant: Pure Storage, Inc.
Inventor: Jason K. Resch , Greg R. Dhuse , Bart R. Cilfone
IPC: G06F15/167 , G06F21/31 , G06F21/60 , G06F21/62 , H04L9/00 , H04L9/08 , H04L9/32 , H04L9/40 , H04L67/1097 , H04L67/50
Abstract: A method for execution in a storage network begins by performing a key derivation function on a password to produce a key and issuing a set of passwords based on the key to a set of storage units, where a data object is dispersed error encoded in accordance with dispersed error encoding parameters to produce a set of encoded data slices and the set of encoded data slices are stored in the set of storage units. The method continues, by receiving at least a decode threshold number of confidential information responses from the set of storage units and regenerating a set of keys for the confidential information responses. The method then continues by decrypting the confidential information responses using the set of keys to reproduce a set of encoded data slices and dispersed storage error decoding a decode threshold number of the set of encoded data slices to produce recovered data.
-
公开(公告)号:US20240338352A9
公开(公告)日:2024-10-10
申请号:US17809796
申请日:2022-06-29
Applicant: Pure Storage, Inc.
Inventor: Greg R. Dhuse , Ilya Volvovski , Adam M. Gray , Andrew D. Baptist
CPC classification number: G06F16/2272 , G06F11/1096 , G06F16/22 , G06F16/221 , G06F16/2219 , G06F16/2237 , G06F11/1092
Abstract: A method begins with a processing module of a distributed storage network (DSN), receiving a request to access a data object stored in the DSN and identifying a first data descriptor associated with the data object, identifying a second data descriptor associated with the data object, identifying a first data index key and a first index structure for the first data descriptor and identifying a second data index key and a second index structure for the second data descriptor. The method continues with the processing module accessing the first index structure for the first data descriptor , based on the first and second data index keys, to retrieve a first and second set of data identifiers, respectively and based on one or more data identifiers being common to the first set of data identifiers and the second set of data identifiers, creating a superset of data identifiers.
-
公开(公告)号:US12079083B2
公开(公告)日:2024-09-03
申请号:US18175143
申请日:2023-02-27
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 , G06F3/06 , G06F11/07 , G06F16/00 , H04L47/72 , H04L67/1097 , H04L67/62 , G06F9/50 , H04L47/28
CPC classification number: G06F11/1076 , G06F3/061 , G06F3/0635 , G06F3/0659 , G06F3/067 , G06F11/0709 , G06F11/0727 , G06F11/0775 , G06F16/00 , H04L47/72 , H04L67/1097 , H04L67/62 , G06F9/50 , G06F9/5005 , G06F9/5077 , G06F2211/1004 , G06F2211/1028 , H04L47/28
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 data, wherein the data 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 encoded data slices that is required to decode the data; receiving, via the at least one processing circuit and from the at least one storage unit, a first subset of the set of encoded data slices, wherein the first subset 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 a number of encoded data slices in the first subset 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 based on the at least one rebuilt encoded data slice and the first subset.
-
公开(公告)号:US20240094934A1
公开(公告)日:2024-03-21
申请号:US18519681
申请日:2023-11-27
Applicant: Pure Storage, Inc.
Inventor: Ethan S. Wozniak , Andrew D. Baptist , Greg R. Dhuse , Ilya Volvovski , Jason K. Resch , Ravi V. Khadiwala , Wesley B. Leggette
IPC: G06F3/06
CPC classification number: G06F3/0644 , G06F3/0619 , G06F3/0631 , G06F3/0659 , G06F3/067 , G06F3/0688
Abstract: A processing system is operable to encode data to produce a first set of data slices based on a value of a width parameter. The data is stored based on maintaining storage of the first set of data slices across a set of storage units of a storage pool. Storage of the first set of data slices is maintained in the set of storage units of the storage pool after addition of an additional set of storage units added to the storage pool. The value of the width parameter is increased to an increased value to produce an updated width parameter. The data is re-encoded in accordance with the updated width parameter to produce a second set of data slices. The data is re-stored based on maintaining storage of the second set of data slices across the expanded set of storage units of the storage pool.
-
公开(公告)号:US20240078154A1
公开(公告)日:2024-03-07
申请号:US18499319
申请日:2023-11-01
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
CPC classification number: G06F11/1076 , G06F3/0619 , G06F3/064 , G06F3/067
Abstract: A method for execution by one or more computing devices includes selecting a first routing path from a plurality of routing paths to a set of storage units based on routing path performance information, where the first routing path has a performance level greater than a first performance threshold. The method further includes selecting a second routing path from the plurality of routing paths based on the routing path performance information, where the second routing path has a performance level less than or equal to the first performance threshold. The method further includes sending a first subset of encoded data slices to the set of storage units via the first routing path for storage therein. The method further includes sending a second subset of encoded data slices to the set of storage units via the second routing path for storage therein.
-
公开(公告)号:US11870916B2
公开(公告)日:2024-01-09
申请号:US18104382
申请日:2023-02-01
Applicant: Pure Storage, Inc.
Inventor: Jason K. Resch , Greg R. Dhuse
IPC: G06F12/00 , H04L9/32 , H04L67/1097 , H04L9/08
CPC classification number: H04L9/3263 , H04L9/0825 , H04L9/3247 , H04L67/1097
Abstract: A method for use in a distributed storage network including a distributed storage network (DSN) memory, which in turn includes multiple storage units, includes determining storage parameters associated with error-encoded data slices generated from data to be stored in the DSN memory. The storage parameters include information indicating a read-threshold number of error-encoded data slices required to recover the data. The method further includes distributedly storing the error-encoded data slices among the plurality of storage units so that the number of the error-encoded data slices stored in any particular storage unit is chosen so that in the event of a failure of any individual storage unit, at least a read-threshold number of error-encoded data slices are still accessible from the remaining storage units.
-
公开(公告)号:US20230273858A1
公开(公告)日:2023-08-31
申请号:US18314430
申请日:2023-05-09
Applicant: Pure Storage, Inc.
Inventor: Greg R. Dhuse , Jason K. Resch
IPC: G06F11/10 , H04L9/40 , G06F3/06 , H04L67/1097 , H04L9/08
CPC classification number: G06F11/1076 , H04L63/06 , G06F3/067 , G06F3/064 , H04L67/1097 , H04L63/0428 , H04L9/0861 , G06F3/0619 , G06F3/0611 , G06F3/0635 , H04L9/0894 , H04L63/0435 , H04L2463/061 , H04L9/0822 , H04W12/04
Abstract: A computing device for use in a storage network includes one or more network interfaces, memory with operational instructions and a processing module. The processing module is configured to execute the operational instructions receive a storage request for data and select a plurality of memory devices for storage of the data. The processing module partitions the data into a plurality of chunk sets and encode each chunk set of the plurality of chunk sets according to a dispersed storage error coded function to produce a plurality of chunks. Finally, the processing module facilitates storage of each chunk of the plurality of chunks in a memory device of the plurality of memory devices.
-
公开(公告)号:US11740972B1
公开(公告)日:2023-08-29
申请号:US17085170
申请日:2020-10-30
Applicant: Pure Storage, Inc.
Inventor: Ravi V. Khadiwala , Greg R. Dhuse , Manish Motwani , Jason K. Resch , Ilya Volvovski
IPC: G06F11/10 , G06F3/06 , H04L67/1097 , H03M13/37 , H04L43/0876 , H03M13/15 , H04L43/0864 , H04L43/16 , H04L67/1008 , G06F11/20
CPC classification number: G06F11/1092 , G06F3/061 , G06F3/064 , G06F3/0604 , G06F3/067 , G06F3/0611 , G06F3/0619 , G06F3/0635 , G06F3/0659 , G06F3/0665 , G06F3/0689 , G06F11/2094 , H03M13/1515 , H03M13/3761 , H04L43/0864 , H04L43/0876 , H04L43/16 , H04L67/1008 , H04L67/1097 , G06F2201/805
Abstract: Methods and apparatus for use in a storage network operate by: storing, in a first storage unit of a first set of storage units of the storage network, a first encoded data slice corresponding to at least one data object; assigning one or more additional storage units to the storage network to form a second set of storage units, the second set of storage units including the one or more additional storage units; migrating the first encoded data slice from the first storage unit to at least one of the one or more additional storage units of the second set of storage units; and reallocating a mapping of the first encoded data slice from the first storage unit to the at least one of the one or more additional storage units of the second set of storage units.
-
公开(公告)号:US20230267042A1
公开(公告)日:2023-08-24
申请号:US18141453
申请日:2023-04-30
Applicant: Pure Storage, Inc.
Inventor: Thomas F. Shirley, JR. , Ilya Volvovski , Manish Motwani , Andrew D. Baptist , Wesley B. Leggette , Jason K. Resch , Greg R. Dhuse
CPC classification number: G06F11/1076 , G06F3/0619 , G06F3/064 , G06F3/0644 , G06F3/067 , G06F11/1092 , H03M13/05 , H03M13/3761 , H03M13/611 , H03M13/1515
Abstract: A method includes retrieving an encoded data slice from memory of a storage network, where the encoded data slice is associated with a slice integrity value stored in the memory, and where a data segment of data is error encoded into a set of encoded data slices that includes the encoded data slice. The method further includes generating a second slice integrity value based on the retrieved encoded data slice. The method further includes determining whether the second slice integrity value compares favorably to the slice integrity value. When the second slice integrity value compares unfavorably to the slice integrity value, the method further includes facilitating rebuilding of the encoded data slice to produce a rebuilt encoded data slice. The method further includes storing the rebuilt encoded data slice in the memory.
-
-
-
-
-
-
-
-
-