Course Outline
- Section 1: Introduction to Big 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 to CQL
- CQL Datatypes
- creating keyspaces & tables
- Choosing 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 come up designs and models
- discuss various designs, analyze decisions
- Lab : implement one of the scenario
- Section 6: Cassandra drivers
- Introduction to Java 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
- Installing Cassandra
- Running benchmarks
- Tooling for monitoring performance and node activities
- DataStax OpsCenter
- Diagnosting 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
- comfortable with Java programming language
- comfortable in Linux environment (navigating command line, editing files with vi / nano)
Lab environment:
A working Cassandra environment will be provided for students. Students would need an SSH client and a browser to access the cluster.
Zero Install : There is no need to install Cassandra on students’ machines!
Delivery Options
Private Group Training
Our identity is rooted in delivering exactly what our clients need.
- Pre-course call with your trainer
- Customisation of the learning experience to achieve your goals -
- Bespoke outlines
- Practical hands-on exercises containing data / scenarios recognisable to the learners
- Training scheduled on a date of your choice
- Delivered online, onsite/classroom or hybrid by experts sharing real world experience
Private Group Prices RRP from €6840 online delivery, based on a group of 2 delegates, €2160 per additional delegate (excludes any certification / exam costs). We recommend a maximum group size of 12 for most learning events.
Contact us for an exact quote and to hear our latest promotions
Public Training
Please see our public courses
Testimonials (3)
The 1:1 style meant the training was tailored to my individual needs.
Andy McGuigan
Course - Cassandra Administration
Topics approached. Very complete.
Carlos Eloi Barros
Course - Cassandra for Developers
Trainer had good practical knowledge about using Cassandra day-to-day at least for development purposes. Catering (snacks, coffee hour) were great 3 days length was good.