Get in Touch

Course Outline

  • Section 1: Introduction to Big Data / NoSQL
    • NoSQL overview
    • CAP theorem
    • When NoSQL is appropriate
    • Columnar storage
    • NoSQL ecosystem
  • Section 2 : Cassandra Basics
    • Design and architecture
    • Cassandra nodes, clusters, and datacenters
    • Keyspaces, tables, rows, and columns
    • Partitioning, replication, and tokens
    • Quorum and consistency levels
    • Labs : interacting with Cassandra using CQLSH
  • Section 3: Data Modeling – part 1
    • Introduction to CQL
    • CQL Data types
    • Creating keyspaces & tables
    • Selecting columns and types
    • Choosing primary keys
    • Data layout for rows and columns
    • Time to live (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 to design models
    • Discuss various designs, analyze decisions
    • Lab : implement one of the scenarios
  • Section 6: Cassandra drivers
    • Introduction to the Java driver
    • CRUD (Create / Read / Update, Delete) operations using the Java client
    • Asynchronous queries
    • Labs : using the Java API for Cassandra
  • Section 7 : Cassandra Internals
    • Understanding Cassandra design under the hood
    • SSTables, memtables, and commit log
    • Read path / write path
    • Caching
    • vnodes
  • Section 8: Administration
    • Hardware selection
    • Cassandra distributions
    • Installing Cassandra
    • Running benchmarks
    • Tooling for monitoring performance and node activities
      • DataStax OpsCenter
    • Diagnosing Cassandra performance issues
    • Investigating a node crash
    • Understanding data repair, deletion, and replication
    • Other troubleshooting tools and tips
    • Cassandra best practices (compaction, garbage collection,)
  • Section 9: Bonus Lab (time permitting)
    • Implement a music service like Pandora / Spotify on Cassandra

Requirements

  • Familiarity with the Java programming language
  • Comfort in a Linux environment (command line navigation, file editing using vi / nano)

Lab environment:

A functional Cassandra environment will be provided for students. Students will need an SSH client and a web browser to access the cluster.

Zero Install : No installation of Cassandra is required on students’ machines!

 21 Hours

Number of participants


Price per participant

Testimonials (1)

Upcoming Courses

Related Categories