HAPPY BOOKSGIVING
Use code BOOKSGIVING during checkout to save 40%-55% on books and eBooks. Shop now.
Register your product to gain access to bonus material or receive a coupon.
”Eric and Russell were early adopters of Cassandra at SimpleReach. In Practical Cassandra, you benefit from their experience in the trenches administering Cassandra, developing against it, and building one of the first CQL drivers. If you are deploying Cassandra soon, or you inherited a Cassandra cluster to tend, spend some time with the deployment, performance tuning, and maintenance chapters… If you are new to Cassandra, I highly recommend the chapters on data modeling and CQL.”
–From the Foreword by Jonathon Ellis, Apache Cassandra Chair
Build and Deploy Massively Scalable, Super-fast Data Management Applications with Apache Cassandra
Practical Cassandra is the first hands-on developer’s guide to building Cassandra systems and applications that deliver breakthrough speed, scalability, reliability, and performance. Fully up to date, it reflects the latest versions of Cassandra–including Cassandra Query Language (CQL), which dramatically lowers the learning curve for Cassandra developers.
Pioneering Cassandra developers and Datastax MVPs Russell Bradberry and Eric Lubow walk you through every step of building a real production application that can store enormous amounts of structured, semi-structured, and unstructured data. Drawing on their exceptional expertise, Bradberry and Lubow share practical insights into issues ranging from querying to deployment, management, maintenance, monitoring, and troubleshooting.
The authors cover key issues, from architecture to migration, and guide you through crucial decisions about configuration and data modeling. They provide tested sample code, detailed explanations of how Cassandra works ”under the covers,” and new case studies from three cutting-edge users: Ooyala, Hailo, and eBay.
Coverage includes
Please visit the author's site here. There's an additional author site at http://devdazed.com/.
The Basics of Monitoring Cassandra
Download the sample pages (includes Chapter 8 and Index)
Foreword by Jonathon Ellis xiii
Foreword by Paul Dix xv
Preface xvii
Acknowledgments xxi
About the Authors xxiii
Chapter 1: Introduction to Cassandra 1
A Greek Story 1
What Is NoSQL? 2
There’s No Such Thing as “Web Scale” 2
ACID, CAP, and BASE 2
Where Cassandra Fits In 5
What Is Cassandra? 5
Cassandra Terminology 8
Our Hope 9
Chapter 2: Installation 11
Prerequisites 11
Installation 11
Configuration 13
Cluster Setup 15
Summary 16
Chapter 3: Data Modeling 17
The Cassandra Data Model 17
Model Queries—Not Data 19
Collections 22
Summary 25
Chapter 4: CQL 27
A Familiar Way of Doing Things 27
Summary 39
Chapter 5: Deployment and Provisioning 41
Keyspace Creation 41
Replication Strategies 42
Snitches 43
Partitioners 46
Node Layout 48
Firewalls 49
Platforms 49
Summary 50
Chapter 6: Performance Tuning 51
Methodology 51
Tuning 52
System Tuning 62
Solid-State Drives 64
JVM Tuning 65
Summary 67
Chapter 7: Maintenance 69
Understanding nodetool 69
Ring Information 72
ColumnFamily Statistics 73
Thread Pool Statistics 74
Compactions 76
Backup and Restore 79
CommitLog Archiving 81
Summary 82
Chapter 8: Monitoring 83
Logging 83
JMX and MBeans 85
Health Checks 91
Summary 96
Chapter 9: Drivers and Sample Code 99
Java 100
C# 104
Python 108
Ruby 112
Summary 117
Chapter 10: Troubleshooting 119
Toolkit 119
Common Problems 121
Summary 126
Chapter 11: Architecture 127
Meta Keyspaces 127
Gossip Protocol 129
Failure Detection 130
HintedHandoffs 131
Bloom Filters 131
Summary 134
Chapter 12: Case Studies 135
Ooyala 135
Hailo 137
eBay 141
Summary 147
Appendix A: Getting Help 149
Preparing Information 149
IRC 149
Mailing Lists 149
Appendix B: Enterprise Cassandra 151
DataStax 151
Acunu 152
Titan by Aurelius 153
Pentaho 154
Instaclustr 154
Index 157