AWS operators often ask what storage they should use to get the best price-performance for Apache Cassandra.
Developers want to use Amazon Elastic Block Store (Amazon EBS) instead of instance storage with Cassandra.
Amazon EBS offers several advantages over an instance store that make it a solid choice.
In this post, we discuss the basics of improving the performance of Amazon EBS with Cassandra to take advantage of the operational benefits.
Linux iostat is a general-purpose tool to help you understand your I/O usage at a high level.
You can find out your readahead by running a command and looking at the RA column for each device.
Tuning compression, picking the right compaction strategy, and reducing—but not eliminating—readahead can minimize read amplification and keep your Cassandra cluster performance running consistently on Amazon EBS while reducing required IOPS.
With the right tooling, monitoring, and configuration tuning, you can achieve great price-performance for running Cassandra deployments on EBS volumes while benefiting from operational advantages over ephemeral instance storage.
Jon Haddad is an Apache Cassandra committer specializing in performance tuning, fixing broken clusters, and cost optimization.
He previously worked on some of the biggest Cassandra deployments in the world.