After MySQL was acquired by Oracle, the industry has never stopped talking about the Open-source database, and the voice of PostgreSQL will be replaced as the most popular Open-source database. However, from the Db-engines rankings, the gap between PostgreSQL and MySQL is far more than "a few floors" so high (Postgresq not score a fraction of MySQL). Looking at the entire list of 193 databases, we will find that the NoSQL database has accounted for most of the traditional relational database management system only 75.
As the latest ranking of the September, the 2-3 battle between MySQL and Microsoft SQL Server has never stopped while Oracle sits on top of the list. However, regardless of the relational database, we will find that NoSQL's popularity has been greatly increased-in January 2013, MongoDB scored less than 100,cassandra scored only 30, while Cassandra is a few months after the absence of the first 10!
Cassandra was originally developed by Facebook, based on Amazon's proprietary, fully distributed database Dynamo, combined with Google BigTable's column storage type, many of which can be called Dynamo 2.0, and then become the Apache top project. Cassandra, which soon became popular with many companies, including even heavyweight users such as Twitter, disappeared in the near future from Twtter, or even the mainstream product of Facebook, the original author.
Even once the altar was pulled down, Cassandra still has a large number of supporters, including the famous data Open-source software company DataStax, and Cassandra can always be regulated hbase (noble descent, Natural integration with Hadoop) long hogging column storage first is a strong proof of its superiority.
Cassandra can return to top 10 and its 2.0 release is completely inseparable, DataStax CTO and co-founder Jonathan Ellis summed it up:
Three heavy-weight updates
Lightweight transactions: Lightweight transactions ensure linear consistency of operations at the serialization isolation level provided by similar relational databases to prevent conflicts between concurrent requests.
CQL Promotion: CQL (Cassandra Query Language) enhanced index support with features such as cursor enhancement.
Support triggers: Triggers can drive performance-critical code closer to where it processes data, simplifying integration with event-driven frameworks such as Storm.
Other related updates
Performance optimization
Tracking statistics on cluster columns allows you to clear unnecessary sstable in the read path
Single-pass compaction roughly doubles the size of a large slice and reduces the impact of JVM Heap and GC
When compression performance drops, the hierarchical compression performs the size-tiered compression on the L0. Can inhibit performance before the rise of the read performance deterioration, while the new version also significantly increased the LCS sstable volume
For applications that still use thrift, Lmax disrupto and semi-synchronous servers will significantly reduce thtift overhead
Faster partition index queries and cache reads by increasing the memory performance of the heap
Faster compressed data reading by switching from CRC32 to Adler checksums
Jemalloc Support for heap assignment
Removes the partition level of the cloth-lung filter to enhance performance-eliminates the deserialization of the filter in each operation and reduces GC rollover.
Cleaning
Cancels compatibility with the pre-1.2.5 sstable and pre-1.2.9 mode and has been updated to the latest version of 1.2.9
Cancel the supercolumns and replace it with a composite composition. The Supercolumn API is reserved and transparently reverse-compatible after conversion (click to view details)
Potential risk countpendinghints JMX calls are replaced by hints created standards that are high-performance and can be monitored periodically, while eliminating the possibility of OOM nodes
The heap fragment cache is removed, with only the remaining heap options
Default Vnode, the old token range code provided for a vnode cluster disappears. When you do not use the Vnode node, manually specify a token or random selection.
Remove the standby memory load logic. This is to allow operators to have the proper hands-on space to cope with the heap load caused by the improper architecture, but it will never be as reliable as we think. The current important storage engine metadata is moved outside the heap, and memory shortages may explode prematurely.
Operational concerns
Demand Java7
Hierarchical information for hierarchical compression is saved to sstable metadata-each sstable is aware of the information, so a separate list is no longer needed. This makes the hierarchical compression more stable and the snapshot simpler.
Avoid loss of core page cache through optional row preheating
To be more stable and transparent, the stream is rewritten
Streaming supports older versions of sstable means that you do not need to manually run upgradesstables across the cluster before fixing, so you can load the snapshots in batches.