-
公开(公告)号:US20240427665A1
公开(公告)日:2024-12-26
申请号:US18823168
申请日:2024-09-03
Applicant: Pure Storage, Inc.
Inventor: Andrew Baptist , Wesley Leggette , Jason K. Resch , Manish Motwani , John Quigley
IPC: G06F11/10 , G06F3/06 , H04L67/1097 , H04L69/00 , H04L69/22
Abstract: A method for execution by one or more computing devices of a storage network includes determining an error condition associated with storage of a current version of a data object that is stored in a set of storage units of the storage network and is stored as a previous version of the data object. The method further includes sending a rollback transaction request message to at least some storage units of the set of storage units, where the at least some storage units are associated with the error condition, and where the rollback transaction request message instructs the at least some storage units to promote the previous version to be a new current version of the data object such that the new current version of the data object is accessible in the storage network.
-
公开(公告)号:US20240419545A1
公开(公告)日:2024-12-19
申请号:US18814815
申请日:2024-08-26
Applicant: Pure Storage, Inc.
Inventor: Harsha Hegde , Ravi V. Khadiwala , Manish Motwani
IPC: G06F11/10 , G06F3/06 , G06F9/48 , G06F9/50 , G06F11/14 , G06F12/0866 , G06F12/0891 , G06F15/173 , H03M13/00 , H03M13/11 , H03M13/15 , H03M13/37 , H04L9/40 , H04L61/45 , H04L67/1097 , H04L101/604
Abstract: A method for execution in a storage network begins with a storage network entity receiving a write request for a data object, where the data object is dispersed error encoded in accordance with dispersed error encoding parameters to produce a plurality of sets of encoded data slices. The method continues with the storage network entity determining whether to store a plurality of copies of the data object; and in response to a decision to store a plurality of copies of the data object, determining a plurality of vaults for storage of the data object. The method then continues by identifying a multicast IP address associated with the plurality vaults for storage of the plurality of copies. The method then continues by generating a multicast IP message to a plurality of storage units associated with each vault of the plurality of vaults, where the storage units of the plurality of storage units are configured to determine a multicast IP address from the multicast IP message. Finally, the method continues by facilitating storage of the plurality of copies of the data object in the plurality of vaults.
-
公开(公告)号:US20240411643A1
公开(公告)日:2024-12-12
申请号:US18809965
申请日:2024-08-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 , G06F3/06 , G06F9/50 , G06F11/07 , G06F16/00 , H04L47/28 , H04L47/72 , H04L67/1097 , H04L67/62
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, at 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 at least one missing encoded data slice was not included in the first subset 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 corresponds to a second subset of the set of encoded data slices that includes the at least one missing encoded data slice and wherein the locally decodable redundancy data is stored locally to the processing circuit; 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.
-
公开(公告)号:US12143373B2
公开(公告)日:2024-11-12
申请号:US17380227
申请日:2021-07-20
Applicant: Pure Storage, Inc.
Inventor: Ilya Volvovski , S. Christopher Gladwin , Gary W. Grube , Timothy W. Markison , Jason K. Resch , Thomas Franklin Shirley, Jr. , Greg Dhuse , Manish Motwani , Andrew Baptist , Wesley Leggette
Abstract: A data segment is encrypted to produce an encrypted data segment, and a data tag associated with the data segment is generated. The encrypted data segment is encoded to generate a set of encoded data slices. At least a read-threshold number of encoded data slices are required to reconstruct the encrypted data segment. A set of write slice requests, which includes the set of encoded data slices and the data tag, is transmitted to a DSN memory. A determination is made, based on the data tag, whether a first encoded data slice of the set of encoded data slices is a duplicate of a second encoded data slice already stored within the DSN memory. If it is a duplicate, rather of storing the first encoded data slice, a reference to a location of the second encoded data slice is stored.
-
公开(公告)号:US12026057B2
公开(公告)日:2024-07-02
申请号:US18141451
申请日:2023-04-30
Applicant: Pure Storage, Inc.
Inventor: Ravi V. Khadiwala , Wesley B. Leggette , Andrew D. Baptist , Greg R. Dhuse , Ilya Volvovski , Jason K. Resch , Manish Motwani
IPC: G06F11/14 , G06F3/06 , G06F11/10 , H03M13/35 , H04L67/1097
CPC classification number: G06F11/1435 , G06F3/0619 , G06F3/064 , G06F3/067 , G06F11/1076 , H03M13/353 , H04L67/1097 , G06F2211/1028
Abstract: A method includes determining an information dispersal algorithm width number and determining a number of primary storage slots from a number of storage slots associated with a set of storage units deployed across multiple sites, where the number of primary storage slots is equal to or greater than the information dispersal algorithm width number. The method further includes determining a mapping of primary storage slots to storage units. The method further includes sending configuration information to the set of storage units that includes the mapping. The method further includes storing a set of encoded data slices in the primary storage slots in accordance with the configuration information, where a data segment is error encoded into the set of encoded data slices in accordance with the information dispersal algorithm width number and a decode threshold number, which is a number of encoded data slices are needed to reconstruct the data segment.
-
6.
公开(公告)号:US11818089B1
公开(公告)日:2023-11-14
申请号:US17184193
申请日:2021-02-24
Applicant: Pure Storage, Inc.
Inventor: Wesley B. Leggette , Andrew D. Baptist , Greg R. Dhuse , Jason K. Resch , Ilya Volvovski , Manish Motwani , S. Christopher Gladwin , Gary W. Grube , Thomas F. Shirley, Jr.
CPC classification number: H04L51/42 , G06F9/4881 , G06F9/5083
Abstract: A method for execution in a storage network includes receiving a request pertaining to a data object, where the request is related to a specified contiguous data range within the data object and the data object is dispersed error encoded to produce a plurality of groups of encoded data slices. The method continues by converting the request into a plurality of partial requests, where each partial request of the plurality of partial requests includes at least one partial task and transmitting each partial request of the plurality of partial requests to a storage unit of a set of storage units. The method then continues by determining when a partial request response has been received for each partial request of the plurality of partial requests and when a partial request response has been received for each partial request of the plurality of partial requests, transmitting an indication that the request pertaining to the data object has been successfully executed.
-
公开(公告)号:US20230259427A1
公开(公告)日:2023-08-17
申请号:US18141451
申请日:2023-04-30
Applicant: Pure Storage, Inc.
Inventor: Ravi V. Khadiwala , Wesley B. Leggette , Andrew D. Baptist , Greg R. Dhuse , Ilya Volvovski , Jason K. Resch , Manish Motwani
IPC: G06F11/14 , H04L67/1097 , H03M13/35 , G06F3/06 , G06F11/10
CPC classification number: G06F11/1435 , H04L67/1097 , H03M13/353 , G06F3/064 , G06F3/0619 , G06F11/1076 , G06F3/067 , G06F2211/1028
Abstract: A method includes determining an information dispersal algorithm width number and determining a number of primary storage slots from a number of storage slots associated with a set of storage units deployed across multiple sites, where the number of primary storage slots is equal to or greater than the information dispersal algorithm width number. The method further includes determining a mapping of primary storage slots to storage units. The method further includes sending configuration information to the set of storage units that includes the mapping. The method further includes storing a set of encoded data slices in the primary storage slots in accordance with the configuration information, where a data segment is error encoded into the set of encoded data slices in accordance with the information dispersal algorithm width number and a decode threshold number, which is a number of encoded data slices are needed to reconstruct the data segment.
-
公开(公告)号:US11662915B2
公开(公告)日:2023-05-30
申请号:US17356838
申请日:2021-06-24
Applicant: Pure Storage, Inc.
Inventor: Gary W. Grube , Jason K. Resch , Timothy W. Markison , Ilya Volvovski , Manish Motwani
CPC classification number: G06F3/0619 , G06F3/067 , G06F3/0647 , G06F3/0679 , G06F12/0223 , G06F11/1076
Abstract: A method begins by a processing module of a storage network analyzing storage network memory for a level of usability and based on the analyzing, selecting alternative memory available for receipt of encoded data slices stored in current memory, where a data object is segmented into a plurality of data segments and a data segment of the plurality of data segments is dispersed error encoded in accordance with dispersed error encoding parameters to produce a set of encoded data slices. The method continues with the processing module determining whether to move encoded data slices from current memory to alternative memory and based on a determination to move slices, allocating alternative memory. Finally, the processing module moves at least some encoded data slices from a current memory to alternate memory and updates a memory assignment mechanism for the at least some encoded data slices.
-
公开(公告)号:US20210318811A1
公开(公告)日:2021-10-14
申请号:US17356838
申请日:2021-06-24
Applicant: Pure Storage, Inc.
Inventor: Gary W. Grube , Jason K. Resch , Timothy W. Markison , Ilya Volvovski , Manish Motwani
Abstract: A method begins by a processing module of a storage network analyzing storage network memory for a level of usability and based on the analyzing, selecting alternative memory available for receipt of encoded data slices stored in current memory, where a data object is segmented into a plurality of data segments and a data segment of the plurality of data segments is dispersed error encoded in accordance with dispersed error encoding parameters to produce a set of encoded data slices. The method continues with the processing module determining whether to move encoded data slices from current memory to alternative memory and based on a determination to move slices, allocating alternative memory. Finally, the processing module moves at least some encoded data slices from a current memory to alternate memory and updates a memory assignment mechanism for the at least some encoded data slices.
-
公开(公告)号:US10831600B1
公开(公告)日:2020-11-10
申请号:US16854010
申请日:2020-04-21
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/16 , G06F9/50 , G06F11/10 , G06F3/06 , H04L29/08 , G06F11/07 , G06F16/00 , H04L12/911 , H04L12/841
Abstract: A method for execution by a dispersed storage and task (DST) execution unit includes identifying a plurality of pending operations. A resource availability level to support execution of at least one of the plurality of pending operations is determined, and a required resource level to execute the at least one of the plurality of pending operations is determined. A balance factor between at least two types of the plurality of pending operations is determined based on the resource availability level and the required resource level. Determination of required timing of the execution of the at least one of the plurality of pending operations is coordinated with at least one other DST execution unit. An operation execution schedule is updated based on the required resource levels, the resource availability level, the balance factor, and the required timing of the execution.
-
-
-
-
-
-
-
-
-