Professional Documents
Culture Documents
@RobertPBialek doag2018
Who Am I
Focus:
– Data and service high availability, disaster recovery
– Architecture design, optimization, automation
– Troubleshooting
– Trainer: O-RAC, O-DG
1. Introduction
2. Key Components
3. Data Replication
4. Scalability
5. Read/Write Operations
6. Data Consistency
7. Summary
Distributed NoSQL (wide column) partitioned row store database, which runs within a
JVM
– Consistency
– Availability
? ?
– Partition tolerance
Keyspace
– Grouping of data, similar to a schema
– Defines replication properties
Table (Column Family)
– Stores data based on a primary key
• Primary key: partitioning key plus optionally
clustering columns
Cassandra Ring
– Physically split into partitioned
– Denormalization (data duplication) is necessary
– Once written to disk, the data is immutable
num_tokens: 256
Data ‘Cassandra'
Token 356242581507269238
num_tokens: 256
Partitioner
Cassandra Ring
num_tokens: 256
num_tokens: 256
Ring Bootstrap
Information
Cassandra Ring
Software &
Configuration Files
Generate START
Tokens Joing Ring
FINISH
Joing Ring
13 21.11.2018 Apache Cassandra for Oracle DBA
Cassandra Ring – Scale In
Remove
Tokens
Cassandra Ring
DECOMMISSION
DECOMMISSIONED
To ensure data and service high availability, Cassandra stores data on multiple
nodes in a cluster
DC 1 DC 2
All replicas are equally important (no primary or Rack 1 Rack 1
secondary data)
Data Center 1
Rack 1 Rack 1
Rack 1 Rack 1
Rack 2 Rack 2
Compression
Offset Map Partition Summary
SSTables
Partition Index
Disk
ID C2 TSTAMP
1 PROD1 200
DELTE FROM t
WHERE TAG=‘CASSANDRA‘ AND ID=2;
ID Tombstone TSTAMP
(marked_deleted)
2 250
ID C1 C2 TSTAMP
3 4 TEST3 120
New SSTable
ID C1 C2 TSTAMP ID C1 C2 TSTAMP
ID Tombstone TSTAMP
ID C2 TSTAMP (marked_deleted)
2 250
1 PROD1 200
ID C1 C2 TSTAMP
3 4 TEST3 120
ID Tombstone TSTAMP gc_grace_seconds
(marked_deleted) reached?
2 250
No
23 21.11.2018 Apache Cassandra for Oracle DBA
Data Consistency
Cassandra offers tunable data consistency for read and write operations
Coordinator
Direct Read
Coordinator
Digest Read
Direct Read
DC=1 DC=2
Digest Read
Digest Read
Coordinator
Coordinator
DELETE
Hinted Handoff
Possibile
ZOMBI