Duration
3 days
Overview
This Cassandra for Developers training class is technical and comprehensive, with a focus on the practical aspects of working with C*. Students learn tcreate data models with Cassandra and learn enough about the internal architecture tmake good decisions. This class is hands-on, with plenty of labs. It covers CQL (Cassandra Query Language) in depth, as well as covering the Java API for writing Cassandra clients.
Prerequisite
Reasonable Java experience for the Java driver labs, some knowledge of databases.
Section 1: Introduction t0Big Data / NoSQL
NoSQL overview
CAP theorem
When is NoSQL appropriate
Columnar storage
NoSQL ecosystem
Section 2 : Cassandra Basics
Design and architecture
Cassandra nodes, clusters, datacenters
Keyspaces, tables, rows and columns
Partitioning, replication, tokens
Quorum and consistency levels
Labs : interacting with cassandra using CQLSH
Section 3: Data Modeling – part 1
introduction tCQL
CQL Datatypes
creating keyspaces & tables
Choosing columns and types
Choosing primary keys
Data layout for rows and columns
Time tlive (TTL)
Querying with CQL
CQL updates
Collections (list / map / set)
Labs : various data modeling exercises using CQL ; experimenting with queries and supported data types
Section 4: Data Modeling – part 2
Creating and using secondary indexes
composite keys (partition keys and clustering keys)
Time series data
Best practices for time series data
Counters
Lightweight transactions (LWT)
Labs : creating and using indexes; modeling time series data
Section 5 : Data Modeling Labs : Group design session
multiple use cases from various domains are presented
students work in groups tcome up designs and models
discuss various designs, analyze decisions
Lab : implement one of the scenari
Section 6: Cassandra drivers
Introduction tJava driver
CRUD (Create / Read / Update, Delete) operations using Java client
Asynchronous queries
Labs : using Java API for Cassandra
Section 7 : Cassandra Internals
understand Cassandra design under the hood
sstables, memtables, commit log
read path / write path
caching
vnodes
Section 8: Administration
Hardware selection
Cassandra distributions
Cassandra best practices (compaction, garbage collection,)
troubleshooting tools and tips
Lab : students install Cassandra, run benchmarks
Section 9: Bonus Lab (time permitting)
Implement a music service like Pandora / Spotify on Cassandra
Programme scope, delivery arrangements and suitability are confirmed during enquiry.