Uploaded image for project: 'Cassandra'
  1. Cassandra
  2. CASSANDRA-20092

SSTableScanner can be vastly simplified for compaction

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Patch Available
    • Normal
    • Resolution: Unresolved
    • None
    • Local/Compaction
    • None
    • Performance
    • Normal
    • All
    • None
    • Hide

      Existing tests exercise the new code, with some updates to scanner-specific tests to test both simple and full-fledged scanners.

      Show
      Existing tests exercise the new code, with some updates to scanner-specific tests to test both simple and full-fledged scanners.

    Description

      One of the main bottlenecks for compaction performance is its use of the SSTableScanner class, whose main purpose is to implement partition range queries and as such supports filtering by row and column that is not helpful to compaction. To implement the latter it must rely on the sstable's index, adding a lot of complexity and inefficiency.

      Implementing a simpler version of a scanner that reads off the data file directly for given spans of offsets would speed up compaction significantly.

      Attachments

        Issue Links

          Activity

            People

              blambov Branimir Lambov
              blambov Branimir Lambov
              Branimir Lambov
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated: