-
公开(公告)号: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.
-
公开(公告)号: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.
-
公开(公告)号:US11960361B2
公开(公告)日:2024-04-16
申请号:US18048604
申请日:2022-10-21
Applicant: Pure Storage, Inc.
Inventor: Ahmad Alnafoosi , Andrew D. Baptist , Greg R. Dhuse , Jason K. Resch , Ilya Volvovski
IPC: G06F11/10 , G06F3/06 , G06F9/50 , G06F16/215 , G06F21/64 , H04L43/0852 , H04L47/70 , H04L67/10 , H04L67/1097 , H04L67/61 , H04L9/40
CPC classification number: G06F11/1092 , G06F3/0619 , G06F3/064 , G06F3/0659 , G06F3/067 , G06F9/5027 , G06F11/1076 , G06F11/108 , G06F16/215 , G06F21/64 , H04L43/0852 , H04L47/70 , H04L67/10 , H04L67/1097 , H04L67/61 , H04L63/08 , H04L63/101
Abstract: A method for execution by a storage network includes receiving a request pertaining to a data object. Metadata associated with the data object is determined and used to identify data segments associated with the data object and a set of storage units associated with the data segments. Based on a set of query requests, a response is received from a storage unit from the set of storage units. When the response indicates a storage environment that is unfavorable as compared to predetermined performance metrics, the storage network facilitates migration of encoded data slices associated with the storage unit to another storage unit.
-
公开(公告)号:US11815998B2
公开(公告)日:2023-11-14
申请号: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
CPC classification number: G06F11/1076 , G06F3/064 , G06F3/067 , G06F3/0619
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.
-
公开(公告)号:US20230280911A1
公开(公告)日:2023-09-07
申请号:US18314257
申请日:2023-05-09
Applicant: Pure Storage, Inc.
Inventor: Gary W. Grube , Jason K. Resch , Timothy W. Markison , Ilya Volvovski , Manish Motwani
CPC classification number: G06F3/0619 , G06F3/0679 , G06F3/0647 , G06F3/067 , G06F12/0223 , G06F11/1076
Abstract: A method for managing memory in a storage network begins by monitoring a service life indicator for a plurality of solid-state memory devices in the storage network and determining whether a memory device of the plurality of solid-state memory devices is approaching an end-of-life event, where end-of-life event is based on a predetermined service life. When the memory device is approaching an end-of-life event the method continues by determining whether to migrate one or more encoded data slices from the memory device to an alternative memory device and based on a decision to migrate the one or more encoded data slices, selecting a migration scheme from a plurality of migration schemes for migrating the one or more encoded data slices. Finally, the method continues by facilitating migrating the one or more encoded data slices according to the selected migration scheme.
-
公开(公告)号:US20230236741A1
公开(公告)日:2023-07-27
申请号:US18192335
申请日:2023-03-29
Applicant: Pure Storage, Inc.
Inventor: Greg R. Dhuse , Jason K. Resch , Ilya Volvovski , Ethan S. Wozniak
CPC classification number: G06F3/0619 , G06F3/0689 , G06F3/0665 , G06F11/3034 , G06F11/3409 , G06F3/061 , G06F3/0635 , H03M13/3761 , G06F3/0622 , G06F3/0637 , G06F3/0659 , G06F3/067 , G06F11/1076 , G06F3/064 , G06F3/0644 , G06F12/1408 , H04L67/1097 , G06F3/0611 , G06F11/1092 , G06F2212/1052 , H03M13/1515
Abstract: A storage network processing system includes a processor, a network interface and memory that stores operational instructions. The operation instructions enable the processor to receive a data object for storage and dispersed error encode the data object in accordance with dispersed error encoding parameters to produce a plurality of encoded data slices. The operation instructions further enable the processor to generate to determine a plurality of site slice sets from the plurality of encoded data slices, where each site slice set of the plurality of site slice sets includes a number of unique encoded data slices of the plurality of encoded data slices that is greater than or equal to a site write threshold value. The operation instructions further enable the processor to a designate one of a plurality of storage sites for each of the plurality of site slice sets and transmit each of the plurality of site slice sets to a corresponding designated one of the plurality of storage sites via the network.
-
公开(公告)号:US20230205630A1
公开(公告)日:2023-06-29
申请号: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
CPC classification number: G06F11/1076 , G06F11/0709 , G06F11/0775 , H04L67/1097 , G06F16/00 , G06F3/0635 , G06F3/067 , G06F3/061 , G06F3/0659 , H04L47/72 , G06F11/0727 , H04L67/62 , 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.
-
公开(公告)号:US20230026842A1
公开(公告)日:2023-01-26
申请号:US17937380
申请日:2022-09-30
Applicant: Pure Storage, Inc.
Inventor: Asimuddin Kazi , Andrew D. Baptist , Wesley B. Leggette , Manish Motwani , Ilya Volvovski
IPC: G06F3/06
Abstract: Methods and apparatus for redirecting data access requests in a storage network are disclosed. In an embodiment, a computing device associated with the storage network performs a method that includes identifying a (second) storage pool of the storage network to replace a first storage pool of the storage network. The method includes issuing a migration message to at least one of the first storage pool or the second storage pool. The migration message initiates a replication of data from the first storage pool to the second storage pool. The method further includes receiving a write data request for the first storage pool prior to completion of the replication of the data, and forwarding the write data request to the second storage pool for further processing.
-
公开(公告)号:US20230009883A1
公开(公告)日:2023-01-12
申请号: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
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.
-
公开(公告)号:US20220327103A1
公开(公告)日:2022-10-13
申请号:US17809796
申请日:2022-06-29
Applicant: Pure Storage, Inc.
Inventor: Greg R. Dhuse , Ilya Volvovski , Adam M. Gray , Andrew D. Baptist
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.
-
-
-
-
-
-
-
-
-