Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Save more on your purchases now! discount-offer-chevron-icon
Savings automatically calculated. No voucher code required.
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Conferences
Free Learning
Arrow right icon
Arrow up icon
GO TO TOP
Cassandra High Availability

You're reading from   Cassandra High Availability Harness the power of Apache Cassandra to build scalable, fault-tolerant, and readily available applications

Arrow left icon
Product type Paperback
Published in Dec 2014
Publisher Packt
ISBN-13 9781783989126
Length 186 pages
Edition 1st Edition
Arrow right icon
Author (1):
Arrow left icon
Robbie Strickland Robbie Strickland
Author Profile Icon Robbie Strickland
Robbie Strickland
Arrow right icon
View More author details
Toc

Table of Contents (11) Chapters Close

Preface 1. Cassandra's Approach to High Availability FREE CHAPTER 2. Data Distribution 3. Replication 4. Data Centers 5. Scaling Out 6. High Availability Features in the Native Java Client 7. Modeling for High Availability 8. Antipatterns 9. Failing Gracefully Index

ACID

One of the most significant obstacles that prevents traditional databases from achieving high availability is that they attempt to strongly guarantee the ACID properties:

  • Atomicity: This guarantees that database updates associated with a transaction occur in an all-or-nothing manner. If some part of the transaction fails, the state of the database remains unchanged.
  • Consistency: This assures that the integrity of data will be preserved across all instances of that data. Changes to a value in one location will definitely be reflected in all other locations.
  • Isolation: This attempts to ensure that concurrent transactions that manipulate the same data do so in a controlled manner, essentially isolating in-process changes from other clients. Most traditional relational database systems provide various levels of isolation with different guarantees at each level.
  • Durability: This ensures that all writes are preserved in nonvolatile storage, most commonly on disk.

Database designers most commonly achieve these properties via write masters, locks, elaborate storage area networks, and the like—all of which tend to sacrifice availability. As a result, achieving some semblance of high availability frequently involves bolt-on components, log shipping, leader election, sharding, and other such strategies that attempt to preserve the original design.

You have been reading a chapter from
Cassandra High Availability
Published in: Dec 2014
Publisher: Packt
ISBN-13: 9781783989126
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at $19.99/month. Cancel anytime