Cassandra Admin study materials
Cassandra Admin study resources

Cassandra Admin key terms

Cassandra Admin · Get comfortable with the vocabulary.

Gossip protocol

Cassandra's peer-to-peer protocol for exchanging node state (status, load, schema version, tokens) every second. Nodes contact a few random peers, so cluster membership converges without a central coordinator or dedicated master.

Related: Seed node, Token
Seed node

A node listed in the seeds property that new or restarting nodes contact first to learn the current topology through gossip. Seeds are bootstrap contacts, not a special role, and not a single point of failure.

Related: Gossip protocol
Token

A value in the ring's hash space that determines which node owns a row. Each node claims one token, or many with vnodes; a partition key hashes to a token that selects its replicas.

Related: Vnode, Partition key
Vnode

An abstraction giving each node many small token ranges instead of one large range. With num_tokens raised, data spreads more evenly and streams stay smaller when nodes join or leave.

Related: Token, num_tokens
Commit log

An append-only on-disk log recording every write before it reaches memory. It provides durability: after a crash, unflushed writes are replayed from the commit log into memtables.

Related: Memtable, Write path
Memtable

An in-memory sorted write buffer for one table. Writes land here after the commit log; when it passes its threshold it is flushed to disk as an immutable SSTable and then discarded.

Related: SSTable, Commit log
SSTable

An immutable sorted file on disk holding rows of one table, with index, filter, and statistics components. SSTables are never modified in place; updates create new tables and compaction later merges them.

Related: Memtable, Compaction strategy
Hinted handoff

A temporary buffering mechanism: when a replica is unreachable, the coordinator stores a hint and delivers it after the node returns. Hints expire after the configured window and never replace repair.

Related: Coordinator node, nodetool repair
cassandra.yaml

The main per-node configuration file, defining cluster name, listen and broadcast addresses, seeds, snitch, directories, and tuning for commit log, caches, compaction, and timeouts.

Related: num_tokens, Snitch
num_tokens

A setting for how many vnodes a node owns. Modern defaults are small (16); raising it spreads data more evenly but increases overhead, streaming time, and repair bookkeeping.

Related: Vnode, Bootstrap
Bootstrap

The process of adding a new node, which streams its assigned ranges from existing replicas before joining the ring. Starting without bootstrap leaves the node owning no data.

Related: Vnode, nodetool status
Partition key

The first column or columns of a primary key. Its hash picks the token and therefore the replicas; all rows with the same partition key are stored together as one partition.

Related: Token, Clustering column
Clustering column

A primary key column after the partition key that sorts rows inside a partition and makes them unique in that order. Filtering on it avoids ALLOW FILTERING for range and slice queries.

Related: Partition key
Denormalization

Deliberately storing the same data in several tables so each query reads one partition. Cassandra discourages joins, so schemas are designed around query patterns instead of normalized entities.

Related: Partition key, Materialized view
TTL

A per-write or per-table expiry in seconds, after which the data is deleted automatically. Expired data becomes tombstones until compaction clears it, so short TTLs add read and write cost.

Related: Tombstone, gc_grace_seconds
Materialized view

A server-maintained copy of a base table with a different primary key, updated automatically on writes. Views add write cost and are widely treated as experimental; manual denormalization is usually preferred.

Related: Denormalization, Partition key
Secondary index

An index on a non-primary-key column, stored locally on each node and queried by scatter-gather across all nodes. Suited to low-cardinality columns; high-cardinality lookups are better served by a dedicated query table.

Related: Partition key, Denormalization
Replication factor

The number of replicas storing each partition, set per keyspace and per data center. A factor of three survives one node failure at QUORUM and is the common production baseline.

Related: Consistency level, Quorum
Consistency level

A per-query setting for how many replicas must acknowledge before the request returns. Values include ONE, QUORUM, LOCAL_QUORUM, and ALL; with replication factor they define which replicas must overlap.

Related: Quorum, Replication factor
Quorum

A majority of replicas: floor(replication factor / 2) + 1. Writing and reading at quorum makes the write set and read set overlap, so a read sees the latest acknowledged write.

Related: Consistency level, Read repair
NetworkTopologyStrategy

A replication strategy that places replicas across racks and data centers using the snitch, so one rack failure cannot take all copies. It is the recommended strategy for production keyspaces.

Related: Snitch, Replication factor
Snitch

A component that reports each node's data center and rack so replication and request routing respect physical layout. Common choices are GossipingPropertyFileSnitch, Ec2Snitch, and the simple defaults used in single-DC test clusters.

Related: NetworkTopologyStrategy
Read repair

Comparing replicas during a read: if digests differ, the coordinator fetches full rows, returns the newest version, and writes it back to stale replicas. It is blocking above certain consistency levels.

Related: Quorum, nodetool repair
Coordinator node

The node receiving a client request. It hashes the partition key, finds the replicas from the keyspace strategy, forwards the request, and merges replies; it may hold no data itself.

Related: Consistency level, Token
Compaction strategy

A per-table policy deciding which SSTables merge and when. Size-tiered suits write-heavy loads, leveled suits read-heavy loads at extra space cost, and time-window suits time-series data with TTLs.

Related: SSTable, Tombstone
Tombstone

A deletion marker written instead of removing data immediately. Tombstones linger for gc_grace_seconds and disappear only at compaction, so many of them slow reads and can trigger failures.

Related: gc_grace_seconds, TTL
gc_grace_seconds

The period tombstones must be kept before compaction may purge them. It must exceed the time needed to repair every replica, or deleted data can reappear after repair.

Related: Tombstone, nodetool repair
Write path

The route a mutation takes: append to the commit log, insert into the memtable, then flush to an SSTable when thresholds trip. Plain writes never read first; counters and lightweight transactions do.

Related: Commit log, Memtable
Bloom filter

A compact probabilistic structure per SSTable that answers whether a key might be present. It has no false negatives, so reads skip SSTables that certainly lack the requested partition.

Related: SSTable
nodetool repair

A command running anti-entropy repair over a node's ranges: it compares Merkle trees with replicas and streams differences. Running it within gc_grace_seconds keeps replicas consistent and lets tombstones purge.

Related: Merkle tree, gc_grace_seconds
Merkle tree

A hash tree built over ranges of table data so repair can compare replicas cheaply. Subtrees with matching hashes are skipped, and only divergent ranges are streamed.

Related: nodetool repair
Snapshot

A point-in-time set of hard links to SSTables, created by nodetool snapshot. It costs little space until compaction removes the originals; pairing it with commit log archives gives a restorable backup.

Related: SSTable, sstableloader
sstableloader

A tool that streams SSTables into a running cluster, computing tokens and sending data to the right replicas. Used to restore snapshots, migrate between clusters, and bulk load offline data.

Related: Snapshot, Token
PasswordAuthenticator

An authenticator validating username and password logins against hashed credentials in the system_auth keyspace. Default credentials must be changed, and system_auth should use a replication factor of three or more.

Related: Role, CassandraAuthorizer
CassandraAuthorizer

An authorizer granting and checking permissions on keyspaces, tables, and roles through GRANT and REVOKE. Permission caches mean changes take effect after the configured polling interval.

Related: Role, PasswordAuthenticator
Internode encryption

TLS protection for gossip and data traffic between nodes, configured with keystore and truststore settings. Without it, replication, repair streams, and hints travel across the network in clear text.

Related: PasswordAuthenticator
Role

A database principal that can hold a password, login rights, and granted permissions, and can be a member of other roles. Roles replaced users and implement role-based access control.

Related: CassandraAuthorizer, PasswordAuthenticator
nodetool status

Reports cluster membership with each node's up/down status, state, load, token count, and ownership. Unexpected ownership or down nodes here are a common first troubleshooting signal.

Related: Bootstrap, Dropped mutations
Dropped mutations

Counters of requests discarded because a thread pool or queue was saturated, shown by nodetool tpstats. Rising drops indicate node overload rather than a network fault.

Related: nodetool status
Upgradesstables

A nodetool command rewriting SSTables into the latest format after an upgrade, enabling newer features and removing old-format overhead. It is I/O heavy, so run it during low traffic.

Related: SSTable, Snapshot