
Explore Cassandra basics, from distributed high-availability design and NoSQL concepts to setting up, modeling schemas, and understanding read and write paths, with Java code examples.
Relational databases remain a mature default data store, offering SQL and ACID transactions. Yet their single-server architecture and scalability limits motivate Cassandra's distributed, always-on approach for high-scale applications.
Explore the acid properties—atomicity, consistency, isolation, and durability—with examples on bank transfers, referential integrity, concurrency locks, and read-after-write linearizability.
Unpack how to scale relational databases with vertical and horizontal strategies, including sharding and bounded-context microservices, while balancing acid properties and cross-server transactions via two-phase commit.
Explore two-phase commit for distributed databases, detailing phase one where all servers prepare and phase two where they commit together, and discuss overhead, network failures, and CAP theorem trade-offs.
Learn the cap theorem's two-out-of-three guarantees—consistency, availability, and partition tolerance—and how distributed systems choose between consistency and availability, with eventual consistency when partitions occur.
Learn how Cassandra balances availability and partition tolerance with tunable consistency, enabling 100% consistency or high availability depending on application needs such as banking, medical records, shopping, and social media.
Explore when to use RDBMS versus NoSQL in microservices, understand indexing and data modeling for Cassandra, and why relational databases remain the best choice for transactional workloads.
Explore relational databases’ ACID strengths and scalability limits, and learn how CAP theorem forces choices between consistency and availability in distributed systems like Cassandra.
Explore how Apache Cassandra, an open source NoSQL distributed database, offers scalability, high availability, fault tolerance, and tunable consistency including eventual consistency across nodes and cloud infrastructure.
Explore when to use Apache Cassandra for big data, rapid writes, and high availability, and when to avoid it in favor of relational databases.
Install apache cassandra from cassandra.apache.org, extract, add bin path, start a single-node cluster, and use sql shell to run kql and describe cluster, with java 8 or 11.
Learn to interact with a Cassandra sql shell, describe cluster and keyspaces, create a keyspace with simple replication, and build a basic table with insert and select queries.
Explore how Cassandra handles data with CQL commands, demonstrating upsert behavior, primary-key only queries, and performance considerations when filtering non-key fields, plus truncate and drop table operations.
Explore the internals of Cassandra to understand how a distributed cluster of nodes forms a ring, and how functional and non-functional requirements shape data modeling, schemas, and performance.
Explore cassandra's no master node architecture and data replication across geographies, delivering an eventually consistent, highly available NoSQL store through consistent hashing and hash ring partitioning.
Understand how Cassandra replication creates copies across nodes to meet availability, how replication factor determines copies, and how reads come from replicas without a primary node.
Discover how Cassandra balances availability and consistency, and how tunable consistency levels—such as all, majority (quorum), and one node—affect read and write performance and data availability across data centers.
Cassandra tables share the concept of columns with relational tables, but encourage denormalization, favor narrow tables, and avoid joins and foreign key constraints to scale.
Discover how Cassandra spreads data across partitions to avoid bundling all rows together, using a partition key to split a table by department or city and distribute partitions across nodes.
Understand how partition keys guide Cassandra to split tables into partitions across nodes, with examples using id and department; learn when partition key differs from the primary key.
Explore how Cassandra uses primary keys to uniquely identify rows, how partition keys may repeat and need not be unique, and how composite keys with clustering columns organize data.
Clustering columns sort rows within a partition of a composite primary key, defined at schema creation, using the partition key and roll numbers.
Create a Cassandra table named student with class id and roll number as a composite primary key, demonstrating partitioning, clustering order, upsert behavior, and range queries within a partition.
Analyze how partitioning in Cassandra, using partition keys and clustering columns, distributes data across many nodes and affects queries that lack a partition key.
Explore Cassandra data types, such as text, int, ascii, float, double, and boolean, with notes on size, encoding, and variants like bigint, tinyint, date, time, timestamp, duration, and uuid.
Explore how Uuid as a Cassandra data type enables surrogate keys without auto-increment, generating universally unique identifiers on the client side for primary or partition keys.
Explore Cassandra data modeling by building a student table with uuid, text, date, timestamp, and float; learn partition keys, clustering columns, and query patterns for efficient access.
Explore time uuid, a Cassandra data type that adds time context to uuids, making them sortable. See how to use time uuid for table design and row ordering by time.
Explore collection types in Cassandra: sets, lists, and maps in a single column. Learn denormalized data usage with examples of student hobbies, favorite books, and awards.
Explore Cassandra’s architecture, from data centers, racks, and nodes to cluster topology and routing, and understand how topology shapes data storage and query paths for developers.
Cassandra maps partition keys to a value on token ring using a consistent hash, assigns data to nodes by token range, and uses a coordinator node for reads and writes.
Explore how partition rings distribute data across nodes by the partition key, run through the murmur three hash function, and handle adding and removing nodes as the cluster adjusts.
Cassandra uses replication to prevent data loss from node failures, guided by replication factor and replication strategy. A replication factor of three copies the data to the next nodes.
Explore how Cassandra's tunable consistency and replication factor shape write completion across multiple nodes. Understand how consistency levels such as one and all affect reads and replication coordination.
Explore how Cassandra handles read consistency and read repair across replicas, comparing all and one levels, and how read repair fixes outdated data; quorum is a popular option discussed.
Explore Cassandra consistency levels, from all to quorum, and learn how replication factor, local quorum, and data centers shape reads, writes, and availability.
Explore how Cassandra uses multiple data centers, quorum, and local quorum with replication factor to enable cross-geo writes and asynchronous inter-data center transfers for transactions and batch processing.
Cassandra uses a gossip protocol to keep every coordinator node aware of the cluster topology, the hash function, node health, and changes, enabling writes with chosen consistency and hinted handoff.
Explore Cassandra's write path from commit log to mem table and SS table files, including the log structured merge tree, compaction, tombstones, and how timestamps guide updates.
Explore Cassandra's read path, from mem table queries to sstable scans, bloom filters, and timestamp-based merging, and learn when read repair and compaction optimize reads.
Discover why Cassandra prioritizes writes over reads, with in-memory commit logs and memtables, and how bloom filter and partition key and clustering columns speed read paths and influence compaction.
Connect a Java program to Apache Cassandra with the DataStax driver, using a Maven IntelliJ project and the keyspace main to run a select query and print results.
Compare Cassandra with relational databases, explain the Cap theorem, and cover Cassandra internals, data modeling, partitions, clustering, and Spring Boot demos.
Dive into the world of Apache Cassandra—one of the most powerful and popular NoSQL databases trusted by tech giants for mission-critical workloads. This course takes you beyond the basics of relational databases, unveiling how Cassandra’s ring-based architecture and fault-tolerant design eliminate bottlenecks and single points of failure. You’ll explore how to replicate data across multiple nodes—and even across different data centers—so your applications can stay online even when hardware or network disruptions occur.
Through a blend of theory and hands-on demonstrations, you’ll master Cassandra’s data modeling best practices—using partition keys, clustering columns, and denormalization to create schemas perfectly tailored for high-speed writes and large-scale reads. You’ll also learn how Cassandra balances performance and correctness with tunable consistency, giving you control over just how “up-to-date” your data needs to be in any given query. And you’ll see how practical features like TimeUUIDs, collections, and secondary indexes fit into real-world use cases.
By the end of the course, you’ll have the skills to set up your own Cassandra cluster, craft your data models, and confidently run CQL queries. Whether you’re building a global application with millions of users or simply want a deeper understanding of distributed databases, this course will equip you with the knowledge and hands-on experience to harness Cassandra’s speed, resilience, and scalability in your next project.