You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "stack (JIRA)" <ji...@apache.org> on 2016/04/26 23:12:12 UTC

[jira] [Updated] (HBASE-15716) HRegion#RegionScannerImpl scannerReadPoints synchronization costs

     [ https://issues.apache.org/jira/browse/HBASE-15716?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

stack updated HBASE-15716:
--------------------------
    Attachment: Screen Shot 2016-04-26 at 2.07.06 PM.png
                Screen Shot 2016-04-26 at 2.05.45 PM.png
                Screen Shot 2016-04-26 at 2.06.14 PM.png

Here are flight recordings of before and after. The before is current state of branch-1. The workload is ycsb c -- pure random read -- and the hit rate is about 220k/second. The after is my eliding the synchronization. See how our lock instances drops radically from 200k per thread per minute of my sample down to nothing (miscelllenous locking allocating BBs out of BucketCache).

The speed up seen is not that much but nothing to sneer at... from 220k to 240k.

> HRegion#RegionScannerImpl scannerReadPoints synchronization costs
> -----------------------------------------------------------------
>
>                 Key: HBASE-15716
>                 URL: https://issues.apache.org/jira/browse/HBASE-15716
>             Project: HBase
>          Issue Type: Bug
>          Components: Performance
>            Reporter: stack
>         Attachments: Screen Shot 2016-04-26 at 2.05.45 PM.png, Screen Shot 2016-04-26 at 2.06.14 PM.png, Screen Shot 2016-04-26 at 2.07.06 PM.png
>
>
> Here is a [~lhofhansl] special.
> When we construct the region scanner, we get our read point and then store it with the scanner instance in a Region scoped CSLM. This is done under a synchronize on the CSLM.
> This synchronize on a region-scoped Map creating region scanners is the outstanding point of lock contention according to flight recorder (My work load is workload c, random reads).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)