SlideShare a Scribd company logo
Apache Cassandra v4.0
1 © DataStax, All Rights Reserved. Confidential
DataStax Japan
Yuki Morishita
Cassandra Meetup in Tokyo February 2019
2019/2/21
Who am I?
Yuki Morishita (yuki@datastax.com)
– Principal Architect at DataStax Japan
– Apache Cassandra committer
© DataStax, All Rights Reserved.2 Confidential
Apache Cassandra
v4.0!!!
3 © DataStax, All Rights Reserved. Confidential
Apache Cassandra v4.0
• Been working for 1.5 years after 3.11.0 release
• Feature freeze on September 1, 2018
• No fixed release date
• See NEWS.TXT for upgrade instruction
– No direct upgrade from pre-3.0 versions
4 © DataStax, All Rights Reserved. Confidential
CHANGES.TXT
• More than 340 changes
(new features / bug fixes)
5 © DataStax, All Rights Reserved. Confidential
4.0
* Fix SimpleStrategy option validation (CASSANDRA-15007)
* Don't try to cancel 2i compactions when starting anticompaction (CASSANDRA-15024)
* Avoid NPE in RepairRunnable.recordFailure (CASSANDRA-15025)
* SSL Cert Hot Reloading should check for sanity of the new keystore/truststore before loading it
(CASSANDRA-14991)
* Avoid leaking threads when failing anticompactions and rate limit anticompactions (CASSANDRA-
15002)
* Validate token() arguments early instead of throwing NPE at execution (CASSANDRA-14989)
* Add a new tool to dump audit logs (CASSANDRA-14885)
* Fix generating javadoc with Java11 (CASSANDRA-14988)
* Only cancel conflicting compactions when starting anticompactions and sub range compactions
(CASSANDRA-14935)
* Use a stub IndexRegistry for non-daemon use cases (CASSANDRA-14938)
* Don't enable client transports when bootstrap is pending (CASSANDRA-14525)
* Make antiCompactGroup throw exception on error and anticompaction non cancellable
again (CASSANDRA-14936)
* Catch empty/invalid bounds in SelectStatement (CASSANDRA-14849)
* Auto-expand replication_factor for NetworkTopologyStrategy (CASSANDRA-14303)
* Transient Replication: support EACH_QUORUM (CASSANDRA-14727)
* BufferPool: allocating thread for new chunks should acquire directly (CASSANDRA-14832)
* Send correct messaging version in internode messaging handshake's third message (CASSANDRA-
14896)
* Make Read and Write Latency columns consistent for proxyhistograms and tablehistograms
(CASSANDRA-11939)
* Make protocol checksum type option case insensitive (CASSANDRA-14716)
* Forbid re-adding static columns as regular and vice versa (CASSANDRA-14913)
New Features
• Virtual Tables
• Transient Replication
• Audit logging
• Full query logging
• Zero-copy SSTable streaming
6 © DataStax, All Rights Reserved. Confidential
Virtual Tables
• Before Virtual Table…
– JMX or nodetool
• Cache information
– nodetool info
• Thread pools
– nodetool tpstats
• Connected clients
– nodetool clientstats –all (new in v4.0!)
• SSTable activities
– nodetool compactionstats
– Config
• vim cassandra.yaml
7 © DataStax, All Rights Reserved. Confidential
Virtual Tables
• After Virtual Table… (in addition to the methods in prev slide)
– Cache information
• SELECT * FROM system_views.caches;
• SELECT * FROM system_views.caches WHERE name = 'chunks’;
– Thread pools
• SELECT * FROM system_views.thread_pools;
– Connected clients
• SELECT * FROM system_views.clients;
– SSTable activities
• SELECT * FROM system_views.sstable_tasks
– Config
• SELECT * FROM system_views.settings;
8 © DataStax, All Rights Reserved. Confidential
Virtual Tables
• How about updating config?
– Not yet supported
• Keep track of issues
– https://issues.apache.org/jira/browse/CASSANDRA-14670?jql=labels%20%3D%20virtual-tables
9 © DataStax, All Rights Reserved. Confidential
Transient Replication
• Save disk space, CPU cycle and IO with temporary copy (transient replica)
• Temporary copy is replicated with incremental repair, and removed
• Experimental feature in v4.0
• Unsupported features
– Monotonic read (read with blocking read repair)
– Logged batch
– LWT
– Counters
– Secondary Index / Materialized view (never support)
10 © DataStax, All Rights Reserved. Confidential
Transient Replication
• Read / Write with RF=3, CL=QUORUM
11 © DataStax, All Rights Reserved. Confidential
Write Read
Transient Replication
• Read / Write with RF=3 (with 1 transient replica), CL=QUORUM
12 © DataStax, All Rights Reserved. Confidential
Write Read
Transient ReplicaTransient Replica
Transient Replication
• Read / Write with RF=3 (with 1 transient replica), CL=QUORUM
• When one node is down
13 © DataStax, All Rights Reserved. Confidential
Write Read
Transient ReplicaTransient Replica
Transient Replication
• Temporary copy is replicated and removed after incremental repair
14 © DataStax, All Rights Reserved. Confidential
Transient Replica
Incremental repair
Transient Replication
• Temporary copy is replicated and removed after incremental repair
15 © DataStax, All Rights Reserved. Confidential
Transient Replica
Transient Replication
CREATE KEYSPACE ks
WITH replication = {
'class': 'NetworkTopologyStrategy',
'replication_factor': '3/1'
};
16 © DataStax, All Rights Reserved. Confidential
Audit Logging
• Log queries / authentication to a node for auditing
• When audit events are logged?
– After executing CQL / Authentication, before sending response
• Pluggable logger (IAuditLogger interface) to publish audit event anywhere
– BinAuditLogger (default) – binary log
– FileAuditLogger – logback
• Audit log includes:
– User, Client IP, timestamp, category, operation, …
• See https://cassandra.apache.org/doc/latest/operating/audit_logging.html
17 © DataStax, All Rights Reserved. Confidential
Audit Logging
• Enabling audit logging
– cassandra.yaml
18 © DataStax, All Rights Reserved. Confidential
# Audit logging - Logs every incoming CQL command request, authentication to a node. See the docs
# on audit_logging for full details about the various configuration options.
audit_logging_options:
enabled: false
logger: BinAuditLogger
# audit_logs_dir:
# included_keyspaces:
# excluded_keyspaces: system, system_schema, system_virtual_schema
# included_categories:
# excluded_categories:
# included_users:
# excluded_users:
# roll_cycle: HOURLY
# block: true
# max_queue_weight: 268435456 # 256 MiB
# max_log_size: 17179869184 # 16 GiB
## archive command is "/path/to/script.sh %path" where %path is replaced with the file being rolled:
# archive_command:
# max_archive_retries: 10
Audit Logging
• Enabling audit logging
– nodetool enableauditlog
• Can change the same settings using command line options
– --included-keyspaces, --logger, etc.
– nodetool disableauditlog
19 © DataStax, All Rights Reserved. Confidential
Audit Logging
• New tool: auditlogviewer
• auditlogviewer -f /var/log/cassandra/audit/
20 © DataStax, All Rights Reserved. Confidential
Type: AuditLog
LogMessage:
user:anonymous|host:172.17.0.2:7000|source:/127.0.0.1|port:49644|timestamp:1550558120912|type:USE_KEYSPACE|category:OTHER|ks:tesks|operation:use
tesks ;
Type: AuditLog
LogMessage:
user:anonymous|host:172.17.0.2:7000|source:/127.0.0.1|port:49644|timestamp:1550558120913|type:USE_KEYSPACE|category:OTHER|ks:tesks|operation:USE
"tesks"
Type: AuditLog
LogMessage:
user:anonymous|host:172.17.0.2:7000|source:/127.0.0.1|port:49644|timestamp:1550558139178|type:UPDATE|category:DML|ks:tesks|scope:test|operation:
INSERT INTO tesks.test (key, val) VALUES ( 'a', currentTimestamp());
Type: AuditLog
LogMessage:
user:anonymous|host:172.17.0.2:7000|source:/127.0.0.1|port:49644|timestamp:1550558147633|type:SELECT|category:QUERY|ks:tesks|scope:test|operatio
n:SELECT * FROM tesks.test
Full Query Logging
• Enable workload recording, replay and compare result
• Use case
– Capture workload in production. Use it in dev environment to test in different Cassandra version.
Compare result for correctness.
21 © DataStax, All Rights Reserved. Confidential
Capture Replay
Full Query Log
Prod Dev
Full Query Logging
• Use nodetool to start / stop capturing
– nodetool enablefullquerylog
• Enable full query logging, defaults for the options are configured in cassandra.yaml
– nodetool disablefullquerylog
• Disable the full query log
– nodetool resetfullquerylog
• Stop the full query log and clean files in the configured full query log directory from cassandra.yaml as well as
JMX
22 © DataStax, All Rights Reserved. Confidential
Full Query Logging
• Use fqltool to replay and compare result
– fqltool replay
• Replay full query logs
– fqltool compare
• Compare result files generated by fqltool replay
– fqltool dump
• Dump the contents of a full query log
23 © DataStax, All Rights Reserved. Confidential
Zero-copy SSTable streaming
• SSTable streaming
24 © DataStax, All Rights Reserved. Confidential
Data.db
Index.db
Filter.db
Compress
sionInfo.db
Sender node Receiver node
Give me partitions
between
token 0 and 100
Zero-copy SSTable streaming
• SSTable streaming
25 © DataStax, All Rights Reserved. Confidential
Data.db
Index.db
Filter.db
Compress
sionInfo.db
Sender node Receiver node
Here are partitions
between
token 0 and 100
in this SSTable
Zero-copy SSTable streaming
• SSTable streaming
26 © DataStax, All Rights Reserved. Confidential
Data.db
Index.db
Filter.db
Compress
sionInfo.db
Sender node Receiver node
Here are partitions
between
token 0 and 100
in this SSTable
Zero-copy SSTable streaming
• SSTable streaming
27 © DataStax, All Rights Reserved. Confidential
Data.db
Index.db
Filter.db
Compress
sionInfo.db
Sender node Receiver node
• Decompress
• Deserialize
• Update Stats / BF /
Index
• Serialize
• Compress
Data.dbIndex.db
Filter.db
Compress
sionInfo.db
Zero-copy SSTable streaming
• Zero-copy SSTable streaming
28 © DataStax, All Rights Reserved. Confidential
Data.db
Index.db
Filter.db
Compress
sionInfo.db
Sender node Receiver node
Give me partitions
between
token 0 and 100
Zero-copy SSTable streaming
• Zero-copy SSTable streaming
29 © DataStax, All Rights Reserved. Confidential
Data.db
Index.db
Filter.db
Compress
sionInfo.db
Sender node Receiver node
This SSTable contains
partitions in
token 0 and 100!
Zero-copy SSTable streaming
• Zero-copy SSTable streaming
30 © DataStax, All Rights Reserved. Confidential
Data.db
Index.db
Filter.db
Compress
sionInfo.db
Sender node Receiver node
Zero-copy
Transfer
Data.db
Index.db
Filter.db
Compress
sionInfo.db
Zero-copy SSTable streaming
• Enabled by default
– Can be turned off in cassandra.yaml (stream_entire_sstables)
• Only works for SSTables in table using LeveledCompactionStrategy
– For now…
• https://cassandra.apache.org/blog/2018/08/07/faster_streaming_in_cassandra.html
31 © DataStax, All Rights Reserved. Confidential
Other Notable Changes
• Experimental Java 11 support
– Can use ZGC
• Asynchronous internode messaging / streaming
– More efficient if you have large cluster
• Thrift / COMPACT STORAGE removed (finally)
• Network authorization
– Can create role that only has access to certain datacenter
• CDC improvement
– Change data is available faster than previous implementation
32 © DataStax, All Rights Reserved. Confidential
Other Notable Changes
• Read repair change
– dc_read_repair_chance / read_repair_chance are gone
• no more async read repair
– Blocking read repair can be turned off
• ALTER TABLE ... WITH read_repair = NONE;
33 © DataStax, All Rights Reserved. Confidential
Apache Cassandra
Side-car project
34 © DataStax, All Rights Reserved. Confidential
Cassandra side-car
• Cassandra management process that runs separately from Cassandra daemon
• Provides HTTP API to monitor and manage Cassandra node
• Proposal
– https://cwiki.apache.org/confluence/pages/viewpage.action?pageId=95652224
• Repository:
– https://github.com/apache/cassandra-sidecar
– Currently healthcheck API is implemented
35 © DataStax, All Rights Reserved. Confidential
Thank you,
Questions?
36 © DataStax, All Rights Reserved. Confidential
Ad

More Related Content

What's hot (20)

Introduction to Cassandra Architecture
Introduction to Cassandra ArchitectureIntroduction to Cassandra Architecture
Introduction to Cassandra Architecture
nickmbailey
 
Investing the Effects of Overcommitting YARN resources
Investing the Effects of Overcommitting YARN resourcesInvesting the Effects of Overcommitting YARN resources
Investing the Effects of Overcommitting YARN resources
DataWorks Summit/Hadoop Summit
 
Apache Spark Data Source V2 with Wenchen Fan and Gengliang Wang
Apache Spark Data Source V2 with Wenchen Fan and Gengliang WangApache Spark Data Source V2 with Wenchen Fan and Gengliang Wang
Apache Spark Data Source V2 with Wenchen Fan and Gengliang Wang
Databricks
 
Introduction to Storm
Introduction to Storm Introduction to Storm
Introduction to Storm
Chandler Huang
 
Parquet Strata/Hadoop World, New York 2013
Parquet Strata/Hadoop World, New York 2013Parquet Strata/Hadoop World, New York 2013
Parquet Strata/Hadoop World, New York 2013
Julien Le Dem
 
Modeling Data and Queries for Wide Column NoSQL
Modeling Data and Queries for Wide Column NoSQLModeling Data and Queries for Wide Column NoSQL
Modeling Data and Queries for Wide Column NoSQL
ScyllaDB
 
Maximum Overdrive: Tuning the Spark Cassandra Connector (Russell Spitzer, Dat...
Maximum Overdrive: Tuning the Spark Cassandra Connector (Russell Spitzer, Dat...Maximum Overdrive: Tuning the Spark Cassandra Connector (Russell Spitzer, Dat...
Maximum Overdrive: Tuning the Spark Cassandra Connector (Russell Spitzer, Dat...
DataStax
 
Nosql data models
Nosql data modelsNosql data models
Nosql data models
Viet-Trung TRAN
 
Cassandra Day NY 2014: Apache Cassandra & Python for the The New York Times ⨍...
Cassandra Day NY 2014: Apache Cassandra & Python for the The New York Times ⨍...Cassandra Day NY 2014: Apache Cassandra & Python for the The New York Times ⨍...
Cassandra Day NY 2014: Apache Cassandra & Python for the The New York Times ⨍...
DataStax Academy
 
RDB開発者のためのApache Cassandra データモデリング入門
RDB開発者のためのApache Cassandra データモデリング入門RDB開発者のためのApache Cassandra データモデリング入門
RDB開発者のためのApache Cassandra データモデリング入門
Yuki Morishita
 
Parquet performance tuning: the missing guide
Parquet performance tuning: the missing guideParquet performance tuning: the missing guide
Parquet performance tuning: the missing guide
Ryan Blue
 
Cassandra overview
Cassandra overviewCassandra overview
Cassandra overview
Sean Murphy
 
Introduction to Cassandra
Introduction to CassandraIntroduction to Cassandra
Introduction to Cassandra
Gokhan Atil
 
Hadoop -NameNode HAの仕組み-
Hadoop -NameNode HAの仕組み-Hadoop -NameNode HAの仕組み-
Hadoop -NameNode HAの仕組み-
Yuki Gonda
 
Apache Kafka Best Practices
Apache Kafka Best PracticesApache Kafka Best Practices
Apache Kafka Best Practices
DataWorks Summit/Hadoop Summit
 
Espresso: LinkedIn's Distributed Data Serving Platform (Paper)
Espresso: LinkedIn's Distributed Data Serving Platform (Paper)Espresso: LinkedIn's Distributed Data Serving Platform (Paper)
Espresso: LinkedIn's Distributed Data Serving Platform (Paper)
Amy W. Tang
 
Deep Dive into Stateful Stream Processing in Structured Streaming with Tathag...
Deep Dive into Stateful Stream Processing in Structured Streaming with Tathag...Deep Dive into Stateful Stream Processing in Structured Streaming with Tathag...
Deep Dive into Stateful Stream Processing in Structured Streaming with Tathag...
Databricks
 
Introduction and Overview of Apache Kafka, TriHUG July 23, 2013
Introduction and Overview of Apache Kafka, TriHUG July 23, 2013Introduction and Overview of Apache Kafka, TriHUG July 23, 2013
Introduction and Overview of Apache Kafka, TriHUG July 23, 2013
mumrah
 
How to understand and analyze Apache Hive query execution plan for performanc...
How to understand and analyze Apache Hive query execution plan for performanc...How to understand and analyze Apache Hive query execution plan for performanc...
How to understand and analyze Apache Hive query execution plan for performanc...
DataWorks Summit/Hadoop Summit
 
Introduction to Redis
Introduction to RedisIntroduction to Redis
Introduction to Redis
Dvir Volk
 
Introduction to Cassandra Architecture
Introduction to Cassandra ArchitectureIntroduction to Cassandra Architecture
Introduction to Cassandra Architecture
nickmbailey
 
Investing the Effects of Overcommitting YARN resources
Investing the Effects of Overcommitting YARN resourcesInvesting the Effects of Overcommitting YARN resources
Investing the Effects of Overcommitting YARN resources
DataWorks Summit/Hadoop Summit
 
Apache Spark Data Source V2 with Wenchen Fan and Gengliang Wang
Apache Spark Data Source V2 with Wenchen Fan and Gengliang WangApache Spark Data Source V2 with Wenchen Fan and Gengliang Wang
Apache Spark Data Source V2 with Wenchen Fan and Gengliang Wang
Databricks
 
Introduction to Storm
Introduction to Storm Introduction to Storm
Introduction to Storm
Chandler Huang
 
Parquet Strata/Hadoop World, New York 2013
Parquet Strata/Hadoop World, New York 2013Parquet Strata/Hadoop World, New York 2013
Parquet Strata/Hadoop World, New York 2013
Julien Le Dem
 
Modeling Data and Queries for Wide Column NoSQL
Modeling Data and Queries for Wide Column NoSQLModeling Data and Queries for Wide Column NoSQL
Modeling Data and Queries for Wide Column NoSQL
ScyllaDB
 
Maximum Overdrive: Tuning the Spark Cassandra Connector (Russell Spitzer, Dat...
Maximum Overdrive: Tuning the Spark Cassandra Connector (Russell Spitzer, Dat...Maximum Overdrive: Tuning the Spark Cassandra Connector (Russell Spitzer, Dat...
Maximum Overdrive: Tuning the Spark Cassandra Connector (Russell Spitzer, Dat...
DataStax
 
Cassandra Day NY 2014: Apache Cassandra & Python for the The New York Times ⨍...
Cassandra Day NY 2014: Apache Cassandra & Python for the The New York Times ⨍...Cassandra Day NY 2014: Apache Cassandra & Python for the The New York Times ⨍...
Cassandra Day NY 2014: Apache Cassandra & Python for the The New York Times ⨍...
DataStax Academy
 
RDB開発者のためのApache Cassandra データモデリング入門
RDB開発者のためのApache Cassandra データモデリング入門RDB開発者のためのApache Cassandra データモデリング入門
RDB開発者のためのApache Cassandra データモデリング入門
Yuki Morishita
 
Parquet performance tuning: the missing guide
Parquet performance tuning: the missing guideParquet performance tuning: the missing guide
Parquet performance tuning: the missing guide
Ryan Blue
 
Cassandra overview
Cassandra overviewCassandra overview
Cassandra overview
Sean Murphy
 
Introduction to Cassandra
Introduction to CassandraIntroduction to Cassandra
Introduction to Cassandra
Gokhan Atil
 
Hadoop -NameNode HAの仕組み-
Hadoop -NameNode HAの仕組み-Hadoop -NameNode HAの仕組み-
Hadoop -NameNode HAの仕組み-
Yuki Gonda
 
Espresso: LinkedIn's Distributed Data Serving Platform (Paper)
Espresso: LinkedIn's Distributed Data Serving Platform (Paper)Espresso: LinkedIn's Distributed Data Serving Platform (Paper)
Espresso: LinkedIn's Distributed Data Serving Platform (Paper)
Amy W. Tang
 
Deep Dive into Stateful Stream Processing in Structured Streaming with Tathag...
Deep Dive into Stateful Stream Processing in Structured Streaming with Tathag...Deep Dive into Stateful Stream Processing in Structured Streaming with Tathag...
Deep Dive into Stateful Stream Processing in Structured Streaming with Tathag...
Databricks
 
Introduction and Overview of Apache Kafka, TriHUG July 23, 2013
Introduction and Overview of Apache Kafka, TriHUG July 23, 2013Introduction and Overview of Apache Kafka, TriHUG July 23, 2013
Introduction and Overview of Apache Kafka, TriHUG July 23, 2013
mumrah
 
How to understand and analyze Apache Hive query execution plan for performanc...
How to understand and analyze Apache Hive query execution plan for performanc...How to understand and analyze Apache Hive query execution plan for performanc...
How to understand and analyze Apache Hive query execution plan for performanc...
DataWorks Summit/Hadoop Summit
 
Introduction to Redis
Introduction to RedisIntroduction to Redis
Introduction to Redis
Dvir Volk
 

Similar to Apache cassandra v4.0 (20)

Cassandra Tools and Distributed Administration (Jeffrey Berger, Knewton) | C*...
Cassandra Tools and Distributed Administration (Jeffrey Berger, Knewton) | C*...Cassandra Tools and Distributed Administration (Jeffrey Berger, Knewton) | C*...
Cassandra Tools and Distributed Administration (Jeffrey Berger, Knewton) | C*...
DataStax
 
Live traffic capture and replay in cassandra 4.0
Live traffic capture and replay in cassandra 4.0Live traffic capture and replay in cassandra 4.0
Live traffic capture and replay in cassandra 4.0
Vinay Kumar Chella
 
Apache Kudu: Technical Deep Dive


Apache Kudu: Technical Deep Dive

Apache Kudu: Technical Deep Dive


Apache Kudu: Technical Deep Dive


Cloudera, Inc.
 
Dan Norris: Exadata security
Dan Norris: Exadata securityDan Norris: Exadata security
Dan Norris: Exadata security
Kyle Hailey
 
NoCOUG_201411_Patel_Managing_a_Large_OLTP_Database
NoCOUG_201411_Patel_Managing_a_Large_OLTP_DatabaseNoCOUG_201411_Patel_Managing_a_Large_OLTP_Database
NoCOUG_201411_Patel_Managing_a_Large_OLTP_Database
Paresh Patel
 
The State of the Dolphin, MySQL Keynote at Percona Live Europe 2019, Amsterda...
The State of the Dolphin, MySQL Keynote at Percona Live Europe 2019, Amsterda...The State of the Dolphin, MySQL Keynote at Percona Live Europe 2019, Amsterda...
The State of the Dolphin, MySQL Keynote at Percona Live Europe 2019, Amsterda...
Geir Høydalsvik
 
Safer restarts, faster streaming, and better repair, just a glimpse of cassan...
Safer restarts, faster streaming, and better repair, just a glimpse of cassan...Safer restarts, faster streaming, and better repair, just a glimpse of cassan...
Safer restarts, faster streaming, and better repair, just a glimpse of cassan...
Vinay Kumar Chella
 
Upgrading to my sql 8.0
Upgrading to my sql 8.0Upgrading to my sql 8.0
Upgrading to my sql 8.0
Ståle Deraas
 
What We Learned About Cassandra While Building go90 (Christopher Webster & Th...
What We Learned About Cassandra While Building go90 (Christopher Webster & Th...What We Learned About Cassandra While Building go90 (Christopher Webster & Th...
What We Learned About Cassandra While Building go90 (Christopher Webster & Th...
DataStax
 
Cassandra Tuning - above and beyond
Cassandra Tuning - above and beyondCassandra Tuning - above and beyond
Cassandra Tuning - above and beyond
Matija Gobec
 
Cassandra Tuning - Above and Beyond (Matija Gobec, SmartCat) | Cassandra Summ...
Cassandra Tuning - Above and Beyond (Matija Gobec, SmartCat) | Cassandra Summ...Cassandra Tuning - Above and Beyond (Matija Gobec, SmartCat) | Cassandra Summ...
Cassandra Tuning - Above and Beyond (Matija Gobec, SmartCat) | Cassandra Summ...
DataStax
 
The Flink - Apache Bigtop integration
The Flink - Apache Bigtop integrationThe Flink - Apache Bigtop integration
The Flink - Apache Bigtop integration
Márton Balassi
 
MySQL Manchester TT - Performance Tuning
MySQL Manchester TT  - Performance TuningMySQL Manchester TT  - Performance Tuning
MySQL Manchester TT - Performance Tuning
Mark Swarbrick
 
MySQL 5.6 Replication Webinar
MySQL 5.6 Replication WebinarMySQL 5.6 Replication Webinar
MySQL 5.6 Replication Webinar
Mark Swarbrick
 
Application High Availability and Upgrades Using Oracle GoldenGate
Application High Availability and Upgrades Using Oracle GoldenGateApplication High Availability and Upgrades Using Oracle GoldenGate
Application High Availability and Upgrades Using Oracle GoldenGate
Shane Borden
 
DataStax Enterprise & Apache Cassandra – Essentials for Financial Services – ...
DataStax Enterprise & Apache Cassandra – Essentials for Financial Services – ...DataStax Enterprise & Apache Cassandra – Essentials for Financial Services – ...
DataStax Enterprise & Apache Cassandra – Essentials for Financial Services – ...
Daniel Cohen
 
Collaborate 2012 - Administering MySQL for Oracle DBAs
Collaborate 2012 - Administering MySQL for Oracle DBAsCollaborate 2012 - Administering MySQL for Oracle DBAs
Collaborate 2012 - Administering MySQL for Oracle DBAs
Nelson Calero
 
Oracle Storage a ochrana dat
Oracle Storage a ochrana datOracle Storage a ochrana dat
Oracle Storage a ochrana dat
MarketingArrowECS_CZ
 
Top 10 Best Practices for Apache Cassandra and DataStax Enterprise
Top 10 Best Practices for Apache Cassandra and DataStax EnterpriseTop 10 Best Practices for Apache Cassandra and DataStax Enterprise
Top 10 Best Practices for Apache Cassandra and DataStax Enterprise
DataStax
 
Training Slides: Basics 102: Introduction to Tungsten Clustering
Training Slides: Basics 102: Introduction to Tungsten ClusteringTraining Slides: Basics 102: Introduction to Tungsten Clustering
Training Slides: Basics 102: Introduction to Tungsten Clustering
Continuent
 
Cassandra Tools and Distributed Administration (Jeffrey Berger, Knewton) | C*...
Cassandra Tools and Distributed Administration (Jeffrey Berger, Knewton) | C*...Cassandra Tools and Distributed Administration (Jeffrey Berger, Knewton) | C*...
Cassandra Tools and Distributed Administration (Jeffrey Berger, Knewton) | C*...
DataStax
 
Live traffic capture and replay in cassandra 4.0
Live traffic capture and replay in cassandra 4.0Live traffic capture and replay in cassandra 4.0
Live traffic capture and replay in cassandra 4.0
Vinay Kumar Chella
 
Apache Kudu: Technical Deep Dive


Apache Kudu: Technical Deep Dive

Apache Kudu: Technical Deep Dive


Apache Kudu: Technical Deep Dive


Cloudera, Inc.
 
Dan Norris: Exadata security
Dan Norris: Exadata securityDan Norris: Exadata security
Dan Norris: Exadata security
Kyle Hailey
 
NoCOUG_201411_Patel_Managing_a_Large_OLTP_Database
NoCOUG_201411_Patel_Managing_a_Large_OLTP_DatabaseNoCOUG_201411_Patel_Managing_a_Large_OLTP_Database
NoCOUG_201411_Patel_Managing_a_Large_OLTP_Database
Paresh Patel
 
The State of the Dolphin, MySQL Keynote at Percona Live Europe 2019, Amsterda...
The State of the Dolphin, MySQL Keynote at Percona Live Europe 2019, Amsterda...The State of the Dolphin, MySQL Keynote at Percona Live Europe 2019, Amsterda...
The State of the Dolphin, MySQL Keynote at Percona Live Europe 2019, Amsterda...
Geir Høydalsvik
 
Safer restarts, faster streaming, and better repair, just a glimpse of cassan...
Safer restarts, faster streaming, and better repair, just a glimpse of cassan...Safer restarts, faster streaming, and better repair, just a glimpse of cassan...
Safer restarts, faster streaming, and better repair, just a glimpse of cassan...
Vinay Kumar Chella
 
Upgrading to my sql 8.0
Upgrading to my sql 8.0Upgrading to my sql 8.0
Upgrading to my sql 8.0
Ståle Deraas
 
What We Learned About Cassandra While Building go90 (Christopher Webster & Th...
What We Learned About Cassandra While Building go90 (Christopher Webster & Th...What We Learned About Cassandra While Building go90 (Christopher Webster & Th...
What We Learned About Cassandra While Building go90 (Christopher Webster & Th...
DataStax
 
Cassandra Tuning - above and beyond
Cassandra Tuning - above and beyondCassandra Tuning - above and beyond
Cassandra Tuning - above and beyond
Matija Gobec
 
Cassandra Tuning - Above and Beyond (Matija Gobec, SmartCat) | Cassandra Summ...
Cassandra Tuning - Above and Beyond (Matija Gobec, SmartCat) | Cassandra Summ...Cassandra Tuning - Above and Beyond (Matija Gobec, SmartCat) | Cassandra Summ...
Cassandra Tuning - Above and Beyond (Matija Gobec, SmartCat) | Cassandra Summ...
DataStax
 
The Flink - Apache Bigtop integration
The Flink - Apache Bigtop integrationThe Flink - Apache Bigtop integration
The Flink - Apache Bigtop integration
Márton Balassi
 
MySQL Manchester TT - Performance Tuning
MySQL Manchester TT  - Performance TuningMySQL Manchester TT  - Performance Tuning
MySQL Manchester TT - Performance Tuning
Mark Swarbrick
 
MySQL 5.6 Replication Webinar
MySQL 5.6 Replication WebinarMySQL 5.6 Replication Webinar
MySQL 5.6 Replication Webinar
Mark Swarbrick
 
Application High Availability and Upgrades Using Oracle GoldenGate
Application High Availability and Upgrades Using Oracle GoldenGateApplication High Availability and Upgrades Using Oracle GoldenGate
Application High Availability and Upgrades Using Oracle GoldenGate
Shane Borden
 
DataStax Enterprise & Apache Cassandra – Essentials for Financial Services – ...
DataStax Enterprise & Apache Cassandra – Essentials for Financial Services – ...DataStax Enterprise & Apache Cassandra – Essentials for Financial Services – ...
DataStax Enterprise & Apache Cassandra – Essentials for Financial Services – ...
Daniel Cohen
 
Collaborate 2012 - Administering MySQL for Oracle DBAs
Collaborate 2012 - Administering MySQL for Oracle DBAsCollaborate 2012 - Administering MySQL for Oracle DBAs
Collaborate 2012 - Administering MySQL for Oracle DBAs
Nelson Calero
 
Top 10 Best Practices for Apache Cassandra and DataStax Enterprise
Top 10 Best Practices for Apache Cassandra and DataStax EnterpriseTop 10 Best Practices for Apache Cassandra and DataStax Enterprise
Top 10 Best Practices for Apache Cassandra and DataStax Enterprise
DataStax
 
Training Slides: Basics 102: Introduction to Tungsten Clustering
Training Slides: Basics 102: Introduction to Tungsten ClusteringTraining Slides: Basics 102: Introduction to Tungsten Clustering
Training Slides: Basics 102: Introduction to Tungsten Clustering
Continuent
 
Ad

More from Yuki Morishita (12)

DataStax EnterpriseでApache Tinkerpop入門
DataStax EnterpriseでApache Tinkerpop入門DataStax EnterpriseでApache Tinkerpop入門
DataStax EnterpriseでApache Tinkerpop入門
Yuki Morishita
 
Apache tinkerpopとグラフデータベースの世界
Apache tinkerpopとグラフデータベースの世界Apache tinkerpopとグラフデータベースの世界
Apache tinkerpopとグラフデータベースの世界
Yuki Morishita
 
DataStax Enterpriseによる大規模グラフ解析
DataStax Enterpriseによる大規模グラフ解析DataStax Enterpriseによる大規模グラフ解析
DataStax Enterpriseによる大規模グラフ解析
Yuki Morishita
 
サンプルアプリケーションで学ぶApache Cassandraを使ったJavaアプリケーションの作り方
サンプルアプリケーションで学ぶApache Cassandraを使ったJavaアプリケーションの作り方サンプルアプリケーションで学ぶApache Cassandraを使ったJavaアプリケーションの作り方
サンプルアプリケーションで学ぶApache Cassandraを使ったJavaアプリケーションの作り方
Yuki Morishita
 
サンプルで学ぶCassandraアプリケーションの作り方
サンプルで学ぶCassandraアプリケーションの作り方サンプルで学ぶCassandraアプリケーションの作り方
サンプルで学ぶCassandraアプリケーションの作り方
Yuki Morishita
 
分散グラフデータベース DataStax Enterprise Graph
分散グラフデータベース DataStax Enterprise Graph分散グラフデータベース DataStax Enterprise Graph
分散グラフデータベース DataStax Enterprise Graph
Yuki Morishita
 
事例で学ぶApache Cassandra
事例で学ぶApache Cassandra事例で学ぶApache Cassandra
事例で学ぶApache Cassandra
Yuki Morishita
 
Apache Cassandra最新情報まとめ
Apache Cassandra最新情報まとめApache Cassandra最新情報まとめ
Apache Cassandra最新情報まとめ
Yuki Morishita
 
Datastax Enterpriseをはじめよう
Datastax EnterpriseをはじめようDatastax Enterpriseをはじめよう
Datastax Enterpriseをはじめよう
Yuki Morishita
 
How you can contribute to Apache Cassandra
How you can contribute to Apache CassandraHow you can contribute to Apache Cassandra
How you can contribute to Apache Cassandra
Yuki Morishita
 
CQL3 in depth
CQL3 in depthCQL3 in depth
CQL3 in depth
Yuki Morishita
 
Cassandraのしくみ データの読み書き編
Cassandraのしくみ データの読み書き編Cassandraのしくみ データの読み書き編
Cassandraのしくみ データの読み書き編
Yuki Morishita
 
DataStax EnterpriseでApache Tinkerpop入門
DataStax EnterpriseでApache Tinkerpop入門DataStax EnterpriseでApache Tinkerpop入門
DataStax EnterpriseでApache Tinkerpop入門
Yuki Morishita
 
Apache tinkerpopとグラフデータベースの世界
Apache tinkerpopとグラフデータベースの世界Apache tinkerpopとグラフデータベースの世界
Apache tinkerpopとグラフデータベースの世界
Yuki Morishita
 
DataStax Enterpriseによる大規模グラフ解析
DataStax Enterpriseによる大規模グラフ解析DataStax Enterpriseによる大規模グラフ解析
DataStax Enterpriseによる大規模グラフ解析
Yuki Morishita
 
サンプルアプリケーションで学ぶApache Cassandraを使ったJavaアプリケーションの作り方
サンプルアプリケーションで学ぶApache Cassandraを使ったJavaアプリケーションの作り方サンプルアプリケーションで学ぶApache Cassandraを使ったJavaアプリケーションの作り方
サンプルアプリケーションで学ぶApache Cassandraを使ったJavaアプリケーションの作り方
Yuki Morishita
 
サンプルで学ぶCassandraアプリケーションの作り方
サンプルで学ぶCassandraアプリケーションの作り方サンプルで学ぶCassandraアプリケーションの作り方
サンプルで学ぶCassandraアプリケーションの作り方
Yuki Morishita
 
分散グラフデータベース DataStax Enterprise Graph
分散グラフデータベース DataStax Enterprise Graph分散グラフデータベース DataStax Enterprise Graph
分散グラフデータベース DataStax Enterprise Graph
Yuki Morishita
 
事例で学ぶApache Cassandra
事例で学ぶApache Cassandra事例で学ぶApache Cassandra
事例で学ぶApache Cassandra
Yuki Morishita
 
Apache Cassandra最新情報まとめ
Apache Cassandra最新情報まとめApache Cassandra最新情報まとめ
Apache Cassandra最新情報まとめ
Yuki Morishita
 
Datastax Enterpriseをはじめよう
Datastax EnterpriseをはじめようDatastax Enterpriseをはじめよう
Datastax Enterpriseをはじめよう
Yuki Morishita
 
How you can contribute to Apache Cassandra
How you can contribute to Apache CassandraHow you can contribute to Apache Cassandra
How you can contribute to Apache Cassandra
Yuki Morishita
 
Cassandraのしくみ データの読み書き編
Cassandraのしくみ データの読み書き編Cassandraのしくみ データの読み書き編
Cassandraのしくみ データの読み書き編
Yuki Morishita
 
Ad

Recently uploaded (20)

DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptx
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptxDevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptx
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptx
Justin Reock
 
Complete Guide to Advanced Logistics Management Software in Riyadh.pdf
Complete Guide to Advanced Logistics Management Software in Riyadh.pdfComplete Guide to Advanced Logistics Management Software in Riyadh.pdf
Complete Guide to Advanced Logistics Management Software in Riyadh.pdf
Software Company
 
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...
Alan Dix
 
The Evolution of Meme Coins A New Era for Digital Currency ppt.pdf
The Evolution of Meme Coins A New Era for Digital Currency ppt.pdfThe Evolution of Meme Coins A New Era for Digital Currency ppt.pdf
The Evolution of Meme Coins A New Era for Digital Currency ppt.pdf
Abi john
 
Manifest Pre-Seed Update | A Humanoid OEM Deeptech In France
Manifest Pre-Seed Update | A Humanoid OEM Deeptech In FranceManifest Pre-Seed Update | A Humanoid OEM Deeptech In France
Manifest Pre-Seed Update | A Humanoid OEM Deeptech In France
chb3
 
Massive Power Outage Hits Spain, Portugal, and France: Causes, Impact, and On...
Massive Power Outage Hits Spain, Portugal, and France: Causes, Impact, and On...Massive Power Outage Hits Spain, Portugal, and France: Causes, Impact, and On...
Massive Power Outage Hits Spain, Portugal, and France: Causes, Impact, and On...
Aqusag Technologies
 
Semantic Cultivators : The Critical Future Role to Enable AI
Semantic Cultivators : The Critical Future Role to Enable AISemantic Cultivators : The Critical Future Role to Enable AI
Semantic Cultivators : The Critical Future Role to Enable AI
artmondano
 
Role of Data Annotation Services in AI-Powered Manufacturing
Role of Data Annotation Services in AI-Powered ManufacturingRole of Data Annotation Services in AI-Powered Manufacturing
Role of Data Annotation Services in AI-Powered Manufacturing
Andrew Leo
 
TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...
TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...
TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...
TrustArc
 
2025-05-Q4-2024-Investor-Presentation.pptx
2025-05-Q4-2024-Investor-Presentation.pptx2025-05-Q4-2024-Investor-Presentation.pptx
2025-05-Q4-2024-Investor-Presentation.pptx
Samuele Fogagnolo
 
#StandardsGoals for 2025: Standards & certification roundup - Tech Forum 2025
#StandardsGoals for 2025: Standards & certification roundup - Tech Forum 2025#StandardsGoals for 2025: Standards & certification roundup - Tech Forum 2025
#StandardsGoals for 2025: Standards & certification roundup - Tech Forum 2025
BookNet Canada
 
TrsLabs - Fintech Product & Business Consulting
TrsLabs - Fintech Product & Business ConsultingTrsLabs - Fintech Product & Business Consulting
TrsLabs - Fintech Product & Business Consulting
Trs Labs
 
Into The Box Conference Keynote Day 1 (ITB2025)
Into The Box Conference Keynote Day 1 (ITB2025)Into The Box Conference Keynote Day 1 (ITB2025)
Into The Box Conference Keynote Day 1 (ITB2025)
Ortus Solutions, Corp
 
UiPath Community Berlin: Orchestrator API, Swagger, and Test Manager API
UiPath Community Berlin: Orchestrator API, Swagger, and Test Manager APIUiPath Community Berlin: Orchestrator API, Swagger, and Test Manager API
UiPath Community Berlin: Orchestrator API, Swagger, and Test Manager API
UiPathCommunity
 
Heap, Types of Heap, Insertion and Deletion
Heap, Types of Heap, Insertion and DeletionHeap, Types of Heap, Insertion and Deletion
Heap, Types of Heap, Insertion and Deletion
Jaydeep Kale
 
ThousandEyes Partner Innovation Updates for May 2025
ThousandEyes Partner Innovation Updates for May 2025ThousandEyes Partner Innovation Updates for May 2025
ThousandEyes Partner Innovation Updates for May 2025
ThousandEyes
 
tecnologias de las primeras civilizaciones.pdf
tecnologias de las primeras civilizaciones.pdftecnologias de las primeras civilizaciones.pdf
tecnologias de las primeras civilizaciones.pdf
fjgm517
 
HCL Nomad Web – Best Practices and Managing Multiuser Environments
HCL Nomad Web – Best Practices and Managing Multiuser EnvironmentsHCL Nomad Web – Best Practices and Managing Multiuser Environments
HCL Nomad Web – Best Practices and Managing Multiuser Environments
panagenda
 
Splunk Security Update | Public Sector Summit Germany 2025
Splunk Security Update | Public Sector Summit Germany 2025Splunk Security Update | Public Sector Summit Germany 2025
Splunk Security Update | Public Sector Summit Germany 2025
Splunk
 
Generative Artificial Intelligence (GenAI) in Business
Generative Artificial Intelligence (GenAI) in BusinessGenerative Artificial Intelligence (GenAI) in Business
Generative Artificial Intelligence (GenAI) in Business
Dr. Tathagat Varma
 
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptx
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptxDevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptx
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptx
Justin Reock
 
Complete Guide to Advanced Logistics Management Software in Riyadh.pdf
Complete Guide to Advanced Logistics Management Software in Riyadh.pdfComplete Guide to Advanced Logistics Management Software in Riyadh.pdf
Complete Guide to Advanced Logistics Management Software in Riyadh.pdf
Software Company
 
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...
Alan Dix
 
The Evolution of Meme Coins A New Era for Digital Currency ppt.pdf
The Evolution of Meme Coins A New Era for Digital Currency ppt.pdfThe Evolution of Meme Coins A New Era for Digital Currency ppt.pdf
The Evolution of Meme Coins A New Era for Digital Currency ppt.pdf
Abi john
 
Manifest Pre-Seed Update | A Humanoid OEM Deeptech In France
Manifest Pre-Seed Update | A Humanoid OEM Deeptech In FranceManifest Pre-Seed Update | A Humanoid OEM Deeptech In France
Manifest Pre-Seed Update | A Humanoid OEM Deeptech In France
chb3
 
Massive Power Outage Hits Spain, Portugal, and France: Causes, Impact, and On...
Massive Power Outage Hits Spain, Portugal, and France: Causes, Impact, and On...Massive Power Outage Hits Spain, Portugal, and France: Causes, Impact, and On...
Massive Power Outage Hits Spain, Portugal, and France: Causes, Impact, and On...
Aqusag Technologies
 
Semantic Cultivators : The Critical Future Role to Enable AI
Semantic Cultivators : The Critical Future Role to Enable AISemantic Cultivators : The Critical Future Role to Enable AI
Semantic Cultivators : The Critical Future Role to Enable AI
artmondano
 
Role of Data Annotation Services in AI-Powered Manufacturing
Role of Data Annotation Services in AI-Powered ManufacturingRole of Data Annotation Services in AI-Powered Manufacturing
Role of Data Annotation Services in AI-Powered Manufacturing
Andrew Leo
 
TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...
TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...
TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...
TrustArc
 
2025-05-Q4-2024-Investor-Presentation.pptx
2025-05-Q4-2024-Investor-Presentation.pptx2025-05-Q4-2024-Investor-Presentation.pptx
2025-05-Q4-2024-Investor-Presentation.pptx
Samuele Fogagnolo
 
#StandardsGoals for 2025: Standards & certification roundup - Tech Forum 2025
#StandardsGoals for 2025: Standards & certification roundup - Tech Forum 2025#StandardsGoals for 2025: Standards & certification roundup - Tech Forum 2025
#StandardsGoals for 2025: Standards & certification roundup - Tech Forum 2025
BookNet Canada
 
TrsLabs - Fintech Product & Business Consulting
TrsLabs - Fintech Product & Business ConsultingTrsLabs - Fintech Product & Business Consulting
TrsLabs - Fintech Product & Business Consulting
Trs Labs
 
Into The Box Conference Keynote Day 1 (ITB2025)
Into The Box Conference Keynote Day 1 (ITB2025)Into The Box Conference Keynote Day 1 (ITB2025)
Into The Box Conference Keynote Day 1 (ITB2025)
Ortus Solutions, Corp
 
UiPath Community Berlin: Orchestrator API, Swagger, and Test Manager API
UiPath Community Berlin: Orchestrator API, Swagger, and Test Manager APIUiPath Community Berlin: Orchestrator API, Swagger, and Test Manager API
UiPath Community Berlin: Orchestrator API, Swagger, and Test Manager API
UiPathCommunity
 
Heap, Types of Heap, Insertion and Deletion
Heap, Types of Heap, Insertion and DeletionHeap, Types of Heap, Insertion and Deletion
Heap, Types of Heap, Insertion and Deletion
Jaydeep Kale
 
ThousandEyes Partner Innovation Updates for May 2025
ThousandEyes Partner Innovation Updates for May 2025ThousandEyes Partner Innovation Updates for May 2025
ThousandEyes Partner Innovation Updates for May 2025
ThousandEyes
 
tecnologias de las primeras civilizaciones.pdf
tecnologias de las primeras civilizaciones.pdftecnologias de las primeras civilizaciones.pdf
tecnologias de las primeras civilizaciones.pdf
fjgm517
 
HCL Nomad Web – Best Practices and Managing Multiuser Environments
HCL Nomad Web – Best Practices and Managing Multiuser EnvironmentsHCL Nomad Web – Best Practices and Managing Multiuser Environments
HCL Nomad Web – Best Practices and Managing Multiuser Environments
panagenda
 
Splunk Security Update | Public Sector Summit Germany 2025
Splunk Security Update | Public Sector Summit Germany 2025Splunk Security Update | Public Sector Summit Germany 2025
Splunk Security Update | Public Sector Summit Germany 2025
Splunk
 
Generative Artificial Intelligence (GenAI) in Business
Generative Artificial Intelligence (GenAI) in BusinessGenerative Artificial Intelligence (GenAI) in Business
Generative Artificial Intelligence (GenAI) in Business
Dr. Tathagat Varma
 

Apache cassandra v4.0

  • 1. Apache Cassandra v4.0 1 © DataStax, All Rights Reserved. Confidential DataStax Japan Yuki Morishita Cassandra Meetup in Tokyo February 2019 2019/2/21
  • 2. Who am I? Yuki Morishita ([email protected]) – Principal Architect at DataStax Japan – Apache Cassandra committer © DataStax, All Rights Reserved.2 Confidential
  • 3. Apache Cassandra v4.0!!! 3 © DataStax, All Rights Reserved. Confidential
  • 4. Apache Cassandra v4.0 • Been working for 1.5 years after 3.11.0 release • Feature freeze on September 1, 2018 • No fixed release date • See NEWS.TXT for upgrade instruction – No direct upgrade from pre-3.0 versions 4 © DataStax, All Rights Reserved. Confidential
  • 5. CHANGES.TXT • More than 340 changes (new features / bug fixes) 5 © DataStax, All Rights Reserved. Confidential 4.0 * Fix SimpleStrategy option validation (CASSANDRA-15007) * Don't try to cancel 2i compactions when starting anticompaction (CASSANDRA-15024) * Avoid NPE in RepairRunnable.recordFailure (CASSANDRA-15025) * SSL Cert Hot Reloading should check for sanity of the new keystore/truststore before loading it (CASSANDRA-14991) * Avoid leaking threads when failing anticompactions and rate limit anticompactions (CASSANDRA- 15002) * Validate token() arguments early instead of throwing NPE at execution (CASSANDRA-14989) * Add a new tool to dump audit logs (CASSANDRA-14885) * Fix generating javadoc with Java11 (CASSANDRA-14988) * Only cancel conflicting compactions when starting anticompactions and sub range compactions (CASSANDRA-14935) * Use a stub IndexRegistry for non-daemon use cases (CASSANDRA-14938) * Don't enable client transports when bootstrap is pending (CASSANDRA-14525) * Make antiCompactGroup throw exception on error and anticompaction non cancellable again (CASSANDRA-14936) * Catch empty/invalid bounds in SelectStatement (CASSANDRA-14849) * Auto-expand replication_factor for NetworkTopologyStrategy (CASSANDRA-14303) * Transient Replication: support EACH_QUORUM (CASSANDRA-14727) * BufferPool: allocating thread for new chunks should acquire directly (CASSANDRA-14832) * Send correct messaging version in internode messaging handshake's third message (CASSANDRA- 14896) * Make Read and Write Latency columns consistent for proxyhistograms and tablehistograms (CASSANDRA-11939) * Make protocol checksum type option case insensitive (CASSANDRA-14716) * Forbid re-adding static columns as regular and vice versa (CASSANDRA-14913)
  • 6. New Features • Virtual Tables • Transient Replication • Audit logging • Full query logging • Zero-copy SSTable streaming 6 © DataStax, All Rights Reserved. Confidential
  • 7. Virtual Tables • Before Virtual Table… – JMX or nodetool • Cache information – nodetool info • Thread pools – nodetool tpstats • Connected clients – nodetool clientstats –all (new in v4.0!) • SSTable activities – nodetool compactionstats – Config • vim cassandra.yaml 7 © DataStax, All Rights Reserved. Confidential
  • 8. Virtual Tables • After Virtual Table… (in addition to the methods in prev slide) – Cache information • SELECT * FROM system_views.caches; • SELECT * FROM system_views.caches WHERE name = 'chunks’; – Thread pools • SELECT * FROM system_views.thread_pools; – Connected clients • SELECT * FROM system_views.clients; – SSTable activities • SELECT * FROM system_views.sstable_tasks – Config • SELECT * FROM system_views.settings; 8 © DataStax, All Rights Reserved. Confidential
  • 9. Virtual Tables • How about updating config? – Not yet supported • Keep track of issues – https://issues.apache.org/jira/browse/CASSANDRA-14670?jql=labels%20%3D%20virtual-tables 9 © DataStax, All Rights Reserved. Confidential
  • 10. Transient Replication • Save disk space, CPU cycle and IO with temporary copy (transient replica) • Temporary copy is replicated with incremental repair, and removed • Experimental feature in v4.0 • Unsupported features – Monotonic read (read with blocking read repair) – Logged batch – LWT – Counters – Secondary Index / Materialized view (never support) 10 © DataStax, All Rights Reserved. Confidential
  • 11. Transient Replication • Read / Write with RF=3, CL=QUORUM 11 © DataStax, All Rights Reserved. Confidential Write Read
  • 12. Transient Replication • Read / Write with RF=3 (with 1 transient replica), CL=QUORUM 12 © DataStax, All Rights Reserved. Confidential Write Read Transient ReplicaTransient Replica
  • 13. Transient Replication • Read / Write with RF=3 (with 1 transient replica), CL=QUORUM • When one node is down 13 © DataStax, All Rights Reserved. Confidential Write Read Transient ReplicaTransient Replica
  • 14. Transient Replication • Temporary copy is replicated and removed after incremental repair 14 © DataStax, All Rights Reserved. Confidential Transient Replica Incremental repair
  • 15. Transient Replication • Temporary copy is replicated and removed after incremental repair 15 © DataStax, All Rights Reserved. Confidential Transient Replica
  • 16. Transient Replication CREATE KEYSPACE ks WITH replication = { 'class': 'NetworkTopologyStrategy', 'replication_factor': '3/1' }; 16 © DataStax, All Rights Reserved. Confidential
  • 17. Audit Logging • Log queries / authentication to a node for auditing • When audit events are logged? – After executing CQL / Authentication, before sending response • Pluggable logger (IAuditLogger interface) to publish audit event anywhere – BinAuditLogger (default) – binary log – FileAuditLogger – logback • Audit log includes: – User, Client IP, timestamp, category, operation, … • See https://cassandra.apache.org/doc/latest/operating/audit_logging.html 17 © DataStax, All Rights Reserved. Confidential
  • 18. Audit Logging • Enabling audit logging – cassandra.yaml 18 © DataStax, All Rights Reserved. Confidential # Audit logging - Logs every incoming CQL command request, authentication to a node. See the docs # on audit_logging for full details about the various configuration options. audit_logging_options: enabled: false logger: BinAuditLogger # audit_logs_dir: # included_keyspaces: # excluded_keyspaces: system, system_schema, system_virtual_schema # included_categories: # excluded_categories: # included_users: # excluded_users: # roll_cycle: HOURLY # block: true # max_queue_weight: 268435456 # 256 MiB # max_log_size: 17179869184 # 16 GiB ## archive command is "/path/to/script.sh %path" where %path is replaced with the file being rolled: # archive_command: # max_archive_retries: 10
  • 19. Audit Logging • Enabling audit logging – nodetool enableauditlog • Can change the same settings using command line options – --included-keyspaces, --logger, etc. – nodetool disableauditlog 19 © DataStax, All Rights Reserved. Confidential
  • 20. Audit Logging • New tool: auditlogviewer • auditlogviewer -f /var/log/cassandra/audit/ 20 © DataStax, All Rights Reserved. Confidential Type: AuditLog LogMessage: user:anonymous|host:172.17.0.2:7000|source:/127.0.0.1|port:49644|timestamp:1550558120912|type:USE_KEYSPACE|category:OTHER|ks:tesks|operation:use tesks ; Type: AuditLog LogMessage: user:anonymous|host:172.17.0.2:7000|source:/127.0.0.1|port:49644|timestamp:1550558120913|type:USE_KEYSPACE|category:OTHER|ks:tesks|operation:USE "tesks" Type: AuditLog LogMessage: user:anonymous|host:172.17.0.2:7000|source:/127.0.0.1|port:49644|timestamp:1550558139178|type:UPDATE|category:DML|ks:tesks|scope:test|operation: INSERT INTO tesks.test (key, val) VALUES ( 'a', currentTimestamp()); Type: AuditLog LogMessage: user:anonymous|host:172.17.0.2:7000|source:/127.0.0.1|port:49644|timestamp:1550558147633|type:SELECT|category:QUERY|ks:tesks|scope:test|operatio n:SELECT * FROM tesks.test
  • 21. Full Query Logging • Enable workload recording, replay and compare result • Use case – Capture workload in production. Use it in dev environment to test in different Cassandra version. Compare result for correctness. 21 © DataStax, All Rights Reserved. Confidential Capture Replay Full Query Log Prod Dev
  • 22. Full Query Logging • Use nodetool to start / stop capturing – nodetool enablefullquerylog • Enable full query logging, defaults for the options are configured in cassandra.yaml – nodetool disablefullquerylog • Disable the full query log – nodetool resetfullquerylog • Stop the full query log and clean files in the configured full query log directory from cassandra.yaml as well as JMX 22 © DataStax, All Rights Reserved. Confidential
  • 23. Full Query Logging • Use fqltool to replay and compare result – fqltool replay • Replay full query logs – fqltool compare • Compare result files generated by fqltool replay – fqltool dump • Dump the contents of a full query log 23 © DataStax, All Rights Reserved. Confidential
  • 24. Zero-copy SSTable streaming • SSTable streaming 24 © DataStax, All Rights Reserved. Confidential Data.db Index.db Filter.db Compress sionInfo.db Sender node Receiver node Give me partitions between token 0 and 100
  • 25. Zero-copy SSTable streaming • SSTable streaming 25 © DataStax, All Rights Reserved. Confidential Data.db Index.db Filter.db Compress sionInfo.db Sender node Receiver node Here are partitions between token 0 and 100 in this SSTable
  • 26. Zero-copy SSTable streaming • SSTable streaming 26 © DataStax, All Rights Reserved. Confidential Data.db Index.db Filter.db Compress sionInfo.db Sender node Receiver node Here are partitions between token 0 and 100 in this SSTable
  • 27. Zero-copy SSTable streaming • SSTable streaming 27 © DataStax, All Rights Reserved. Confidential Data.db Index.db Filter.db Compress sionInfo.db Sender node Receiver node • Decompress • Deserialize • Update Stats / BF / Index • Serialize • Compress Data.dbIndex.db Filter.db Compress sionInfo.db
  • 28. Zero-copy SSTable streaming • Zero-copy SSTable streaming 28 © DataStax, All Rights Reserved. Confidential Data.db Index.db Filter.db Compress sionInfo.db Sender node Receiver node Give me partitions between token 0 and 100
  • 29. Zero-copy SSTable streaming • Zero-copy SSTable streaming 29 © DataStax, All Rights Reserved. Confidential Data.db Index.db Filter.db Compress sionInfo.db Sender node Receiver node This SSTable contains partitions in token 0 and 100!
  • 30. Zero-copy SSTable streaming • Zero-copy SSTable streaming 30 © DataStax, All Rights Reserved. Confidential Data.db Index.db Filter.db Compress sionInfo.db Sender node Receiver node Zero-copy Transfer Data.db Index.db Filter.db Compress sionInfo.db
  • 31. Zero-copy SSTable streaming • Enabled by default – Can be turned off in cassandra.yaml (stream_entire_sstables) • Only works for SSTables in table using LeveledCompactionStrategy – For now… • https://cassandra.apache.org/blog/2018/08/07/faster_streaming_in_cassandra.html 31 © DataStax, All Rights Reserved. Confidential
  • 32. Other Notable Changes • Experimental Java 11 support – Can use ZGC • Asynchronous internode messaging / streaming – More efficient if you have large cluster • Thrift / COMPACT STORAGE removed (finally) • Network authorization – Can create role that only has access to certain datacenter • CDC improvement – Change data is available faster than previous implementation 32 © DataStax, All Rights Reserved. Confidential
  • 33. Other Notable Changes • Read repair change – dc_read_repair_chance / read_repair_chance are gone • no more async read repair – Blocking read repair can be turned off • ALTER TABLE ... WITH read_repair = NONE; 33 © DataStax, All Rights Reserved. Confidential
  • 34. Apache Cassandra Side-car project 34 © DataStax, All Rights Reserved. Confidential
  • 35. Cassandra side-car • Cassandra management process that runs separately from Cassandra daemon • Provides HTTP API to monitor and manage Cassandra node • Proposal – https://cwiki.apache.org/confluence/pages/viewpage.action?pageId=95652224 • Repository: – https://github.com/apache/cassandra-sidecar – Currently healthcheck API is implemented 35 © DataStax, All Rights Reserved. Confidential
  • 36. Thank you, Questions? 36 © DataStax, All Rights Reserved. Confidential