You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by GitBox <gi...@apache.org> on 2021/06/10 17:34:52 UTC
[GitHub] [hbase] bharathv edited a comment on pull request #3371: HBASE-25984: Avoid premature reuse of sync futures in FSHLog [DRAFT]
bharathv edited a comment on pull request #3371:
URL: https://github.com/apache/hbase/pull/3371#issuecomment-858820006
> lockless but the likes of #putIfAbsent are not; they lock the 'bucket' the key is in.
Nice catch, this coarse grained segment locking thing didn't cross my mind, thanks for the correction. I did run the WAL PE, here are the results, there is like ~1% drop for async WAL but performance was better in FSHLog case. Following are the results for the default AsyncFSWAL implementation. cc: @apurtell
**bin/hbase org.apache.hadoop.hbase.wal.WALPerformanceEvaluation -threads 256 -roll 10000 -verify**
**With Patch:**
```
-- Histograms ------------------------------------------------------------------
org.apache.hadoop.hbase.wal.WALPerformanceEvaluation.latencyHistogram.nanos
count = 10463419
min = 2490066
max = 69582818
mean = 4095968.77
stddev = 5892795.05
median = 3486862.00
75% <= 3664389.00
95% <= 4136964.00
98% <= 4732630.00
99% <= 33418377.00
99.9% <= 68981951.00
org.apache.hadoop.hbase.wal.WALPerformanceEvaluation.syncCountHistogram.countPerSync
count = 102788
min = 52
max = 103
mean = 101.87
stddev = 2.54
median = 102.00
75% <= 102.00
95% <= 102.00
98% <= 102.00
99% <= 103.00
99.9% <= 103.00
org.apache.hadoop.hbase.wal.WALPerformanceEvaluation.syncHistogram.nanos-between-syncs
count = 102788
min = 113865
max = 62777544
mean = 1628760.64
stddev = 3796429.99
median = 1391037.00
75% <= 1458844.00
95% <= 1647948.00
98% <= 1999632.00
99% <= 2492916.00
99.9% <= 62777544.00
-- Meters ----------------------------------------------------------------------
org.apache.hadoop.hbase.wal.WALPerformanceEvaluation.appendMeter.bytes
count = 5828294825
mean rate = 38614011.23 events/second
1-minute rate = 36650337.06 events/second
5-minute rate = 35737367.38 events/second
15-minute rate = 34778685.18 events/second
org.apache.hadoop.hbase.wal.WALPerformanceEvaluation.syncMeter.syncs
count = 102789
mean rate = 681.00 events/second
1-minute rate = 646.16 events/second
5-minute rate = 629.76 events/second
15-minute rate = 612.67 events/second
```
**Without patch:**
```
-- Histograms ------------------------------------------------------------------
org.apache.hadoop.hbase.wal.WALPerformanceEvaluation.latencyHistogram.nanos
count = 10836273
min = 2468323
max = 66655180
mean = 3893813.44
stddev = 5620979.14
median = 3247994.00
75% <= 3559261.00
95% <= 4026170.00
98% <= 4801295.00
99% <= 5688797.00
99.9% <= 66655180.00
org.apache.hadoop.hbase.wal.WALPerformanceEvaluation.syncCountHistogram.countPerSync
count = 106307
min = 52
max = 103
mean = 101.94
stddev = 1.70
median = 102.00
75% <= 102.00
95% <= 102.00
98% <= 102.00
99% <= 103.00
99.9% <= 103.00
org.apache.hadoop.hbase.wal.WALPerformanceEvaluation.syncHistogram.nanos-between-syncs
count = 106308
min = 126570
max = 54387876
mean = 1423180.52
stddev = 2174336.12
median = 1282380.00
75% <= 1421388.00
95% <= 1610647.00
98% <= 1897988.00
99% <= 2200189.00
99.9% <= 52882012.00
-- Meters ----------------------------------------------------------------------
org.apache.hadoop.hbase.wal.WALPerformanceEvaluation.appendMeter.bytes
count = 6035972275
mean rate = 39993180.92 events/second
1-minute rate = 38393898.28 events/second
5-minute rate = 36625545.98 events/second
15-minute rate = 35407434.87 events/second
org.apache.hadoop.hbase.wal.WALPerformanceEvaluation.syncMeter.syncs
count = 106308
mean rate = 704.37 events/second
1-minute rate = 676.34 events/second
5-minute rate = 644.42 events/second
15-minute rate = 622.68 events/second
```
It does show up on the profiler though.. doesn't seem like a great idea then?
![image](https://user-images.githubusercontent.com/248754/121570822-19076a00-c9d7-11eb-92dd-457b2d838051.png)
![image](https://user-images.githubusercontent.com/248754/121570909-36d4cf00-c9d7-11eb-8f40-483bf155e0af.png)
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org