Cassandra on Google Cloud
TAU T2A Virtual Machines Powered by Ampere Altra Processors
Ampere® Altra® processors are designed from the ground up to deliver exceptional performance for Cloud Native applications such as Apache Cassandra. With an innovative architecture that delivers high performance, linear scalability, and amazing energy efficiency, Ampere Altra allows workloads to run in a predictable manner with minimal variance under increasing loads. This enables industry leading performance/watt and a smaller carbon footprint for real-world workloads such as Cassandra.
Google Cloud offers the cost-optimized Tau T2A VMs powered by Ampere Altra processors for scale-out Cloud Native workloads in multiple predetermined VM shapes – up to 48 vCPUS per VM, 4 GB of memory per vCPU, up to 32 Gbps networking bandwidth, and a wide range of network-attached storage options. These VMs are suitable for scale-out workloads such as web servers, containerized microservices, data-logging processing, media transcoding, and Java applications.
Apache Cassandra is an open-source NoSQL distributed database trusted by thousands of companies for scalability and high availability without compromising performance. Linear scalability and proven fault tolerance on commodity hardware or cloud infrastructure make it the perfect platform for mission-critical data.
In this workload brief, we compare Cassandra running on Google Cloud Tau T2A VMs powered by Ampere Altra processors to the Intel® Xeon®Ice Lake-based n2-standard and AMD EPYC™ Milan-based n2d-standard VMs while measuring the throughput and latencies on each of these instances.
As seen in Figure 1, we observed a 10% improvement in performance on the GCP t2a-standard VMs powered by Ampere Altra processors compared to the Intel Ice Lake N2 and the AMD Milan N2D VMs, all under a p.99 SLA of 10 ms.
As seen in Figure 2, we observed up to a 40% improvement in price-performance on the GCP t2a-standard VMs powered by Ampere Altra processors compared to the Intel Ice Lake VMs, and 25% better than the AMD Milan ones.
Our tests were performed using the cassandra-stress tool as a load generator for Cassandra. Each test was configured to run for 3 minutes with multiple threads and clients.
It is recommended to compile Cassandra with JDK-15 (compiled with GCC 10.2 with the right flags) or newer as newer Java versions have made significant progress towards generating optimized code that can improve performance for aarch64 applications.
The G1 garbage collector was used with appropriate memory and the number of threads. Cassandra’s data was stored on an NVMe disk drive, while the commit log was stored on tmpfs.
Ubuntu 20.04 was used with Cassandra 4.0.1. For each of the tests, a similar number of clients were used to generate requests to Cassandra.
Since it is realistic to measure throughput under a specified Service Level Agreement (SLA), a 99th percentile latency (p.99) of 10 ms was used. This ensured that 99% of the requests had a worst-case response time of 10 ms.
The test ran for 3 minutes with warmup with 90% write and 10% read, which is a critical usage for Cassandra, as Cassandra is optimized for write operations. An appropriate number of clients and threads to load one instance of Cassandra was initially used while ensuring the p.99 latency was at most 10 ms.
Next, the number of Cassandra instances was successively increased till one or more instances violated the p.99 latency SLA. The aggregate throughput of all instances was used as the primary performance metric. The test was run three times and minimal run-to-run variation was observed.
Distributed NoSQL databases such as Cassandra manage a large volume of data with great ease and scalability and are popular in cloud deployments. Our tests showed up to a 10% performance advantage and up to 40% price-performance advantage for Ampere Altra-based Google Tau T2A VMs compared to the legacy x86 VMs. For cloud application developers, choosing Ampere Altra-based VMs on Google Cloud means better performance and price-performance while reducing your carbon footprint.
For more information about the Google Tau T2D Virtual Machines with Ampere Altra processors, visit the Google Cloud blog.
All data and information contained herein is for informational purposes only and Ampere reserves the right to change it without notice. This document may contain technical inaccuracies, omissions and typographical errors, and Ampere is under no obligation to update or correct this information. Ampere makes no representations or warranties of any kind, including but not limited to express or implied guarantees of noninfringement, merchantability, or fitness for a particular purpose, and assumes no liability of any kind. All information is provided “AS IS.” This document is not an offer or a binding commitment by Ampere. Use of the products contemplated herein requires the subsequent negotiation and execution of a definitive agreement or is subject to Ampere’s Terms and Conditions for the Sale of Goods.
System configurations, components, software versions, and testing environments that differ from those used in Ampere’s tests may result in different measurements than those obtained by Ampere.
©2022 Ampere Computing. All Rights Reserved. Ampere, Ampere Computing, Altra and the ‘A’ logo are all registered trademarks or trademarks of Ampere Computing. Arm is a registered trademark of Arm Limited (or its subsidiaries). All other product names used in this publication are for identification purposes only and may be trademarks of their respective companies.
Ampere Computing® / 4655 Great America Parkway, Suite 601 / Santa Clara, CA 95054 / amperecomputing.com