You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Jonathan Ellis (JIRA)" <ji...@apache.org> on 2013/12/03 21:48:35 UTC

[jira] [Updated] (CASSANDRA-6441) Explore merging memtables directly with L1

     [ https://issues.apache.org/jira/browse/CASSANDRA-6441?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jonathan Ellis updated CASSANDRA-6441:
--------------------------------------

    Fix Version/s: 3.0

> Explore merging memtables directly with L1
> ------------------------------------------
>
>                 Key: CASSANDRA-6441
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-6441
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Core
>            Reporter: Jonathan Ellis
>            Priority: Minor
>              Labels: compaction
>             Fix For: 3.0
>
>
> Currently, memtables flush to L0 and are then compacted with L1, so you automatically have 100% write amplification for unique cells right off the bat.
> http://dl.acm.org/citation.cfm?id=2213862 suggests splitting the memtable into pieces corresponding to the ranges of the sstables in L1 and turning the flush + compact into a single write -- that is, we'd "compact" the data in the L1 sstable with the corresponding data in the memtable.
> This would add some complexity around blocking memtable sections until the corresponding L1 piece is no longer involved in its own compaction with L2, and probably a "panic dump" to the old L0 behavior if we run low on memory.  But in theory it sounds like a promising optimization.



--
This message was sent by Atlassian JIRA
(v6.1#6144)