[ https://issues.apache.org/jira/browse/CASSANDRA-10540?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15996150#comment-15996150 ]
Cameron Zemek commented on CASSANDRA-10540: ------------------------------------------- I have found one issue with the code. It states "To avoid getting very many tiny sstables in the per-range strategies, we keep them outside the strategy until the estimated size of a range-sstable is larger than 'min_range_sstable_size_in_mb'. (estimation usually gets within a few % of the actual value)." However RangeAwareCompactionStrategy::addSSTable does not check that the sstable meets the minimum size. This is potentially an issue with repairs that stream sections of sstables or if memtable only includes a single token range on flush. On a different note, I notice the performance testing so far as looked at write amplification. I suspect RangeAwareCompaction could also improve read performance due to partitions more likely to exist in less sstables (ie.. reduces the sstables per read). It would be interesting to see SSTable leaders for partitions with STCS vs RangeAwareCompaction + STCS. Can get list of sstable leaders with ic-pstats tool have open sourced here, https://github.com/instaclustr/cassandra-sstable-tools > RangeAwareCompaction > -------------------- > > Key: CASSANDRA-10540 > URL: https://issues.apache.org/jira/browse/CASSANDRA-10540 > Project: Cassandra > Issue Type: New Feature > Reporter: Marcus Eriksson > Assignee: Marcus Eriksson > Labels: compaction, lcs, vnodes > Fix For: 4.x > > > Broken out from CASSANDRA-6696, we should split sstables based on ranges > during compaction. > Requirements; > * dont create tiny sstables - keep them bunched together until a single vnode > is big enough (configurable how big that is) > * make it possible to run existing compaction strategies on the per-range > sstables > We should probably add a global compaction strategy parameter that states > whether this should be enabled or not. -- This message was sent by Atlassian JIRA (v6.3.15#6346) --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org