Dear Wiki user,

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

The "MemtableThresholds" page has been changed by FlipKromer.
The comment on this change is: two tweaks, overall contents signed off by 
driftx.
http://wiki.apache.org/cassandra/MemtableThresholds?action=diff&rev1=16&rev2=17

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

  
  '''Larger Memtables don't improve write performance: '''Increasing the 
memtable capacity will cause less-frequent flushes but doesn't improve write 
performance directly: writes go directly to memory regardless. (Actually, if 
your commitlog and sstables share a volume they might contend, so if at all 
possible, put them on separate volumes)
  
- '''Larger memtables do absorb more overwrites''': If your write load sees 
some rows written more often than others (eg upvotes of a front-page story) a 
larger memtable absorbs more overwrites, which creates more efficient sstables 
and thus better read performance.  If your write load is batch oriented or if 
you have a massive row set, rows are not likely to be rewritten for a long 
time, and so this benefit will pay a smaller dividend.
+ '''Larger memtables do absorb more overwrites''': If your write load sees 
some rows written more often than others (eg upvotes of a front-page story) a 
larger memtable will absorb those overwrites, creating more efficient sstables 
and thus better read performance.  If your write load is batch oriented or if 
you have a massive row set, rows are not likely to be rewritten for a long 
time, and so this benefit will pay a smaller dividend.
  
- '''Larger memtables do lead to more effective compaction''': Since compaction 
is tiered, large sstables are prefereable: turning over tons of tiny memtables 
is bad. Again, this impacts read performance (by improving the overall 
io-contention weather), but not writes.
+ '''Larger memtables do lead to more effective compaction''': Since compaction 
is tiered, large sstables are preferable: turning over tons of tiny memtables 
is bad. Again, this impacts read performance (by improving the overall 
io-contention weather), but not writes.
  
  Listed below are the thresholds found in `storage-conf.xml`, along with a 
description.
  
@@ -41, +41 @@

  === MemtableObjectCountInMillions ===
  This directive sets a threshold on the number of columns stored.
  
- Left unconfigured (missing from the config), this defaults to 0.1  (or 
100,000 objects), but the config file's inital setting of 0.3 (or 300,000 
objects) is reasonable.
+ Left unconfigured (missing from the config), this defaults to 0.1  (or 
100,000 objects). The config file's inital setting of 0.3 (or 300,000 objects) 
is a conservative starting point.
  
  ''Note: The value is applied on a per column-family basis.''
  

Reply via email to