cassandra-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Aditya Narayan <>
Subject Re: Does the memtable replace the old version of column with the new overwriting version or is it just a simple append ?
Date Wed, 09 Mar 2011 07:56:27 GMT
so this means that in memtable only the most recent version of a
column will reside!? For this implementation, while writing "to
memtable" Cassandra will see if there are other versions and will
overwrite them (reconcilation while writing) !?

I know that different SST tables may have different versions of the
same column.(and for them reconcilation will happen at reads)

Thanks Narendra!

On 3/9/11, Narendra Sharma <> wrote:
> Multiple write for same key and column will result in overwriting of column
> in a memtable. Basically multiple updates for same (key, column) are
> reconciled based on the column's timestamp. This happens per memtable. So if
> a memtable is flushed to an sstable, this rule will be valid for the next
> memtable.
> Note that sstables are immutable. So, different sstables may have different
> versions of same (key, column), and the reconciliation of that happens
> during read (read repair). This is why reads are slower than writes because
> conflict resolution happens during read.
> Hope this answers the question!
> Thanks,
> -Naren
> On Tue, Mar 8, 2011 at 10:44 PM, Aditya Narayan <> wrote:
>> Do the overwrites of newly written columns(that are present in
>> memtable) *replace the old column* or is it just a simple append.
>> I am trying to understand that if I update these column very very
>> frequently(while they are in memtable), does the read performance of
>> these columns gets affected, since Cassandra will have to read so many
>> versions of the same column. If this is just replacement with old
>> column then I guess read will be much better since it needs to see
>> just single existing version of column.
>> Thanks
>> Aditya Narayan

View raw message