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 <narendra.sha...@gmail.com> 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 <ady...@gmail.com> 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
>>
>

Reply via email to