万本电子书0元读

万本电子书0元读

顶部广告

Cassandra 3.x High Availability - Second Edition电子书

售       价:¥

15人正在读 | 0人评论 9.8

作       者:Robbie Strickland

出  版  社:Packt Publishing

出版时间:2016-08-01

字       数:98.3万

所属分类: 进口书 > 外文原版书 > 电脑/网络

温馨提示:此类商品不支持退换货,不支持下载打印

为你推荐

  • 读书简介
  • 目录
  • 累计评论(0条)
  • 读书简介
  • 目录
  • 累计评论(0条)
Achieve scalability and high availability without compromising on performance About This Book See how to get 100 percent uptime with your Cassandra applications using this easy-follow guide Learn how to avoid common and not-so-common mistakes while working with Cassandra using this highly practical guide Get familiar with the intricacies of working with Cassandra for high availability in your work environment with this go-to-guide Who This Book Is For If you are a developer or DevOps engineer who has basic familiarity with Cassandra and you want to become an expert at creating highly available, fault tolerant systems using Cassandra, this book is for you. What You Will Learn Understand how the core architecture of Cassandra enables highly available applications Use replication and tunable consistency levels to balance consistency, availability, and performance Set up multiple data centers to enable failover, load balancing, and geographic distribution Add capacity to your cluster with zero downtime Take advantage of high availability features in the native driver Create data models that scale well and maximize availability Understand common anti-patterns so you can avoid them Keep your system working well even during failure scenarios In Detail Apache Cassandra is a massively scalable, peer-to-peer database designed for 100 percent uptime, with deployments in the tens of thousands of nodes, all supporting petabytes of data. This book offers a practical insight into building highly available, real-world applications using Apache Cassandra. The book starts with the fundamentals, helping you to understand how Apache Cassandra’s architecture allows it to achieve 100 percent uptime when other systems struggle to do so. You’ll get an excellent understanding of data distribution, replication, and Cassandra’s highly tunable consistency model. Then we take an in-depth look at Cassandra's robust support for multiple data centers, and you’ll see how to scale out a cluster. Next, the book explores the domain of application design, with chapters discussing the native driver and data modeling. Lastly, you’ll find out how to steer clear of common anti-patterns and take advantage of Cassandra’s ability to fail gracefully. Style and approach This practical guide will get you implementing Cassandra right from the design to creating highly available systems. Through a systematic, step-by-step approach, you will learn different aspects of building highly available Cassandra applications and all this with the help of easy-to-follow examples, tips, and tricks.
目录展开

Cassandra 3.x High Availability

Cassandra 3.x High Availability - Second Edition

Credits

About the Author

About the Reviewer

www.PacktPub.com

eBooks, discount offers, and more

Why subscribe?

Preface

What this book covers

What you need for this book

Who this book is for

Conventions

Reader feedback

Customer support

Downloading the example code

Errata

Piracy

Questions

1. Cassandras Approach to High Availability

Introducing the ACID properties

Monolithic simplicity

Scaling consistency - the master-slave model

Using sharding to scale writes

Handling the death of the leader

Breaking with tradition - Cassandra's alternative

Cassandra's peer-to-peer approach

Hashing to the rescue

Replication across the cluster

Replication across data centers

The consistency continuum

The CAP theorem

Summary

2. Data Distribution

Hash table fundamentals

Distributed hash tables

Consistent hashing

How it works

Token assignment

Manually assigned tokens

Vnodes

How vnodes improve availability

Adding and removing nodes

Node rebuild

Heterogeneous nodes

Partitioners

Hotspots

A time-series example

Summary

3. Replication

The replication factor

Replication strategies

SimpleStrategy

NetworkTopologyStrategy

Snitches

Maintaining the replication factor when a node fails

Consistency conflicts

Consistency levels

Repairing data

Balancing the replication factor with consistency

Summary

4. Data Centers

Use cases for multiple data centers

Live backup

Failover

Load balancing

Geographic distribution

Online analysis

Analysis using Hadoop

Analysis using Spark

Data center setup

RackInferringSnitch

PropertyFileSnitch

GossipingPropertyFileSnitch

Cloud snitches

Replication across data centers

Setting replication factors

Consistency in a multiple data center environment

Anatomy of a replicated write

Achieving stronger consistency between data centers

Summary

5. Scaling Out

Choosing the right hardware configuration

Scaling out versus scaling up

Growing your cluster

Adding nodes without vnodes

Adding nodes with vnodes

Adding a data center

How to scale up

Upgrading in place

Scaling up using data center replication

Removing nodes

Removing nodes within a data center

Decommissioning a data center

Other data migration scenarios

Snitch changes

Summary

6. High Availability Features in the Native Java Client

Thrift versus the native protocol

Setting up the environment

Connecting to the cluster

Executing statements

Prepared statements

Batched statements

Caution with batches

Handling asynchronous requests

Running queries in parallel

Load balancing

Failing over to a remote data center

Downgrading consistency level

Defining your own retry policy

Token awareness

Tying it all together

Falling back to QUORUM

Summary

7. Modeling for Availability

How Cassandra stores data

Implications of log-structured storage

Understanding compaction

Size-tiered compaction

Leveled compaction

Time-window compaction

CQL under the hood

Single primary key

Compound keys

Partition keys

Clustering columns

Composite partition keys

The importance of the storage model

Understanding queries

Query by key

Range queries

Embracing denormalization

Denormalizing using collections

Sets

Lists

Maps

Denormalizing with materialized views

Working with time series data

Designing for immutability

Modeling sensor data

The queries

Time-based ordering

Using a sentinel value

Satisfying our queries

When time is all that matters

Working with geospatial data

Summary

8. Anti-Patterns

Multi-key queries

Secondary indices

Secondary indices under the hood

Improvements with SASI

Distributed joins

Deleting data

Garbage collection

Resurrecting the dead

The problem with tombstones

Expiring columns

TTL anti-patterns

When null does not mean empty

Cassandra is not a queue

Unbounded row growth

Summary

9. Failing Gracefully

Knowledge is power

Monitoring via JMX

Using OpsCenter

Choosing a management toolset

Logging

Cassandra logs

Garbage collector logs

Monitoring node metrics

Thread pools

Table statistics

Finding latency outliers

Communication metrics

When a node goes down

Marking a downed node

Handling a downed node

Handling slow nodes

Backing up data

Taking a snapshot

Incremental backups

Restoring from a snapshot

Summary

累计评论(0条) 0个书友正在讨论这本书 发表评论

发表评论

发表评论,分享你的想法吧!

买过这本书的人还买过

读了这本书的人还在读

回顶部