Book Image

Apache Cassandra Essentials

By : Nitin Padalia
Book Image

Apache Cassandra Essentials

By: Nitin Padalia

Overview of this book

Apache Cassandra Essentials takes you step-by-step from from the basics of installation to advanced installation options and database design techniques. It gives you all the information you need to effectively design a well distributed and high performance database. You’ll get to know about the steps that are performed by a Cassandra node when you execute a read/write query, which is essential to properly maintain of a Cassandra cluster and to debug any issues. Next, you’ll discover how to integrate a Cassandra driver in your applications and perform read/write operations. Finally, you’ll learn about the various tools provided by Cassandra for serviceability aspects such as logging, metrics, backup, and recovery.
Table of Contents (9 chapters)
8
Index

Cassandra cluster overview


As mentioned earlier, Cassandra is a peer to peer cluster—no node is master or slave. Data is distributed among all nodes of the cluster using partitioners. This enables Cassandra to shard data transparently, and allows it to scale linearly. This means that Cassandra server performs the data sharding, and the application layer need not implement any additional logic for sharding. As the load grows, new nodes can be added to share the load as Cassandra will distribute the load among them automatically.

For example, let's imagine that we initially have three node cluster, which are capable of handling 3x transactions. Now, suppose that the load is increased to 4x, then we can add one additional node to the cluster without doing any change in our application layer. The following image shows the example where initially we have a three-node cluster with nodes A, B, and C capable of handling load 1x each; hence, the capacity of handling load of 1x + 1x + 1x = 3x. However...