[
https://issues.apache.org/jira/browse/HBASE-21657?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16733059#comment-16733059
]
Zheng Hu edited comment on HBASE-21657 at 1/3/19 2:06 PM:
----------------------------------------------------------
I made an performance comparasion between hbase2.0.4 without patch.v2 and
hbase2.0.4 with patch.v2:
|| Comparision || QPS| FlameGraph| L2 cacheHitRatio|
|HBase2.0.4 without patch.v2|14392.7 ops/sec| [^hbase2.0.4-ssd-scan-traces.svg]
| ~95%|
|HBase2.0.4 with patch.v2| 9979.8 ops/sec| [^hbase2.0.4-ssd-scan-traces.2.svg]
| ~95% |
Later, I'll provide more details about the QPS & latency.
BTW, my testing environment were:
5 Nodes : 12*800G SSD / 24 Core / 128GB memory (50G onheap + 50G offheap for
each RS, and allocated 36G for BucketCache).
and I used the YCSB 100% scan workload (by default, the ycsb will generate a
scan with limit in [1...1000] )
{code}
table=ycsb-test
columnfamily=C
recordcount=100000000
operationcount=100000000
workload=com.yahoo.ycsb.workloads.CoreWorkload
fieldlength=100
fieldcount=1
clientbuffering=true
readallfields=true
writeallfields=true
readproportion=0
updateproportion=0
scanproportion=1.0
insertproportion=0
requestdistribution=zipfian
{code}
was (Author: openinx):
I made an performance comparasion between hbase2.0.4 without patch.v2 and
hbase2.0.4 with patch.v2:
|| Comparision || QPS| FlameGraph|
|HBase2.0.4 without patch.v2|14392.7 ops/sec| [^hbase2.0.4-ssd-scan-traces.svg]
|
|HBase2.0.4 with patch.v2| 9979.8 ops/sec| [^hbase2.0.4-ssd-scan-traces.2.svg]
|
Later, I'll provide more details about the QPS & latency.
BTW, my testing environment were:
5 Nodes : 12*800G SSD / 24 Core / 128GB memory (50G onheap + 50G offheap for
each RS, and allocated 36G for BucketCache).
and I used the YCSB 100% scan workload (by default, the ycsb will generate a
scan with limit in [1...1000] )
{code}
table=ycsb-test
columnfamily=C
recordcount=100000000
operationcount=100000000
workload=com.yahoo.ycsb.workloads.CoreWorkload
fieldlength=100
fieldcount=1
clientbuffering=true
readallfields=true
writeallfields=true
readproportion=0
updateproportion=0
scanproportion=1.0
insertproportion=0
requestdistribution=zipfian
{code}
> PrivateCellUtil#estimatedSerializedSizeOf has been the bottleneck in 100%
> scan case.
> ------------------------------------------------------------------------------------
>
> Key: HBASE-21657
> URL: https://issues.apache.org/jira/browse/HBASE-21657
> Project: HBase
> Issue Type: Bug
> Components: Performance
> Reporter: Zheng Hu
> Assignee: Zheng Hu
> Priority: Major
> Fix For: 3.0.0, 2.2.0, 2.1.3, 2.0.5
>
> Attachments: HBASE-21657.v1.patch, HBASE-21657.v2.patch,
> hbase2.0.4-ssd-scan-traces.2.svg, hbase2.0.4-ssd-scan-traces.svg,
> hbase20-ssd-100-scan-traces.svg
>
>
> We are evaluating the performance of branch-2, and find that the throughput
> of scan in SSD cluster is almost the same as HDD cluster. so I made a
> FlameGraph on RS, and found that the
> PrivateCellUtil#estimatedSerializedSizeOf cost about 29% cpu, Obviously, it
> has been the bottleneck in 100% scan case.
> See theĀ [^hbase20-ssd-100-scan-traces.svg]
> BTW, in our XiaoMi branch, we introduce a
> HRegion#updateReadRequestsByCapacityUnitPerSecond to sum up the size of cells
> (for metric monitor), so it seems the performance loss was amplified.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)