[
https://issues.apache.org/jira/browse/HBASE-27962?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Yutong Xiao updated HBASE-27962:
--------------------------------
Description:
We currently use the FastPathRWQueueRpcExecutor. But the numbers of read/write
handlers are fixed, which make the RegionServer performance not so good in our
prod env.
The logic of it is described below:
* The basic architecture is same as FastPathRWRpcExecutor.
* Introduced a float shared_ratio (0, 1.0), to indicate the ratio of the
number of shared handlers. (for example, if we have 100 handlers, 50 for write,
25 for get, 25 for scan, there will be 10 + 5 + 5 shared handlers and 40
isolated handlers for write, 20 for get and 20 for scan).
* Shared handler could run all the three kinds of requests.
* Shared handler will be shared only when it is idle.
* Shared handler is also bounded to a kind of RPCQueue, it will process the
requests in that queue first.
This improvement will improve the resource utility in various workloads and
guarantee a level of R/W/S isolation for requests processing at the same time.
was:
We currently use the FastPathRWQueueRpcExecutor. But the numbers of read/write
handlers are fixed, which make the RegionServer performance not so good in our
prod env.
The logic of it is described below:
* The basic architecture is same as FastPathRWRpcExecutor.
* Introduced a float shared_ratio (0, 1.0), to indicate the ratio of the
number of shared handlers. (for example, if we have 100 handlers, 50 for write,
25 for get, 25 for scan, there will be 10 + 5 + 5 shared handlers and 40
isolated handlers for write, 20 for get and 20 for scan).
* Shared handler could run all the three kinds of requests.
* Shared handler will be shared only when it is idle.
* Shared handler is also bounded to a kind of RPCQueue, it will process the
requests in that queue first.
This improvement will improve the resource utility in various workload and
guarantee a level of R/W/S isolation for requests processing at the same time.
> Introduce an AdaptiveFastPathRWRpcExecutor to make the W/R/S separations fit
> various workloads
> -----------------------------------------------------------------------------------------------
>
> Key: HBASE-27962
> URL: https://issues.apache.org/jira/browse/HBASE-27962
> Project: HBase
> Issue Type: Improvement
> Reporter: Yutong Xiao
> Assignee: Yutong Xiao
> Priority: Major
>
> We currently use the FastPathRWQueueRpcExecutor. But the numbers of
> read/write handlers are fixed, which make the RegionServer performance not so
> good in our prod env.
> The logic of it is described below:
> * The basic architecture is same as FastPathRWRpcExecutor.
> * Introduced a float shared_ratio (0, 1.0), to indicate the ratio of the
> number of shared handlers. (for example, if we have 100 handlers, 50 for
> write, 25 for get, 25 for scan, there will be 10 + 5 + 5 shared handlers and
> 40 isolated handlers for write, 20 for get and 20 for scan).
> * Shared handler could run all the three kinds of requests.
> * Shared handler will be shared only when it is idle.
> * Shared handler is also bounded to a kind of RPCQueue, it will process the
> requests in that queue first.
> This improvement will improve the resource utility in various workloads and
> guarantee a level of R/W/S isolation for requests processing at the same time.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)