-
公开(公告)号:US20250071100A1
公开(公告)日:2025-02-27
申请号:US18942265
申请日:2024-11-08
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: Methods and apparatus for efficient storage of a data object in a storage network. A method for execution by one or more processing modules of a storage network begins by receiving a store data request including a data object and a data identifier, and generating a source name for the data object. The method continues by determining whether the data object is already stored in memory of the storage network. In response to determining that the data object is already stored in the memory of the storage network, the method further includes identifying location information for the data object, storing the location information using the source name, and updating metadata for the data object to indicate that an additional copy of the data object is stored in the memory of the storage network.
-
2.
公开(公告)号:US12222959B2
公开(公告)日:2025-02-11
申请号:US18348498
申请日:2023-07-07
Applicant: Pure Storage, Inc.
Inventor: Asimuddin Kazi , Jason K. Resch
IPC: G06F16/27 , G06F3/06 , G06F11/10 , G06F16/178 , H04L67/00 , H04L67/1097
Abstract: A storage network operates by: encoding, via a dispersed error encoding, at least one data object as a write threshold number of encoded data slices; storing the write threshold number of the encoded data slices in a set of storage units of the storage network; determining when, due to a failure, less than a pillar width number of the encoded data slices are retrievable from the set of storage units: retrieving a decode threshold number of the encoded data slices from others of the set of storage units; decoding the decode threshold number of the encoded data slices to reproduce the at least one data object; restoring availability of the pillar width number of the encoded data slices of the common revision by: rebuilding at least a subset of encoded data slices of the set of encoded data slices, based on an encoding of the at least one data object; and storing the at least a subset of encoded data slices in the storage network.
-
公开(公告)号:US12164379B2
公开(公告)日:2024-12-10
申请号:US17931159
申请日:2022-09-12
Applicant: Pure Storage, Inc.
Inventor: Thomas D. Cocagne , Jason K. Resch , Ilya Volvovski
Abstract: A storage network operates by: storing at least one data object in the storage network as encoded data slices that are dispersed error encoded, the encoded data slices including locally decodable code segments; detecting at least one storage error associated with storage of at least one of the encoded data slices in the storage network; and recovering and at least one of the encoded data slices utilizing the locally decodable code segments.
-
公开(公告)号:US12164378B2
公开(公告)日:2024-12-10
申请号:US18153518
申请日:2023-01-12
Applicant: Pure Storage, Inc.
Inventor: Ravi V. Khadiwala , Yogesh R. Vedpathak , Jason K. Resch , Asimuddin Kazi
Abstract: A method for execution by one or more processing modules of a storage network begins by receiving an access request for a set of encoded data slices, where the data object is segmented into a plurality of data segments, a data segment of which is dispersed error encoded in accordance with dispersed error encoding parameters to produce the set of encoded data slices. The method continues by determining whether a revision for one or more encoded data slices in a first storage module is a most recent revision level for the one or more encoded data slices and when the one or more encoded data slices is a most recent revision level, determining whether the revision level for the one or more encoded data slices in a second storage module is the most recent revision level. When the one or more encoded data slices in the second storage module is not the most recent revision level the method continues by facilitating a read request to the first storage module for the one or more encoded data slices and synchronizing the one or more encoded data slices in the second storage module with the one or more encoded data slices in the first storage module.
-
公开(公告)号:US12141459B2
公开(公告)日:2024-11-12
申请号:US17661804
申请日:2022-05-03
Applicant: Pure Storage, Inc.
Inventor: Jason K. Resch , Wesley B. Leggette
Abstract: Methods and apparatus for storage pool tiering in a storage network. In an embodiment, a method includes receiving data for storage and storing the data in a first pool of storage units, the first pool of storage units associated with a first storage tier having a first access latency performance level. The method further includes initializing a frequency of access indicator corresponding to the stored data and determining, based at least in part on the frequency of access indicator, to move the stored data to a second pool of storage units associated with a second storage tier having a second access latency performance level, wherein the second access latency performance level corresponds to higher average access latency than the first access latency performance level. In response to determining to move the stored data to the second pool of storage units, the method further includes retrieving the data from the first pool of storage units and facilitating storage of the data in the second pool of storage units.
-
公开(公告)号:US12132783B2
公开(公告)日:2024-10-29
申请号:US17819386
申请日:2022-08-12
Applicant: Pure Storage, Inc.
Inventor: Wesley B. Leggette , Jason K. Resch , Yogesh R. Vedpathak , Sebastien Vas , Eric G. Smith , Adam M. Gray
IPC: H04L67/1097 , G06F3/06 , G06F11/10
CPC classification number: H04L67/1097 , G06F3/064 , G06F11/1076 , G06F11/1092 , G06F3/0604 , G06F3/0619 , G06F3/065 , G06F3/067 , G06F2211/1028
Abstract: A method for execution by a computing device of a storage network begins by receiving a write request for a data object, determining a plurality of data regions for the data object, determining storage identification information for each data region of the plurality of data regions and generating a storage table for the data object that includes information sufficient to identify each data region of the plurality of data regions. For a first data region of the plurality of data regions the method continues by dividing the first data region into a plurality of data segments, and dispersed error encoding the plurality of data segments to produce a plurality of sets of encoded data slices. The method then continues by sending a write request for each encoded data slice of each set of encoded data slices of the plurality of sets of encoded data slices to the storage network, and when at least a write threshold number of write responses is received for each of the plurality of sets of encoded data slices the method ends by updating the storage table to indicate that the first data region is available for retrieval.
-
公开(公告)号:US12120127B1
公开(公告)日:2024-10-15
申请号:US17087786
申请日:2020-11-03
Applicant: Pure Storage, Inc.
Inventor: Gary W. Grube , Jason K. Resch
IPC: H04L9/40 , G06F3/06 , G06F11/00 , G06F11/08 , G06F11/10 , G06F16/182 , G06F21/62 , H04L12/64 , H04L67/1097
CPC classification number: H04L63/108 , G06F3/061 , G06F3/0619 , G06F3/0635 , G06F3/064 , G06F3/0659 , G06F3/067 , G06F11/00 , G06F11/1096 , G06F16/182 , G06F21/62 , H04L63/20 , H04L67/1097 , G06F11/08 , G06F2211/1028 , G06F2221/2137 , G06F2221/2141 , H04L2012/6467
Abstract: A method for execution by a processing system of a storage network includes: generating encoded data slices based on a dispersed error encoding of at least one data object; receiving an access policy associated with the at least one data object; determining a timestamp corresponding to a current time; and storing the encoded data slices, an indicator of the time stamp and an indicator of the access policy in a storage unit of the storage network.
-
公开(公告)号:US20240314087A1
公开(公告)日:2024-09-19
申请号:US18668356
申请日:2024-05-20
Applicant: Pure Storage, Inc.
Inventor: Jason K. Resch , Greg R. Dhuse , Manish Motwani , Andrew D. Baptist , Wesley B. Leggette
IPC: H04L47/70 , G06F3/06 , H04L67/1097
CPC classification number: H04L47/70 , G06F3/0616 , G06F3/0623 , G06F3/0647 , G06F3/067 , G06F3/0685 , H04L67/1097
Abstract: Methods and apparatus for identifying multiple resources of a storage network for data retrieval are disclosed. In various embodiments, a determination is made to retrieve an encoded data slice from the storage network. Based on configuration information for the storage network, one or more configurations are identified, including a current configuration. For the identified configurations, ranked scoring information relating to the encoded data slice is determined for a plurality of resources associated with the identified configurations. Based on the ranked scoring information, a resource is selected for each of the identified configurations. In addition, a retrieval likelihood level for the data slice is determined for each of the selected resources. Based on the likelihood levels for the selected resources, one or more of the selected resources are identified for encoded data slice retrieval and read slice requests are issued to the one or more selected resources.
-
公开(公告)号:US20240211465A1
公开(公告)日:2024-06-27
申请号:US18596914
申请日:2024-03-06
Applicant: Pure Storage, Inc.
Inventor: Greg R. Dhuse , Jason K. Resch
IPC: G06F16/23 , G06F3/06 , G06F11/10 , G06F16/11 , G06F16/13 , G06F16/182 , G06F16/21 , G06F16/22 , G06F16/901 , H04L9/06 , H04L9/32
CPC classification number: G06F16/2365 , G06F3/06 , G06F3/0619 , G06F3/0647 , G06F3/0679 , G06F11/1076 , G06F11/1084 , G06F16/119 , G06F16/137 , G06F16/1844 , G06F16/214 , G06F16/2255 , G06F16/235 , G06F16/9027 , H04L9/0643 , H04L9/3236
Abstract: A storage network operates by: sending a slice verification request to a destination storage unit, wherein the slice verification request includes a nonce and one or more of: a slice identifier, the slice, a revision indicator, or a verification method indicator; receiving an integrity value from the destination storage unit; determining when the integrity value is verified by determining one of: when a hash of the slice and the nonce matches the integrity value; when a decrypted signature of the integrity value matches a hash of the slice and the nonce; or when the decrypted signature of the integrity value matches the slice and the nonce; and when the integrity value is verified, updating a slice assignment corresponding to the slice, wherein updating the slice assignment associates the destination storage unit with the slice and disassociates the source storage unit from the slice.
-
公开(公告)号:US20240184654A1
公开(公告)日:2024-06-06
申请号:US18398361
申请日:2023-12-28
Applicant: Pure Storage, Inc.
Inventor: Thomas D. Cocagne , Asimuddin Kazi , Jason K. Resch
IPC: G06F11/00 , G06F11/07 , G06F11/10 , H04L41/0806 , H04L67/1097
CPC classification number: G06F11/008 , G06F11/0727 , G06F11/1092 , H04L41/0806 , H04L67/1097 , G06F2211/1028
Abstract: Methods and apparatus for maintaining availability of critical information in a storage network that includes a plurality of storage units. In an embodiment, a processing module(s) of the storage network identifies critical information stored in one or more memory devices of a computing device. Critical information can include, for example, information required for operation of one or more storage units to perform data access operations. The processing module obtains the critical information from the one or more memory devices, and dispersed storage error encodes the critical information to produce one or more sets of encoded critical slices. The processing module further selects a set of storage units of the storage network and facilitates storage of the one or more sets of encoded critical slices in the selected set of storage units.
-
-
-
-
-
-
-
-
-