Sign In Start Free Trial
Account

Add to playlist

Create a Playlist

Modal Close icon
You need to login to use this feature.
  • Book Overview & Buying Learning Apache Cassandra
  • Table Of Contents Toc
  • Feedback & Rating feedback
Learning Apache Cassandra

Learning Apache Cassandra

By : Yarabarla
4 (26)
close
close
Learning Apache Cassandra

Learning Apache Cassandra

4 (26)
By: Yarabarla

Overview of this book

Cassandra is a distributed database that stands out thanks to its robust feature set and intuitive interface, while providing high availability and scalability of a distributed data store. This book will introduce you to the rich feature set offered by Cassandra, and empower you to create and manage a highly scalable, performant and fault-tolerant database layer. The book starts by explaining the new features implemented in Cassandra 3.x and get you set up with Cassandra. Then you’ll walk through data modeling in Cassandra and the rich feature set available to design a flexible schema. Next you’ll learn to create tables with composite partition keys, collections and user-defined types and get to know different methods to avoid denormalization of data. You will then proceed to create user-defined functions and aggregates in Cassandra. Then, you will set up a multi node cluster and see how the dynamics of Cassandra change with it. Finally, you will implement some application-level optimizations using a Java client. By the end of this book, you'll be fully equipped to build powerful, scalable Cassandra database layers for your applications.
Table of Contents (15 chapters)
close
close

What this book covers

Chapter 1, Getting Up and Running with Cassandra, introduces the major reasons to choose Cassandra over a traditional relational or document database. It then provides step-by-step instructions on installing Cassandra on various operating systems, creating a keyspace, and interacting with the database using the CQL language and cqlsh tool.

Chapter 2, The First Table, is a walkthrough of creating a table, inserting data, and retrieving rows by primary key. Along the way, it discusses how Cassandra tables are structured, and provides a tour of the Cassandra type system.

Chapter 3, Organizing Related Data, introduces more complex table structures that group related data together using compound primary keys and composite partition keys.

Chapter 4, Beyond Key-Value Lookup, puts the more robust schema developed in the previous chapter to use, explaining how to query for sorted ranges of rows. It also touches upon the JSON support that was introduced in Cassandra 2.2.

Chapter 5, Establishing Relationships, develops table structures for modeling relationships between rows. The chapter introduces static columns and row deletion. This chapter also touches upon secondary indexes and materialized views, which can be used to avoid denormalization of data.

Chapter 6, Denormalizing Data for Maximum Performance, explains when and why storing multiple copies of the same data can make your application more efficient. The chapter introduces batching mechanisms in Cassandra and when to use them.

Chapter 7, Expanding Your Data Model, demonstrates the use of lightweight transactions to ensure data integrity. It also introduces schema alteration, row updates, and single-column deletion.

Chapter 8, Collections, Tuples, and User-Defined Types, introduces collection columns and explores Cassandra's support for advanced, atomic collection manipulation. It also introduces tuples, nested collections, and user-defined types.

Chapter 9, Aggregating Time-Series Data, covers the common use case of collecting high-volume time-series data and introduces counter columns. It also introduces user-defined functions and user-defined aggregates.

Chapter 10, How Cassandra Distributes Data, explores what happens when you save a row to Cassandra. It considers eventual consistency and teaches you how to use tunable consistency to get the right balance between consistency and fault-tolerance.

Chapter 11, Cassandra Multi-Node Cluster, explains how the dynamics of consistency levels and replication factor, change with a multi-node cluster. This chapter also touches upon some of the architectural aspects of Cassandra, including the read/write paths and data repair mechanisms.

Chapter 12, Application Development Using the Java Driver, introduces the DataStax Java driver which can be used to develop applications in Java with appropriate load balancing, reconnection, and retry policies to work with Cassandra.

Appendix A, Peeking under the Hood, peels away the abstractions provided by CQL to reveal how Cassandra represents data at the lower column family level.

Appendix B, Authentication and Authorization, introduces ways to control access to your Cassandra cluster and specific data structures within it.

Unlock full access

Continue reading for free

A Packt free trial gives you instant online access to our library of over 7000 practical eBooks and videos, constantly updated with the latest in tech

Create a Note

Modal Close icon
You need to login to use this feature.
notes
bookmark search playlist font-size

Change the font size

margin-width

Change margin width

day-mode

Change background colour

Close icon Search
Country selected

Close icon Your notes and bookmarks

Delete Bookmark

Modal Close icon
Are you sure you want to delete it?
Cancel
Yes, Delete

Delete Note

Modal Close icon
Are you sure you want to delete it?
Cancel
Yes, Delete

Edit Note

Modal Close icon
Write a note (max 255 characters)
Cancel
Update Note

Confirmation

Modal Close icon
claim successful

Buy this book with your credits?

Modal Close icon
Are you sure you want to buy this book with one of your credits?
Close
YES, BUY