Uploaded image for project: 'HBase'
  1. HBase
  2. HBASE-10305

Batch update performance drops as the number of regions grows

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Not A Problem
    • None
    • None
    • Performance
    • None

    Description

      In our use case, we use a small number (~5) of proxy programs that read from a queue and batch update to HBase. Our program is multi-threaded and HBase client will batch mutations to each RS.

      We found we're getting lower TPS when there are more regions. I think the reason is RS syncs HLog for each region. Suppose there is a single region, the batch update will only touch one region and therefore syncs HLog once. And suppose there are 10 regions per server, in RS#multi() it have to process update for each individual region and sync HLog 10 times.

      Please note that in our scenario, batched mutations usually are independent with each other and need to touch a various number of regions.

      We are using the 0.94 series, but I think the trunk should have the same problem after a quick look into the code.

      Attachments

        Activity

          People

            Unassigned Unassigned
            stepinto Chao Shi
            Votes:
            0 Vote for this issue
            Watchers:
            8 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: