Sunteți pe pagina 1din 5

Oracle12cOBIEE

CassandraTraining
3 Day Course

Cassandra Training

3 Day Course

Course Description
The Apache Cassandra course starts with the fundamental concepts of using a highly-scalable,
column-oriented database to implement appropriate use cases. It will cover topics like
Cassandra Data models, Cassandra Architecture, Differences between RDBMS and Cassandra
to name a few. There will be many challenging, practical and focused hands-on exercises for
the learners during this course.

Course Training Objectives


Course Objectives
After the completion of 'Apache Cassandra' course, you should be able to:
1. Understand Cassandra and NoSQL domain.
2. Create Cassandra cluster for different kinds of applications.
3. Understand Apache Cassandra Architecture.
4. Design and model Applications for Cassandra.
5. Port existing application from RDBMS to Cassandra.
6. Learn to use Cassandra with various programming languages

Who should go for this course?


The following professionals can go for the course:
1. A developer working with large-scale, high-volume websites.
2. An application architect or data architect who needs to understand the available options for
high-performance, decentralized, elastic data stores.
3. A database administrator or database developer currently working with standard relational
database systems who needs to understand how to implement a fault-tolerant, eventually
consistent data store.
4. A manager who wants to understand the advantages (and disadvantages) of Cassandra and
related columnar databases to help make decisions about technology strategy.

1/25/2016

Page 2

Cassandra Training

3 Day Course

5. A student, analyst, or researcher who is designing a project related to Cassandra or other


non-relational data store options.

Pre-requisites
This course assumes no prior knowledge of Apache Cassandra or any other NoSQL database.
Though some familiarity with Linux command line is essential, minimal exposure to Java,
database or data-warehouse concepts is required.

Course Outline
1. Getting Started with Cassandra
Learning Objectives - After this module students will be able to:
Explain the differences between NoSQL and RDBMS databases, Explain what the various
NoSQL databases are, Explain the various Cassandra features, Explain why Cassandra scores
over other NoSQL databases, Distinguish between use cases when Cassandra is a strong
choice and when it is not, Understand the use cases where Cassandra is implemented.
Topics - Quick Review of RDBMS: Transactions, ACIDity, Schema, Two Phase Commit,
Sharding and Share Nothing Architecture, Feature Based, Key Based, Lookup Table Based,
NoSQL Databases, Brewers CAP Theorem, Cassandra Definition and Features, Distributed and
Decentralized, Elastic Scalability, High Availability and Fault Tolerance, Tunable Consistency,
Strict Consistency, Casual Consistency, Weak (Eventual Consistency), Column Orientation,
Schema Free, High Performance, USE Cases for Cassandra, Cassandra Installation.

2. Understanding Cassandra Data Model


Learning Objectives - After this module students will be able to:
Run basic Cassandra commands, Understand Design differences between RDBMS and
Cassandra data model, Describe What a Cassandra cluster is, Describe what a Keyspace is,
how it relates to Cluster and what is stored in the Keyspace, Explain what a Column Family is,
Explain the primary key and its uses, Explain the parts of the compound primary Key, Explain
what a partition key is, Explain how data is stored in a partition, Explain how clustering columns
ensure that the stored data will be clustered in a partition, Explain secondary indexes and there
implications, Explain how Cassandra locate data in the data cluster, Explain expiring column
and Time to Live (TTL).
Topics - Installing Cassandra, Running the Command-Line Client Interface, Basic CLI
Commands, Help, Connecting to a Server, Describing the Environment, Creating and Keyspace
and Column Family, Writing and Reading Data, The Relational Data Model, Simple Introduction,
Cluster, Keyspaces, Column Families, Column Family Options, Columns, Wide Rows, Skinny
Rows, Column Sorting, Super Columns, Composite Keys, Design Differences between RDBMS
1/25/2016

Page 3

Cassandra Training

3 Day Course

and CASSANDRA, Query Language, Referential Integrity, Secondary Indexes, Sorting,


Demoralization, Design Patterns, Materialized Views.

3. Understanding Cassandra Architecture


Learning Objectives - After this module students will be able to:
Explain what happens during the read and write operations, Explain how Cassandra
accomplishes some of its basic notable aspects, such as durability and high availability.
Understand more complex inner workings, such as the gossip protocol, hinted handoffs, read
repairs, Merkle trees etc., Understand Staged Event-Driven Architecture (SEDA).
Topics - System Keyspace, Peer-To-Peer, Gossip and Failure Detection, Anti-Entropy and
Read Repair, MemTables, SSTables, and Commit Logs, Hinted Handoff, Compaction, Bloom
Filters, Tombstones, Staged Event-Driven Architecture (SEDA), Read, Mutation, Gossip,
Response, Anti-Entropy, Load Balance, Migration, Streaming, Managers and Services,
Cassandra Daemon, Storage Service, Messaging Service, Hinted Handoff Manager.

4. Creating Sample Application


Learning Objectives - After this module students will be able to:
Analyze the requirements for a Cassandra use case and apply data modeling techniques,
Identify the challenges faced by RDBMS, Identify the design consideration for designing
Cassandra data model, Understand how data modeling differs in Cassandra from traditional
relational databases, Understand how to De-Normalize RDBMS data, Demonstrate how the
queries are used to design Cassandra data model, Demonstrate ability to apply data modeling
concepts to various exercises that are given during the class, Understand the implications of the
client side joins when writing application that access data in Cassandra, Able to insert data,
perform batch updates and search column families.
Topics - Database Design, Sample Application RDBMS Design, Sample Application
Cassandra Design, Application Code, Creating Database, Loading Schema, Data Structures,
Setting Connections, Population of database, Application Features.

5. Configuring, Reading and Writing Data in Cassandra


Learning Objectives - After this students will be able to:
Understand what Replicas are, Understand various replica Placement Strategies, Understand
Partitions, Understand Snitches, Create Clusters, Understand Dynamic Ring Participation,
Understanding Security with in Cassandra, Understand Miscellaneous Settings and various
additional tools in Cassandra, Understand Basic read and Write Properties, Understand what
Slice Predicates are.
Topics - Key spaces, Replicas, Replica Placement Strategy, Replication Factor, Partitioned,
1/25/2016

Page 4

Cassandra Training

3 Day Course

Snitches, Creating Clusters, Dynamic Ring Participation, Security, Miscellaneous Settings,


Additional Tools, Query differences between RDBMS and Cassandra, Basic Write Properties,
Consistency Level, Basic Read Properties, API's, Set Up and Inserting Data, Slice Predicate,
Get Range Slices, Multiget Slice, Deleting, Programmatically Defining Keyspaces and Column
Families.

6. Integrating Cassandra with Hadoop


Learning Objectives - After this module students will be able to:
Understand what Hadoop is and how it is used, Describe Cassandra File System, Start working
with Map Reduce, Understand tools above Map Reduce like Pig and Hive and how they work
with Cassandra, Understand Cluster Configuration, Understand live use cases.
Topics - Hadoop, MapReduce, Cassandra Hadoop Source Package, Outputting Data to
Cassandra, PIG, HIVE, Use Cases.

7. CQL
Learning Objectives - After this module the will be able to:
Perform Data Definition Language (DDL) Statements within Cassandra, Perform Data
Manipulation Language (DML) Statements within Cassandra, Create and modify Users and
User permission within Cassandra, Capture CQL output to a file, Import and export data with
CQL, Execute CQL scripts from within CQL and from the command prompt.
Topics - Data Definition language(DDL) Statements, Data Manipulation Language (DML),
Create and modify Users, User permission, Capture CQL output to a file, Import and export
data, CQL scripts from within CQL, CQL Scripts from the command prompt.

8. Clients and Live Project


Learning Objectives - After this module students will be able to:
Understand what Thrift is, Understand Cassandra web console, Demonstrate ability to
implement the concepts learned during the course on a real life problem.
Topics - Basic Client API, Thrift, Thrift Support for Java, Exceptions, Thrift Summary, Cassandra
Web Console, Hector (Java), Features, Hector API, Live Project.

1/25/2016

Page 5

S-ar putea să vă placă și