Streaming Change Replication
Couchbase Server 3.0 introduces Database Change Protocol (DCP), an innovative protocol for replicating changes to components, nodes, and data centers via streams. DCP is a fundamental extension of the memory-centric architecture of Couchbase Server, removing IO bottlenecks from indexing, rebalancing, recovery, and replication that lead to improvements ranging from 2x to more than 100x. By leveraging in-memory streams of changes, DCP enables real time processing and administration.
DCP is really why this is not just a better version of Couchbase 2.5.1. With this feature Couchbase is taking its first step to becoming a ACID compliant database.
DCP coupled with ForestDB ,Couchbase’s homegrown data store https://github.com/couchbaselabs/forestdb, we should be seeing transaction between two or more documents in the near future.
Optimization for Massive Data Sets
Couchbase Server 3.0 introduces optimization for massive data sets. By default, Couchbase Server caches all metadata in memory. However, while caching all metadata decreases latency for the entire data set, it may be impractical for massive data sets. With dynamically tunable memory, Couchbase Server can now be configured on the fly to cache a partial or full working set of data in memory, to optimize memory utilization for massive data sets.
The big plus and weakness of Couchbase 2.5.1 and lower was that you always had to have your data sets KEY/META in memory. Now with the ability to Evict KEY/META/VALUE from memory and still store it on disk your only bound by the size of your hard drive.
Faster Cross Data Center Replication
By leveraging DCP, Couchbase Server 3.0 enables faster cross data center replication (XDCR) with memory-to-memory replication. The result is up to 4x lower latency ensuring consistency between multiple data centers. In addition, in the event communication is interrupted, DCP enables data centers to resume replication from where they left off rather than a checkpoint for increased efficiency.
Once again DCP is a big game changer. Before in 2.5.1 before items would be XDCR to another cluster it had to be written to disk first. Now changes are send in real time without having to write to disk first. So the only latancy will be the the WAN or LAN trip to the other cluster.
Faster View Updates
By leveraging DCP, Couchbase Server 3.0 enables faster view updates by applying in-memory changes rather than waiting for all changes to be persisted first. The result is up to 50x lower latency for consistent views. Views can now be leveraged to power real-time dashboards summarizing continuous streams of data.
Yup DCP again. Before the view had to be written to disk first then placed in indexing que. Now items go directly from DCP to indexing que. PLUS a partial rewrite of the map/reduce engine in C also mean a 2X-13X is view indexing performance. If your are using CouchDB now its time to switch just because of that alone
Automatic, Optimized Resource Utilization
Couchbase Server 3.0 introduces a shared thread pool for increased throughput and decreased latency. Couchbase Server automatically configures the shared thread pool with processor detection. In addition, the shared thread pool increases resource utilization with point-in-time workload optimization by allocating threads for reads and writes
CPU are getting cheaper now and customers are now having 8 to 48 cores in a single node. Before those extra CPU would lye idea, but now you can use them all.