Article Categories
- All Categories
-
Data Structure
-
Networking
-
RDBMS
-
Operating System
-
Java
-
MS Excel
-
iOS
-
HTML
-
CSS
-
Android
-
Python
-
C Programming
-
C++
-
C#
-
MongoDB
-
MySQL
-
Javascript
-
PHP
-
Economics & Finance
Node in Apache Cassandra
Apache Cassandra is an open-source NoSQL database written in Java, designed for high availability with no single point of failure. Nodes are the fundamental building blocks of Cassandra's distributed architecture, forming a peer-to-peer ring structure.
Node in Cassandra
Each node holds actual data along with metadata (location, data center, keyspaces, tables, schema). Nodes form a ring where every node is equal no master/slave hierarchy. Data is distributed across nodes using a partitioner, and replicas are stored on multiple nodes for fault tolerance.
Types of Nodes
| Type | Role |
|---|---|
| Seed Node | Bootstraps the cluster, helps new nodes discover others |
| Regular Node | Stores data, participates in read/write operations |
| Client Node | Accesses cluster data but does not store data itself |
Node Operations
- Read/Write Store and retrieve data; any node can respond to requests.
- Gossip Protocol Nodes communicate peer-to-peer to share cluster state.
- Anti-entropy Detect and repair data inconsistencies across replicas.
- Repair Reconcile differences between nodes.
Nodetool
nodetool is the CLI utility for managing nodes (located in bin/ directory) ?
# List all commands nodetool help # Check cluster status nodetool status # Get node info nodetool info
Adding and Removing Nodes
Adding Start a new node and it automatically joins the cluster via bootstrapping. Tokens are assigned and data is replicated to the new node.
Removing The departing node's token ranges are reassigned to remaining nodes, and data is replicated accordingly. Run nodetool cleanup on remaining nodes afterward.
Conclusion
Nodes are the core of Cassandra's distributed architecture, forming a peer-to-peer ring with no single point of failure. Each node stores data and participates equally in operations. Adding or removing nodes is straightforward, enabling horizontal scalability and continuous availability.
