-
公开(公告)号:US12072763B2
公开(公告)日:2024-08-27
申请号:US17661437
申请日:2022-04-29
Applicant: Pure Storage, Inc.
Inventor: Bruno H. Cabral , Joseph M. Kaczmarek , Ravi V. Khadiwala , Ilya Volvovski , Manish Motwani , Ethan S. Wozniak
IPC: G06F11/00 , G06F3/06 , G06F9/48 , G06F9/50 , G06F11/10 , G06F11/14 , G06F12/0866 , G06F12/0891 , G06F15/173 , H03M13/11 , H03M13/15 , H03M13/37 , H04L67/1097 , H03M13/00 , H04L9/40 , H04L61/45 , H04L101/604
CPC classification number: G06F11/1076 , G06F3/061 , G06F3/0619 , G06F3/0629 , G06F3/0635 , G06F3/064 , G06F3/0644 , G06F3/0665 , G06F3/067 , G06F3/0689 , G06F9/4881 , G06F9/5083 , G06F11/108 , G06F11/1092 , G06F11/1402 , G06F11/1464 , G06F12/0866 , G06F12/0891 , G06F15/17331 , H03M13/1105 , H03M13/1515 , H03M13/3761 , H04L67/1097 , G06F2201/84 , G06F2211/1007 , G06F2212/1024 , G06F2212/154 , G06F2212/263 , G06F2212/403 , H03M13/616 , H03M13/6502 , H04L61/457 , H04L63/101 , H04L2101/604
Abstract: A computing device includes an interface configured to interface and communicate with a storage network, a memory that stores operational instructions, and a processing module operably coupled to the interface and memory such that the processing module, when operable within the computing device based on the operational instructions, is configured to perform various operations. A computing device receives a data access request for an encoded data slice associated with a data object, determines whether the encoded data slice is stored in the first memory and in response to a determination that the encoded data slice is not stored in the first memory, issues another data access request for the encoded data slice to a second memory, where the first memory includes access characteristics that are faster than the second memory. When a data access response including the encoded data slice is received from the second memory, a response including the encoded data slice is transmitted.
-
公开(公告)号:US11909418B1
公开(公告)日:2024-02-20
申请号:US17163824
申请日:2021-02-01
Applicant: Pure Storage, Inc.
Inventor: Dustin M. Hendrickson , Manish Motwani
CPC classification number: H03M13/1515 , G06F3/067 , G06F3/0608 , G06F3/0619 , G06F3/0644 , G06F3/0652 , G06F3/0659 , G06F11/1092 , G06F11/2094 , H04L9/085 , H04L9/0894 , H04L67/535 , H04L69/40 , G06F2201/805 , G06F2211/1028 , H04L2209/34
Abstract: A computing device includes an interface configured to interface and communicate with a dispersed storage network (DSN), a memory that stores operational instructions, and a processing module operably coupled to the interface and memory such that the processing module, when operable within the computing device based on the operational instructions, is configured to perform various operations. The computing device is operable to receive a memory access request for a data object stored within the DSN, determine a realm for the memory access request, determine an authorization service for the realm and generate an authorization request for the memory access request. The computing device is further operable to transmit the authorization request to an authorization service, receive an authorization request response from the authorization service, determine whether the memory access request is authorized and process the memory access request.
-
公开(公告)号:US20220360541A1
公开(公告)日:2022-11-10
申请号:US17814022
申请日:2022-07-21
Applicant: Pure Storage, Inc.
Inventor: Wesley B. Leggette , Jason K. Resch , Manish Motwani , Ilya Volvovski
IPC: H04L47/70 , G06F3/06 , 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.
-
公开(公告)号:US20220327022A1
公开(公告)日:2022-10-13
申请号: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
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.
-
公开(公告)号:US10944712B1
公开(公告)日:2021-03-09
申请号:US16861559
申请日:2020-04-29
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.
Abstract: A method for processing partial tasks in a distributed storage network (DSN) includes receiving a partial task request message for a DS execution unit, where the partial task request message includes corresponding partial tasks. The method continues by processing each partial task request message in accordance with the processing parameters to produce task request slice groupings, generating slices, such that each message is directed at a corresponding DS execution unit, and the sending the slice groupings and the task request slice groupings to the selected DS execution units for storage therein. The method continues by retrieving at least a decode threshold number of task response slices of one or more task response slice groupings from the DS execution units, decoding the task response slices, retrieving at least a decode threshold number of partial result slices, and decoding the partial results slices and processing the partial results to produce a result.
-
公开(公告)号: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.
-
公开(公告)号: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.
-
公开(公告)号: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.
-
公开(公告)号: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.
-
-
-
-
-
-
-
-
-