Latest update: Scylla 4.0
Scylla 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 advanced 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
Note
This table includes Apache Cassandra features and the corresponding Scylla Open Source status. It does not include Scylla Enterprise features or Scylla Open Source features with no match in Apache Cassandra. More on Scylla Features
For all tables below, the following convention is used:
- Not Available in Scylla
NC - Available in Scylla, but not compatible with Apache Cassandra
- Available and compatible with Apache Cassandra
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 (all versions) |
3.11(mc / md ), 2.2(la), 2.1.8 (ka) |
md format is supported in Scylla 4.3, 2021.1.0 and later |
JMX |
3.11 |
More Below |
Configuration (cassandra.yaml) |
3.11 |
|
Log |
NC |
|
Gossip and internal streaming |
NC |
|
SSL |
NC |
(based on Apache Cassandra 3.11 release)
Nodetool Reference - Scylla commands for managing Scylla node or cluster using the command-line nodetool utility.
Tracing - a ScyllaDB tool for debugging and analyzing internal flows in the server.
SSTableloader - Bulk load the sstables found in the directory to a Scylla cluster
scylla-sstable - Validates and dumps the content of SStables, generates a histogram, dumps the content of the SStable index.
cassandra-stress A tool for benchmarking and load testing a Scylla and Cassandra clusters.
SSTabledump - Scylla 3.0, Scylla Enterprise 2019.1 and newer versions
sstablelevelreset - Reset level to 0 on a selected set of SSTables that use LeveledCompactionStrategy (LCS).
SSTable-Index - A tool which lists all partitions contained in an SSTable index.
sstablemetadata - Prints metadata about a specified SSTable.
sstablerepairedset - Mark specific SSTables as repaired or unrepaired.
configuration_encryptor - encrypt at rest sensitive scylla configuration entries using system key.
local_file_key_generator - Generate a local file (system) key for encryption at rest, with the provided length, Key algorithm, Algorithm block mode and Algorithm padding method.
scyllatop - A terminal base top-like tool for scylladb collectd/prometheus metrics.
scylla_dev_mode_setup - run Scylla in Developer Mode.
perftune - performance configuration.
Run each tool with -h
, --help
for full options description.
Options |
Support |
---|---|
Any (Write Only) |
|
One |
|
Two |
|
Three |
|
Quorum |
|
All |
|
Local One |
|
Local Quorum |
|
Each Quorum (Write Only) |
|
SERIAL |
* |
LOCAL_SERIAL |
* |
* From Scylla 4.0. See Scylla LWT
Options |
Support |
---|---|
PropertyFileSnitch |
|
Dynamic snitching |
|
CloudstackSnitch |
Options |
Support |
---|---|
Murmur3Partitioner (default) |
|
RandomPartitioner |
* |
OrderPreservingPartitioner |
|
ByteOrderedPartitioner |
* |
CollatingOrderPreservingPartitioner |
* Removed in Scylla 4.0
Options |
Support |
---|---|
Compression (see below) |
Options |
Support |
---|---|
CQL Compression |
|
LZ4 |
|
Snappy |
|
Options |
Support |
---|---|
Options |
Support |
---|---|
Incremental Repair |
|
* |
* From Scylla 4.0. See Scylla LWT
Options |
Support |
---|---|
SimpleStrategy |
|
NetworkTopologyStrategy |
Options |
Support |
---|---|
Role Based Access Control (RBAC) |
Options |
Support |
---|---|
row / key cache |
(More on Scylla memory and cache) |
* |
|
* |
* In Scylla Open Source and Scylla Enterprise from 2019.1
Feature |
Support |
---|---|
Counters |
|
User Defined Types |
|
User Defined Functions |
* |
Time to live (TTL) |
|
Super Column |
|
vNode Enable |
Default |
vNode Disable |
|
Triggers |
|
Batch Requests |
Includes conditional updates |
* Experimental
Feature |
Support |
---|---|
DURABLE_WRITES |
|
IF NOT EXISTS |
|
WITH REPLICATION |
(see below) |
Feature |
Support |
---|---|
SimpleStrategy |
|
NetworkTopologyStrategy |
|
OldNetworkTopologyStrategy |
Feature |
Support |
---|---|
Primary key column |
|
Compound primary key |
|
Composite partition key |
|
Clustering order |
|
Static column |
Feature |
Support |
---|---|
bloom_filter_fp_chance |
|
caching |
(ignored) |
comment |
|
compaction |
|
compression |
|
dclocal_read_repair_chance |
|
default_time_to_live |
|
gc_grace_seconds |
|
index_interval |
|
max_index_interval |
|
memtable_flush_period_in_ms |
(ignored) |
min_index_interval |
|
populate_io_cache_on_flush |
|
read_repair_chance |
|
replicate_on_write |
|
speculative_retry |
|
Feature |
Support |
---|---|
SizeTieredCompactionStrategy (STCS) |
|
DateTieredCompactionStrategy (DTCS) |
* |
TimeWindowCompactionStrategy (TWCS) |
* Deprecated in Scylla 4.0, use TWCS instead
Feature |
Support |
---|---|
sstable_compression LZ4Compressor |
|
sstable_compression SnappyCompressor |
|
sstable_compression DeflateCompressor |
|
chunk_length_kb |
|
crc_check_chance |
Feature |
Support |
---|---|
ALTER KEYSPACE |
|
ALTER TABLE |
|
ALTER TYPE |
|
ALTER USER |
|
ALTER ROLE |
Feature |
Support |
---|---|
BATCH |
|
INSERT |
|
Prepared Statements |
|
SELECT |
|
TRUNCATE |
|
UPDATE |
|
USE |
Feature |
Support |
---|---|
CREATE TRIGGER |
|
CREATE USER |
|
CREATE ROLE |
Feature |
Support |
---|---|
DROP KEYSPACE |
|
DROP TABLE |
|
DROP TRIGGER |
|
DROP TYPE |
|
DROP USER |
|
DROP ROLE |
Feature |
Support |
---|---|
GRANT PERMISSIONS |
|
GRANT ROLE |
|
LIST PERMISSIONS |
|
LIST USERS |
|
LIST ROLES |
|
REVOKE PERMISSIONS |
|
REVOKE ROLE |
Feature |
Support |
---|---|
MATERIALIZED VIEW |
|
ALTER MATERIALIZED VIEW |
|
CREATE MATERIALIZED VIEW |
|
DROP MATERIALIZED VIEW |
Feature |
Support |
---|---|
INDEX |
|
CREATE INDEX |
|
DROP INDEX |
© 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.