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

Refactoring the code of read path

    Details

    • Type: Umbrella
    • Status: Open
    • Priority: Critical
    • Resolution: Unresolved
    • Affects Version/s: None
    • Fix Version/s: 3.0.0
    • Component/s: Scanners
    • Labels:
      None

      Description

      The known problems of the current implementation:

      1. 'Seek or skip' should be decided at StoreFileScanner level, not StoreScanner.
      2. As now we support creating multiple StoreFileReader instances for a single HFile, we do not need to load the file info and other meta infos every time when creating a new StoreFileReader instance.
      3. 'Pread or stream' should be decided at StoreFileScanner level, not StoreScanner.
      4. Make sure that we can return at any point during a scan, at least when filterRowKey we can not stop until we reach the next row, no matter how many cells we need to skip...
      5. Doing bytes comparing everywhere, where we need to know if there is a row change, a family change, a qualifier change, etc. This is a performance killer.

      And the most important thing is that, the code is way too complicated now and become out of control...

      This should be done before our 3.0.0 release.

        Attachments

          Activity

            People

            • Assignee:
              Unassigned
              Reporter:
              Apache9 Duo Zhang
            • Votes:
              0 Vote for this issue
              Watchers:
              12 Start watching this issue

              Dates

              • Created:
                Updated: