Back to Blog

What’s under the hood in Cassandra 2.0

date: September 3, 2013

The headlining features in 2.0 are lightweight transactionsCQL enhancements, and triggers. But 2.0 also features a lot of internal optimizations and improvements!

Performance optimization

Spring cleaning

  • Removed compatibility with pre-1.2.5 sstables and pre-1.2.9 schema. Upgrade through the latest version of 1.2.9 first.
  • SuperColumns are gone internally, replaced by composite cells. The SuperColumn API is retained and translated transparently to maintain backwards compatibility. (Richard Low has a good writeup of why supercolumns are obsolete.)
  • The potentially dangerous countPendingHints JMX call has been replaced by a Hints Created metric, which is performant enough to be monitored regularly besides eliminating the posibility of OOM-ing your node.
  • The on-heap partition cache has been removed, leaving only the off-heap option.
  • Vnodes are on by default, and the old token range bisection code for non-vnode clusters is gone. When not using vnodes, specify a token manually or one will be chosen randomly.
  • Removed emergency memory pressure valve logic. The intent here was to give operators enough breathing room to fix misconfigurations causing heap pressure, but it was never as reliable as we would have liked. And now that the important storage engine metadata has been moved off-heap, memory shortages will be obvious much earlier.

Operational concerns

Subscribe to Our Blog Now

Thank You for Signing Up!