The beta of Apache Cassandra 4.0 is now generally available. The latest version of the NoSQL database promises new observability functionality, an audit logging feature and up to five times faster scaling.
According to the developers of Cassandra, the latest version is more stable than ever. Version 4.0 includes 1000 bug fixes and many new features. According to Ben Bromhead, CTO of Cassandra consulting company Instaclustr, the Cassandra community had a hard time finding the right balance of new features, stability and performance.
Zero Copy Streaming
Cassandra streams data between nodes during scaling, such as adding new nodes or data centers at peak times. Zero Copy Streaming makes this up to five times faster compared to previous versions. This results in a more elastic architecture in cloud and Kubernetes environments.
Cassandra synchronises data replicas with a process called repair. Many of the basic principles of the incremental repair algorithm have been rewritten for optimisation, resulting in a faster and less intensive process to maintain consistency between data replicas.
The latest version of Cassandra features an audit logging feature for operators to track activities regarding data manipulation language (DML), data definition language (DDL) and data control language (DCL) with minimal impact on normal workloads. Another addition is the Full Querry Logging tool that allows users to capture and replay production workloads for analytical purposes.
Cassandra clusters have been observed via JMX and open-source tools such as Instaclustrs Cassandra Exporter and Metrics Collector from DataStax for many years. In the most recent version of Cassandra, it is now possible to selectively expose system statistics and configuration settings via Virtual Tables. This provides flexibility for operators to ensure that the implementations run smoothly.
Official support for Java 11 is not available in the latest version of Cassandra, but this support is expected to come in the next version. However, Cassandra 4.0 does include the Java 11 feature called Z Garbage Collector (ZGZ). The feature aims to reduce the GC pause times to a maximum of a few milliseconds. Garbage collection (GC) is the process by which Java removes data that is no longer needed from memory. This function is currently still experimental and first needs to be tested extensively.
The full version of Cassandra 4.0 is expected to be released towards the end of the year.