Details

    • Sub-task
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • None
    • 2.0.1
    • Performance
    • None
    • Reviewed

    Description

      Comparing Cells in hbase2 takes almost 3x the CPU.

      In hbase1, its a keyValue backed by a byte array caching a few important values.. In hbase2, its a NoTagByteBufferChunkKeyValue deserializing the row/family/qualifier lengths repeatedly.

      I tried making a purposed comparator – one that was not generic – and it seemed to have a nicer profile coming close to hbase1 in percentage used (I'll post graphs) when I ran it in my perpetual memstore filler (See scripts attached to HBASE-20483). It doesn't work when I try to run it on cluster. Let me run unit tests to see if it can figure what I have wrong.

      Attachments

        1. 0001-HBASE-20564-addendum2.branch-2.0.patch
          7 kB
          Michael Stack
        2. 0002-HBASE-20564-addendum.branch-2.0.patch
          9 kB
          Michael Stack
        3. 0001-HBASE-20564-addendum.txt
          8 kB
          Michael Stack
        4. 0001-HBASE-20564-addendum.txt
          8 kB
          Michael Stack
        5. 20564.addendum
          3 kB
          Ted Yu
        6. hits.png
          12 kB
          Michael Stack
        7. 2.p3.write2.0514.104236.cpu.svg
          149 kB
          Michael Stack
        8. 2.pe.write.135142.cpu.svg
          178 kB
          Michael Stack
        9. 1.4.pe.write.0510.96203.cpu.svg
          235 kB
          Michael Stack
        10. HBASE-20564.branch-2.0.002.patch
          15 kB
          Michael Stack
        11. HBASE-20564.branch-2.0.001.patch
          13 kB
          Michael Stack
        12. HBASE-20564.branch-2.patch
          15 kB
          Michael Stack

        Issue Links

          Activity

            People

              stack Michael Stack
              stack Michael Stack
              Votes:
              0 Vote for this issue
              Watchers:
              9 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: