Apache Cassandra Fundamentals
Apache Cassandra is a distributed NoSQL database designed for high write throughput and availability across multiple data centers. It uses a peer-to-peer architecture with tunable consistency, making it suited for workloads that prioritize uptime and horizontal scalability over strong transactional guarantees.
itDatabases and data storage | OpenSkills.info
Intro
Apache Cassandra Fundamentals
Apache Cassandra is an open-source, distributed NoSQL database. It stores data across a cluster instead of making one server the permanent center of every operation.
That design serves a specific need. Some applications must keep accepting reads and writes as data volume grows or individual machines fail. Cassandra distributes partitions, keeps replicas, and lets any suitable node coordinate a request.
Cassandra is not a general replacement for a relational database. It favors predictable, partition-oriented access over joins and cross-partition transactions. You get the most value when you know the application's queries before you design its tables.
The core mental model
Think in three layers:
- The data model turns an application query into a table and primary key.
- The cluster maps each partition to a token range and stores replicas on several nodes.
- The storage engine records each write in a commit log and memtable, then flushes immutable SSTables to disk.
A client can contact any node. That node becomes the coordinator for the request. The coordinator finds the replicas for the partition, sends the request, and waits for enough replica responses to satisfy the chosen consistency level.
No node owns a special primary-server role for the whole database. Replicas can accept mutations for the token ranges they hold. This multi-primary structure helps Cassandra continue operating through node failures.
Continue the course
This section is part of the paid course.
See pricing to subscribe, or log in if you already have access.
Where this skill leads
Relevant careers
See how this topic contributes to broader role-level skill maps.
Sources
- https://cassandra.apache.org/doc/5.0/cassandra/getting-started/index.html
Supports
- Official beginner path through installation, configuration, data access, drivers, and production recommendations
- Getting-started link rationale and ordered learning path
- https://cassandra.apache.org/doc/5.0/cassandra/architecture/overview.html
Supports
- Cassandra as an open-source distributed NoSQL database with a partitioned wide-column model
- Keyspaces, tables, partitions, rows, columns, and CQL capabilities
- Unsupported distributed joins, foreign keys, referential integrity, and cross-partition transactions
- Operational tools, snapshots, and incremental backups
- https://cassandra.apache.org/doc/5.0/cassandra/architecture/dynamo.html
Supports
- Consistent-hash token ring, token ranges, virtual nodes, and scale-out behavior
- Multi-primary replication, coordinators, replicas, and tunable consistency
- Replication factor, NetworkTopologyStrategy, datacenter factors, racks, and snitches
- Last-write-wins mutation reconciliation
- https://cassandra.apache.org/doc/5.0/cassandra/architecture/storage-engine.html
Supports
- Log-structured merge storage-engine orientation and write-path tradeoffs
- Commit log, memtable, immutable SSTable, Bloom filter, and flush behavior
- Compaction, read amplification, and write amplification
- SSTable row ordering by partition and clustering keys
- https://cassandra.apache.org/doc/5.0/cassandra/architecture/guarantees.html
Supports
- Cassandra availability, durability, scalability, and eventual-consistency guarantees
- Linearizable lightweight transactions
- CAP tradeoff terminology used in the course
- https://cassandra.apache.org/doc/5.0/cassandra/developing/data-modeling/intro.html
Supports
- Query-driven data modeling and table-per-query reasoning
- Denormalization because joins are not supported
- Partition-key distribution and the cost of multi-partition reads
- Modeling from application access patterns
- https://cassandra.apache.org/doc/5.0/cassandra/developing/cql/index.html
Supports
- CQL version 3 and its SQL-like table, row, and column surface
- CQL reference scope for schema, data manipulation, indexing, functions, and security
- https://cassandra.apache.org/doc/5.0/cassandra/developing/cql/ddl.html
Supports
- Keyspaces, tables, primary keys, replication strategy, and replication factor
- Primary-key grammar and table schema concepts
- https://cassandra.apache.org/doc/5.0/cassandra/managing/operating/compaction/overview.html
Supports
- SSTable merging and compaction types
- Tombstones, time to live expiration, grace periods, and deletion safety
- Compaction as ongoing input and output work
- https://cassandra.apache.org/doc/5.0/cassandra/managing/operating/repair.html
Supports
- Hints as best effort and repair as replica synchronization
- Token-range comparison, Merkle trees, and difference streaming
- Incremental and full repair behavior and resource cost
- Need to complete repair before tombstone grace expires
- https://cassandra.apache.org/doc/5.0/cassandra/managing/operating/index.html
Supports
- Official operating areas for backups, compaction, hints, monitoring, repair, security, and topology changes
- Production-ownership link rationale
