Thanks samal... I got it now....

On Thu, Jul 21, 2011 at 4:11 PM, samal <sa...@wakya.in> wrote:

>
> Any ways , some where memtable has to be stored right, like we say memtable
> data is flushed to create sstable on disk.
>
>> Exactly from which location or memory it will be getting from. is it like
>> an objects streams or like it is storing the values in commitlog.
>>
>
> A Memtable is Cassandra's in-memory representation of key/value pairs.
>
>
>> my next question is , data is written to commit log. all the data is
>> available here, and the sstable are getting created on disk, then where and
>> when these memtables are coming into picture
>
>
> Commitlog is append only file which record write sequentially, more[2], can
> be thought as check sum file, which to used to recalculate data for
> memtables in case of crash.
> A write first hits the *CommitLog*, then Cassandra stores/writes values to
> in-memory data structures called Memtables. The Memtables are flushed to
> disk whenever one of the configurable thresholds is met.[3] 
> <http://wiki.apache.org/cassandra/MemtableThresholds>
> For each column family there is corresponding memtable.
> There is generally one commitlog file for all CF.
>
> SSTables are immutable once written to disk cannot be modified. It will
> only be replaced by new SSTable after compaction
>
>
> [1]http://wiki.apache.org/cassandra/ArchitectureOverview
> [2]http://wiki.apache.org/cassandra/ArchitectureCommitLog
> [3]http://wiki.apache.org/cassandra/MemtableThresholds
>
>

Reply via email to