cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Apache Wiki <wikidi...@apache.org>
Subject [Cassandra Wiki] Update of "MemtableSSTable" by JonHermes
Date Tue, 24 Aug 2010 21:53:29 GMT
Dear Wiki user,

You have subscribed to a wiki page or wiki category on "Cassandra Wiki" for change notification.

The "MemtableSSTable" page has been changed by JonHermes.
http://wiki.apache.org/cassandra/MemtableSSTable?action=diff&rev1=13&rev2=14

--------------------------------------------------

  Once flushed, SSTable files are immutable; no further writes may be done.  So, on the read
path, the server must (potentially, although it uses tricks like bloom filters to avoid doing
so unnecessarily) combine row fragments from all the SSTables on disk, as well as any unflushed
Memtables, to produce the requested data.
  
  == Compaction ==
- To bound the number of SSTable files that must be consulted on reads, and to reclaim [[DistributedDeletes|space
taken by unused data]], Cassandra performs compactions: merging multiple old SSTable files
into a single new one. Compactions are triggered when at least 4 SStables have been flushed
to disk. Four similar-sized SSTables are merged into a single one. They start out being the
same size as your memtable flush size, and then form a hierarchy with each one doubling in
size. So you'll have up to 4 of the same size as your memtable, then up to 4 double that size,
then up to 4 double that size, etc.
+ To bound the number of SSTable files that must be consulted on reads, and to reclaim [[DistributedDeletes|space
taken by unused data]], Cassandra performs compactions: merging multiple old SSTable files
into a single new one. Compactions are triggered when at least N SStables have been flushed
to disk, where N is tunable and defaults to 4. Four similar-sized SSTables are merged into
a single one. They start out being the same size as your memtable flush size, and then form
a hierarchy with each one doubling in size. So you'll have up to N of the same size as your
memtable, then up to N double that size, then up to N double that size, etc.
  
  "Minor" only compactions merge sstables of similar size; "major" compactions merge all sstables
in a given !ColumnFamily.  Only major compactions can clean out obsolete [[DistributedDeletes|tombstones]].
  

Mime
View raw message