You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Duo Zhang (Jira)" <ji...@apache.org> on 2019/12/26 09:43:00 UTC
[jira] [Commented] (HBASE-23617) Add a stress test tool for region
based procedure store
[ https://issues.apache.org/jira/browse/HBASE-23617?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17003547#comment-17003547 ]
Duo Zhang commented on HBASE-23617:
-----------------------------------
I changed the default config for RegionProcedureStore a bit, so now the default flush size and log roller size are all 128MB, and I also changed the roll size for WALProcedureStore to 128MB.
For hflush
{noformat}
./bin/hbase org.apache.hadoop.hbase.procedure2.store.region.RegionProcedureStorePerformanceEvaluation &>test_region.log < /dev/null &
./bin/hbase org.apache.hadoop.hbase.procedure2.store.wal.ProcedureWALPerformanceEvaluation &>test_wal.log < /dev/null &
{noformat}
The result is pretty good, for RegionProcedureStore
{noformat}
Num threads : 20
Num procedures : 1000000
Sync type : hflush
Time taken : 52sec
{noformat}
For WALProcedureStore
{noformat}
Num threads : 20
Num procedures : 1000000
Sync type : hflush
Time taken : 90sec
{noformat}
But when using hsync, the RegionProcedureStore became extremely slow, need to dig more.
For one thread test, RegionProcedureStore is still faster.
{noformat}
./bin/hbase org.apache.hadoop.hbase.procedure2.store.region.RegionProcedureStorePerformanceEvaluation -sync hsync -threads 1 -procs 100000 &>test_region_hsync.log < /dev/null &
./bin/hbase org.apache.hadoop.hbase.procedure2.store.wal.ProcedureWALPerformanceEvaluation -sync hsync -threads 1 -procs 100000 &>test_wal_hsync.log < /dev/null &
{noformat}
For RegionProcedureStore
{noformat}
Num threads : 1
Num procedures : 100000
Sync type : hsync
Time taken : 73sec
{noformat}
For WALProcedureStore
{noformat}
Num threads : 1
Num procedures : 100000
Sync type : hsync
Time taken : 133sec
{noformat}
But the story changes when we use 20 threads to write 1000000 procedures...
Maybe there is something wrong in our HRegion implementation when using hsync...
> Add a stress test tool for region based procedure store
> -------------------------------------------------------
>
> Key: HBASE-23617
> URL: https://issues.apache.org/jira/browse/HBASE-23617
> Project: HBase
> Issue Type: Improvement
> Components: proc-v2
> Reporter: Duo Zhang
> Assignee: Duo Zhang
> Priority: Major
>
--
This message was sent by Atlassian Jira
(v8.3.4#803005)