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

Replace memstore's ConcurrentSkipListMap with our own implementation

    Details

    • Type: Improvement
    • Status: Open
    • Priority: Critical
    • Resolution: Unresolved
    • Affects Version/s: 0.92.0
    • Fix Version/s: None
    • Component/s: Performance
    • Labels:
      None

      Description

      By copy-pasting ConcurrentSkipListMap into HBase we can make two improvements to it for our use case in MemStore:

      • add an iterator.replace() method which should allow us to do upsert much more cheaply
      • implement a Set directly without having to do Map<KeyValue,KeyValue> to save one reference per entry

      It turns out CSLM is in public domain from its development as part of JSR 166, so we should be OK with licenses.

        Attachments

        1. WIP_HBASE-3484.patch
          51 kB
          Anoop Sam John
        2. memstore_drag.png
          31 kB
          Jean-Daniel Cryans
        3. hierarchical-map.txt
          40 kB
          Todd Lipcon

          Issue Links

            Activity

              People

              • Assignee:
                Unassigned
                Reporter:
                tlipcon Todd Lipcon
              • Votes:
                0 Vote for this issue
                Watchers:
                26 Start watching this issue

                Dates

                • Created:
                  Updated: