Scylla and Apache Cassandra Compatibility¶
Latest update: Scylla 3.0
Scylla 3.0 is a drop-in replacement for Apache Cassandra 3.11, supporting both the data format (SSTable) and all relevant external interfaces, with many features from more advance Apache Cassandra releases. The following page detailed the level of support for each interface. For more on Cassandra features which are not available yet see here
For all tables below, the following convention is used:
- NA - Not yet Available in Scylla
- NC - Available, not compatible with Apache Cassandra
Interfaces¶
Apache Cassandra | Version | Comments |
---|---|---|
CQL | CQL spec 3.4.0, Native protocol v4 (C* 3.11) | More below |
Thrift | Compatible with Cassandra 2.1 | |
SSTable format | 3.11(mc), 2.2(la), 2.1.8 (ka) | |
JMX | 3.11 | More Below |
Configuration (cassandra.yaml) | 3.11 | |
Log | NC | |
Gossip and internal streaming | NC | |
SSL | NC |
Supported Tools¶
(based on Apache Cassandra 3.11 release)
Features¶
Feature | Options | Support |
---|---|---|
Consistency Level (read and write) | ||
Any (Write Only) | Yes | |
One | Yes | |
Two | Yes | |
Three | Yes | |
Quorum | Yes | |
All | Yes | |
Local One | Yes | |
Local Qurum | Yes | |
Each Quorum (Write Only) | Yes | |
SERIAL | NA (Follow 1359 for updates) | |
LOCAL_SERIAL | NA (Follow 1359 for updates) | |
row / key cache | NC (More on Scylla memory and cache) | |
Secondary Index | YES - from Scylla 3.0 (see 401) | |
Materialized Views | YES - from Scylla 3.0 (see 1141) | |
Lightweight transactions | NA (Follow 1359 for updates) | |
Counters | Yes | |
Role Based Access Control (RBAC) | Yes | |
User Define Types | Yes | |
User Define Functions | NA | |
Time to live (TTL) | Yes | |
Super Column | NA | |
Replica placement strategy | ||
SimpleStrategy | Yes | |
NetworkTopologyStrategy | Yes | |
Snitch | ||
SimpleSnitch | Yes | |
RackInferringSnitch | Yes | |
PropertyFileSnitch | NA | |
GossipingPropertyFileSnitch | Yes | |
Dynamic snitching | NA | |
EC2Snitch | Yes | |
EC2MultiRegionSnitch | Yes | |
GoogleCloudSnitch | Yes (from Scylla 2.2) | |
CloudstackSnitch | NA | |
Partitioner | ||
Murmur3Partitioner (default) | Yes | |
RandomPartitioner | Yes | |
OrderPreservingPartitioner | NA | |
ByteOrderedPartitioner | Yes | |
CollatingOrderPreservingPartitioner | NA | |
Protocol options | ||
Compression | Yes (see below) | |
Encryption | Yes | |
Authentication | Yes | |
Authorization | Yes | |
CQL Compression | ||
LZ4 | Yes | |
Snappy | Yes | |
Internode Compression | Yes | |
vNode Enable | Yes, default | |
vNode Disable | NA |
Triggers | NA | |
Batch Requests | Yes (not including conditional updates) | |
Repair | Yes | |
Incremental Repair | NA | |
HintedHandoff | Yes - from Scylla 3.0 | |
Backup / Restore | ||
Snapshot | Yes | |
Incremental backup | Yes | |
Restore | Yes |
CQL¶
Feature | Options | Support |
---|---|---|
CREATE KEYSPACE | Yes | |
WITH REPLICATION | Yes (see below) | |
DURABLE_WRITES | Yes | |
IF NOT EXISTS | Yes | |
CREATE KEYSPACE REPLICATION Class | ||
SimpleStrategy | Yes | |
NetworkTopologyStrategy | Yes | |
OldNetworkTopologyStrategy | NA | |
CREATE TABLE | Yes | |
Primary key column | Yes | |
compound primary key | Yes | |
composite partition key | Yes | |
clustering order | Yes | |
static column | Yes | |
CREATE TABLE Att | Yes | |
bloom_filter_fp_chance | Yes | |
caching | NA (ignored) | |
comment | Yes | |
compaction | Yes (see below) | |
compression | Yes (see below) | |
dclocal_read_repair_chance | Yes | |
default_time_to_live | Yes | |
gc_grace_seconds | Yes | |
index_interval | NA | |
max_index_interval | Yes | |
memtable_flush_period_in_ms | NA (ignored) | |
min_index_interval | Yes | |
populate_io_cache_on_flush | NA | |
read_repair_chance | Yes | |
replicate_on_write | NA | |
speculative_retry | ALWAYS , NONE |
|
CREATE TABLE compaction | ||
SizeTieredCompactionStrategy (STCS) | Yes | |
LeveledCompactionStrategy (LCS) | Yes | |
DateTieredCompactionStrategy (DTCS) | Yes | |
TimeWindowCompactionStrategy (TWCS) | Yes | |
CREATE TABLE compression | ||
sstable_compression LZ4Compressor | Yes | |
sstable_compression SnappyCompressor | Yes | |
sstable_compression DeflateCompressor | Yes | |
chunk_length_kb | Yes | |
crc_check_chance | NA | |
CREATE TABLE compression | ||
ALTER KEYSPACE | Yes | |
ALTER TABLE | Yes | |
ALTER TYPE | Yes | |
ALTER USER | Yes | |
ALTER ROLE | Yes | |
BATCH | Yes | |
CREATE TRIGGER | NA | |
CREATE USER | Yes | |
CREATE ROLE | Yes | |
DROP KEYSPACE | Yes | |
DROP TABLE | Yes | |
DROP TRIGGER | NA | |
DROP TYPE | Yes | |
DROP USER | Yes | |
DROP ROLE | Yes | |
GRANT PERMISSIONS | Yes | |
GRANT ROLE | Yes | |
INSERT | Yes | |
Prepared Statements | Yes | |
LIST PERMISSIONS | Yes | |
LIST USERS | Yes | |
LIST ROLES | Yes | |
REVOKE PERMISSIONS | Yes | |
REVOKE ROLE | Yes | |
SELECT | Yes | |
TRUNCATE | Yes | |
UPDATE | Yes | |
USE | Yes | |
INDEX | Yes - from Scylla 3.0 | |
CREATE INDEX | Yes | |
DROP INDEX | Yes | |
MATERIALIZED VIEW | Yes | |
ALTER MATERIALIZED VIEW | Yes | |
CREATE MATERIALIZED VIEW | Yes | |
DROP MATERIALIZED VIEW | Yes |
© 2016, The Apache Software Foundation.
Apache®, Apache Cassandra®, Cassandra®, the Apache feather logo and the Apache Cassandra® Eye logo are either registered trademarks or trademarks of the Apache Software Foundation in the United States and/or other countries. No endorsement by The Apache Software Foundation is implied by the use of these marks.