-
公开(公告)号: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.
-
公开(公告)号:US20220171573A1
公开(公告)日:2022-06-02
申请号:US17651379
申请日:2022-02-16
Applicant: Pure Storage, Inc.
Inventor: Jason K. Resch , Wesley B. Leggette , Manish Motwani
Abstract: A method for execution by a computing device includes changing a decentralized agreement protocol (DAP) of a storage network to a new DAP, where storage units of the storage network store encoded data slices. The method further includes performing, based on the changing, a DAP redistribution operation that is associated with transfer of affected ones of the encoded data slices from at least one storage unit to at least one other storage unit. The method further includes maintaining, based on the changing, at least one source name address map that includes a listing of source names in accordance with storage network addresses for the at least one storage unit. The method further includes updating the at least one source name address map based on performance of the transfer of the affected ones and storing the updated at least one source name address map in a memory of the storage network.
-
公开(公告)号:US11073993B1
公开(公告)日:2021-07-27
申请号:US16885602
申请日:2020-05-28
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 determining a priority access level of an encoded data slice stored on a memory device. The method continues by determining a memory status for the memory device, wherein the memory status includes a plurality of discrete usability levels with a highest usability level representing a maximum amount of usable memory, a second usability level representing a lower usability level than the highest usability level and a lowest usability level representing an unusable level when the usable memory is below a threshold. The method continues with the processing module determining whether to migrate the encoded data slice from the memory device based on the priority access level and the memory status. The method continues with the processing module identifying another memory device. The method continues with the processing module facilitating migration of the encoded data slice to another memory device.
-
公开(公告)号:US20240311251A1
公开(公告)日:2024-09-19
申请号:US18679623
申请日:2024-05-31
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 for execution by one or more computing devices of a storage network includes dispersed storage error encoding a data segment of data into a set of encoded data slices in accordance with an information dispersal algorithm width number and a decode threshold number, where the decode threshold number of encoded data slices of the set of encoded data slices are needed to reconstruct the data segment. The method further includes storing the set of encoded data slices in primary storage slots of a set of storage units deployed across multiple sites of the storage network in accordance with a mapping of the primary storage slots to storage units of the set of storage units, where a number of the primary storage slots is equal to or greater than the information dispersal algorithm width number.
-
公开(公告)号:US20240195436A1
公开(公告)日:2024-06-13
申请号:US18444980
申请日:2024-02-19
Applicant: Pure Storage, Inc.
Inventor: Dustin M. Hendrickson , Manish Motwani
CPC classification number: H03M13/1515 , G06F3/0608 , G06F3/0619 , G06F3/0644 , G06F3/0652 , G06F3/0659 , G06F3/067 , G06F11/1092 , G06F11/2094 , H04L9/085 , H04L9/0894 , H04L67/535 , H04L69/40 , G06F2201/805 , G06F2211/1028 , H04L2209/34
Abstract: A method for a distributed storage network begins by selecting a plurality of memory elements for utilization analysis, where the memory elements are configured to store a data object that is dispersed error encoded to produce sets of encoded data slices. The method continues by determining, based on the utilization analysis, a relative utilization for each memory element and in response to the relative utilization for each memory element, determining whether to migrate encoded data slices from a first memory element to a second memory element. In response to a determination to migrate the encoded data slices from the first memory element to the second memory element, the method continues by providing a monitoring structure to track migration of the one or more encoded data slices and migrating the encoded data slices from the first memory element to the second memory element and updating a lookup table associated with the one or more encoded data slices.
-
公开(公告)号:US11991089B2
公开(公告)日:2024-05-21
申请号:US17814022
申请日:2022-07-21
Applicant: Pure Storage, Inc.
Inventor: Wesley B. Leggette , Jason K. Resch , Manish Motwani , Ilya Volvovski
IPC: G06F15/167 , G06F3/06 , H04L47/70 , H04L67/1097
CPC classification number: H04L47/70 , G06F3/0616 , G06F3/0623 , G06F3/0647 , G06F3/067 , G06F3/0685 , H04L67/1097
Abstract: Methods and apparatus for proxying data access requests in a storage network are disclosed. In various embodiments, a computing device associated with a first storage location of the storage network performs a method that includes receiving a portion of data that is in the process of being replicated from a second storage location of the storage network. The computing device facilitates storage of the portion of data in the first storage location of the storage network. In response to receiving a read request for the portion of data during the data replication process, the computing device determines whether the portion of data is available from memory of the first storage location. In response to determining that the portion of data is available from memory of the first storage location, the computing device issues a read response that includes the portion of data.
-
公开(公告)号:US20230342250A1
公开(公告)日:2023-10-26
申请号:US18347694
申请日:2023-07-06
Applicant: Pure Storage, Inc.
Inventor: Ravi V. Khadiwala , Greg R. Dhuse , Manish Motwani , Jason K. Resch , Ilya Volvovski
IPC: G06F11/10 , G06F3/06 , H03M13/15 , H04L43/16 , H03M13/37 , H04L67/1008 , H04L67/1097 , H04L43/0864 , H04L43/0876 , G06F11/20
CPC classification number: G06F11/1092 , G06F3/0665 , H03M13/1515 , H04L43/16 , G06F3/0619 , G06F3/067 , G06F3/0611 , H03M13/3761 , H04L67/1008 , H04L67/1097 , G06F3/0604 , G06F3/0659 , G06F3/064 , G06F3/0635 , H04L43/0864 , G06F3/061 , H04L43/0876 , G06F3/0689 , G06F11/2094 , G06F2201/805
Abstract: A decentralized computer system operates by: storing encoded data blocks in an existing set of decentralized storage units of the decentralized computer system, wherein the decentralized computer system operates in accordance with a decentralized agreement protocol; assigning one or more additional decentralized storage units to the decentralized computing system, wherein the one or more additional decentralized storage units do not currently store the encoded data blocks; allocating the encoded data blocks to the one or more additional decentralized storage units, in accordance with the decentralized agreement protocol; and facilitating storage of the encoded data blocks from the existing set of decentralized storage units of the decentralized computer system to the at least one of the one or more additional decentralized storage units.
-
公开(公告)号: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.
-
公开(公告)号:US11487620B1
公开(公告)日:2022-11-01
申请号:US17850145
申请日:2022-06-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 , G06F16/00 , H04L67/1097 , G06F11/07 , H04L67/62 , H04L47/72 , G06F9/50 , H04L47/28
Abstract: A network storage system operates by: sending, to at least one storage unit of a 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 codable 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 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 from the number of the set of slices that is required to decode the data segment and that was not received from the at least one storage unit in response to the at least one read request; generating 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 includes a plurality of local redundancy slices generated from a second subset of the set of encoded data slices that includes the at least one missing encoded data slice; and recovering the data segment based on the at least one rebuilt encoded data slice and the first subset of encoded data slices.
-
公开(公告)号:US11429486B1
公开(公告)日:2022-08-30
申请号:US17084828
申请日:2020-10-30
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 , H04L67/1097 , G06F16/00 , H04L67/62 , G06F3/06 , H04L47/72 , H04L47/28 , G06F9/50
Abstract: In various embodiments, a method is presented for execution by a processing circuit of a storage network device that includes a processor. The method comprises: receiving, via the processing circuit, a first subset of encoded data slices of a set of encoded data slices corresponding to a data segment; identifying, via the processing circuit, at least one missing encoded data slice of the first subset of slices that is required to decode the data segment; generating, via the processing circuit, at least one rebuilt encoded data slice corresponding to the at least one missing encoded data slice utilizing locally decodable redundancy data; and recovering, via the processing circuit, the data segment based on the at least one rebuilt encoded data slice and the first subset of encoded data slices.
-
-
-
-
-
-
-
-
-