-
公开(公告)号:US11379119B2
公开(公告)日:2022-07-05
申请号:US16929017
申请日:2020-07-14
Applicant: NetApp, Inc.
Inventor: David D. Wright
IPC: G06F15/16 , G06F3/06 , H04L67/1097 , G06F15/173 , G06F12/02
Abstract: Methods, systems, and apparatuses, including computer programs encoded on computer-readable media, for receiving a write request that includes data and a client address at which to store the data. The data is segmented into the one or more storage units. A storage unit identifier for each of the one or more storage units is computed that uniquely identifies content of a storage unit. A mapping between each storage unit identifier to a block server is determined. The mapping is sent to a plurality of metadata servers to provide the mapping in case of failure of the metadata server. For each of the one or more storage units, the storage unit and the corresponding storage unit identifier is sent to a block server. The block server stores the storage unit and information on where the storage unit is stored on the block server for the storage unit identifier. Multiple client addresses associated with a storage unit with the same storage unit identifier are mapped to a single storage unit.
-
12.
公开(公告)号:US10951488B2
公开(公告)日:2021-03-16
申请号:US16723701
申请日:2019-12-20
Applicant: NetApp, Inc.
Inventor: David D. Wright , Michael Xu
Abstract: Performance of a storage system with data distributed substantially, evenly across a cluster of storage nodes can be dynamically managed according whether quality of service (QoS) rules based on one or more performance capacities according to performance class is satisfied, wherein each QoS rule includes a boundary condition and a threshold expressing performance guarantees to a respective performance class. Determining for each QoS rule, whether a respective boundary condition satisfies a respective threshold based on measured capacity for a performance metric corresponding to the respective boundary condition; and if so, setting a first QoS parameter associated with the set of QoS rules and throttling access to the storage system by a first client associated with a first performance class based on the first QoS parameter to enforce the performance guarantees to the first performance class.
-
公开(公告)号:US10911328B2
公开(公告)日:2021-02-02
申请号:US16588594
申请日:2019-09-30
Applicant: NetApp, Inc.
Inventor: David D. Wright , Michael Xu
Abstract: A storage system monitors system performance metrics and client performance metrics related to input/output (I/O) operations. The storage system, generates a performance adjustment value for each client using a proportional-integral-derivative (PID) controller to match the corresponding respective target performance value within a time period based on feedback of the respective monitored client performance metric and the system performance metric. The storage system, throttles I/O operations for each client during the time period such that the respective client performance moves toward the corresponding respective target performance value.
-
公开(公告)号:US10460124B2
公开(公告)日:2019-10-29
申请号:US15186787
申请日:2016-06-20
Applicant: NETAPP, INC.
Inventor: David D. Wright , Daniel McCarthy
Abstract: A server node with one or more processors is configured to receive a request to write data to a storage medium and compress the data to yield compressed data. The one or more processors are further configured to encrypt the compressed data according to an encryption key to yield compressed and encrypted data. The one or more processors are further configured to hash the compressed and encrypted data to yield one or more block identifiers that uniquely represent the compressed and encrypted data.
-
公开(公告)号:US11212196B2
公开(公告)日:2021-12-28
申请号:US17163679
申请日:2021-02-01
Applicant: NetApp, Inc.
Inventor: David D. Wright , Michael Xu
Abstract: A distributed storage system monitors one or more system performance metrics and one or more client performance metrics related usage of the distributed storage system, including a read latency metric, a write latency metric, a total input/output (I/O) operations per second (IOPS) metric, a read IOPS metric, a write IOPS metric, an I/O size metric, a total bandwidth metric, a read bandwidth metric, a write bandwidth metric, a read/write ratio metric or statistical measures thereof over a period of time. When the distributed storage system is determined to be in an overload condition (e.g., when a system load value, calculated based on the performance metrics, exceeds a threshold), the distributed storage system independently throttles access to one or more components of the distributed storage system by one or more of multiple clients performing I/O operations to the distributed storage system based on their respective contribution to the overload condition.
-
公开(公告)号:US20200341651A1
公开(公告)日:2020-10-29
申请号:US16929017
申请日:2020-07-14
Applicant: NetApp, Inc.
Inventor: David D. Wright
IPC: G06F3/06 , H04L29/08 , G06F15/173 , G06F12/02
Abstract: Methods, systems, and apparatuses, including computer programs encoded on computer-readable media, for receiving a write request that includes data and a client address at which to store the data. The data is segmented into the one or more storage units. A storage unit identifier for each of the one or more storage units is computed that uniquely identifies content of a storage unit. A mapping between each storage unit identifier to a block server is determined. The mapping is sent to a plurality of metadata servers to provide the mapping in case of failure of the metadata server. For each of the one or more storage units, the storage unit and the corresponding storage unit identifier is sent to a block server. The block server stores the storage unit and information on where the storage unit is stored on the block server for the storage unit identifier. Multiple client addresses associated with a storage unit with the same storage unit identifier are mapped to a single storage unit.
-
公开(公告)号:US10712944B2
公开(公告)日:2020-07-14
申请号:US16021421
申请日:2018-06-28
Applicant: NetApp, Inc.
Inventor: David D. Wright
IPC: G06F15/16 , G06F3/06 , H04L29/08 , G06F15/173 , G06F12/02
Abstract: Methods, systems, and apparatuses, including computer programs encoded on computer-readable media, for receiving a write request that includes data and a client address at which to store the data. The data is segmented into the one or more storage units. A storage unit identifier for each of the one or more storage units is computed that uniquely identifies content of a storage unit. A mapping between each storage unit identifier to a block server is determined. For each of the one or more storage units, the storage unit and the corresponding storage unit identifier is sent to a block server. The block server stores the storage unit and information on where the storage unit is stored on the block server for the storage unit identifier. Multiple client addresses associated with a storage unit with the same storage unit identifier are mapped to a single storage unit.
-
公开(公告)号:US20200028757A1
公开(公告)日:2020-01-23
申请号:US16588594
申请日:2019-09-30
Applicant: NetApp, Inc.
Inventor: David D. Wright , Michael Xu
Abstract: A storage system monitors system performance metrics and client performance metrics related to input/output (I/O) operations. The storage system, generates a performance adjustment value for each client using a proportional-integral-derivative (PID) controller to match the corresponding respective target performance value within a time period based on feedback of the respective monitored client performance metric and the system performance metric. The storage system, throttles I/O operations for each client during the time period such that the respective client performance moves toward the corresponding respective target performance value.
-
公开(公告)号:US20190012090A1
公开(公告)日:2019-01-10
申请号:US16021421
申请日:2018-06-28
Applicant: NetApp, Inc.
Inventor: David D. Wright
IPC: G06F3/06 , H04L29/08 , G06F15/173 , G06F12/02
CPC classification number: G06F3/0608 , G06F3/0619 , G06F3/0641 , G06F3/0644 , G06F3/0659 , G06F3/0665 , G06F3/067 , G06F3/0689 , G06F12/0284 , G06F15/173 , G06F15/17331 , G06F2003/0692 , G06F2212/1032 , G06F2212/1044 , G06F2212/154 , G06F2212/163 , G06F2212/263 , G06F2212/401 , H04L67/1097
Abstract: Methods, systems, and apparatuses, including computer programs encoded on computer-readable media, for receiving a write request that includes data and a client address at which to store the data. The data is segmented into the one or more storage units. A storage unit identifier for each of the one or more storage units is computed that uniquely identifies content of a storage unit. A mapping between each storage unit identifier to a block server is determined. For each of the one or more storage units, the storage unit and the corresponding storage unit identifier is sent to a block server. The block server stores the storage unit and information on where the storage unit is stored on the block server for the storage unit identifier. Multiple client addresses associated with a storage unit with the same storage unit identifier are mapped to a single storage unit.
-
公开(公告)号:US10037146B2
公开(公告)日:2018-07-31
申请号:US15358601
申请日:2016-11-22
Applicant: NETAPP, INC.
Inventor: David D. Wright
IPC: G06F15/16 , G06F3/06 , H04L29/08 , G06F15/173 , G06F12/02
CPC classification number: G06F3/0608 , G06F3/0619 , G06F3/0641 , G06F3/0644 , G06F3/0659 , G06F3/0665 , G06F3/067 , G06F3/0689 , G06F12/0284 , G06F15/173 , G06F15/17331 , G06F2003/0692 , G06F2212/1032 , G06F2212/1044 , G06F2212/154 , G06F2212/163 , G06F2212/263 , G06F2212/401 , H04L67/1097
Abstract: Methods, systems, and apparatuses, including computer programs encoded on computer-readable media, for receiving a write request that includes data and a client address at which to store the data. The data is segmented into the one or more storage units. A storage unit identifier for each of the one or more storage units is computed that uniquely identifies content of a storage unit. A mapping between each storage unit identifier to a block server is determined. For each of the one or more storage units, the storage unit and the corresponding storage unit identifier is sent to a block server. The block server stores the storage unit and information on where the storage unit is stored on the block server for the storage unit identifier. Multiple client addresses associated with a storage unit with the same storage unit identifier are mapped to a single storage unit.
-
-
-
-
-
-
-
-
-