ScyllaDB

{{Short description|Source-available distributed NoSQL wide-column data store}}

{{Infobox software

| name = ScyllaDB

| logo = Scylla_the_sea_monster.png

| logo alt = Scylla

| logo caption = Scylla monster, mascot of the Scylla database

| developer = ScyllaDB Inc.

| released = {{Start date and age|2015|09|22}}

| latest release version = ScyllaDB Open Source 6.2.0

| latest release date = {{Start date and age|2024|10|28}}

| programming language = C++

| operating system = Linux

| genre = distributed data store

| license = GNU AGPL

| website = {{URL|https://www.scylladb.com/}}

}}

ScyllaDB is a source-available distributed NoSQL wide-column data store. It was designed to be compatible with Apache Cassandra while achieving significantly higher throughputs and lower latencies. It supports the same protocols as Cassandra (CQL) and the same file formats (SSTable), but is a completely rewritten implementation, using the C++20 language replacing Cassandra's Java, and the Seastar{{Cite web |title=Seastar - Seastar |url=https://seastar.io/ |access-date=2025-02-26 |website=seastar.io}} asynchronous programming library replacing classic Linux programming techniques such as threads, shared memory and mapped files. In addition to implementing Cassandra's protocols, ScyllaDB also implements the Amazon DynamoDB API.{{Cite web |last=Angell |first=Julia |title=ScyllaDB Secures $25 Million to Open Source Amazon DynamoDB-compatible API |url=https://www.scylladb.com/press-release/scylladb-secures-25-million-open-source-amazon-dynamodb-compatible-api/ |access-date=2025-02-26 |website=ScyllaDB |language=en-US}}

ScyllaDB uses a sharded design on each node, meaning that each CPU core handles a different subset of data. Cores do not share data, but rather communicate explicitly when they need to. The ScyllaDB authors claim that this design allows ScyllaDB to achieve much better performance on modern NUMA SMP machines, and to scale very well with the number of cores. They have measured as much as 2 million requests per second on a single machine,[https://www.socallinuxexpo.org/scale/14x/presentations/scylladb-cassandra-compatibility-18-million-requests-node ScyllaDB: Cassandra compatibility at 1.8 million requests per node] by Don Marti (then a ScyllaDB Inc. employee), presented at the Fourteenth Annual Southern California Linux Expo, January 24, 2016. and also claim that a ScyllaDB cluster can serve as many requests as a Cassandra cluster 10 times its size – and do so with lower latencies.{{Cite web |last=Angell |first=Julia |title=Benchmarks |url=https://www.scylladb.com/product/benchmarks/ |access-date=2025-02-26 |website=ScyllaDB |language=en-US}} Independent testing has not always been able to confirm such 10-fold throughput improvements, and sometimes measured smaller speedups, such as 2x.{{Cite web |date=2015-12-15 |title=ScyllaDB vs Cassandra: towards a new myth? |url=https://blog.octo.com/scylladb-vs-cassandra-towards-a-new-myth |access-date=2025-02-26 |website=OCTO Talks ! |language=fr}} A 2017 benchmark from Samsung observed the 10x speedup on high-end machines – the Samsung benchmark reported that ScyllaDB outperformed Cassandra on a cluster of 24-core machines by a margin of 10–37x depending on the YCSB workload.{{citation |url=http://tools.voicesatsamsungsemiconductor.com/r_and_d_labs/tools/toolbox.php?id=6e15b7f4-1f09-4487-b9c0-7842fca81627&dl=1&t=1487264796 |format=PDF |title=ScyllaDB and Samsung NVMe SSDs Accelerate NoSQL Database Performance |date=February 2017 |publisher=Samsung Semiconductor Inc. |page=12 |accessdate=2019-02-07 |author1=Rezaei, Arash |author2=Guz, Zvika |author3=Balakrishnan, Vijay}}

ScyllaDB is available on-premises, on major public cloud providers, or as a DBaaS (ScyllaDB Cloud).{{Citation needed|date=February 2025}}

History

ScyllaDB was started in December 2014 by the startup Cloudius Systems (later renamed ScyllaDB Inc.), previously known for having created OSv. Co-founders were Avi Kivity and Dor Laor. ScyllaDB was released as open source in September 2015,{{Cite web |date=2015-09-22 |title=Cassandra Rewritten In C++, Ten Times Faster - Slashdot |url=https://developers.slashdot.org/story/15/09/22/2145258/cassandra-rewritten-in-c-ten-times-faster |access-date=2025-02-26 |website=developers.slashdot.org |language=en}} under the AGPL license. In December 2024, ScyllaDB moved to a source available license.{{Cite web |date=2024-12-18 |title=Why We’re Moving to a Source Available License |url=https://www.scylladb.com/2024/12/18/why-were-moving-to-a-source-available-license/ |language=en}} Its source code and development process is still open to the public on public GitHub repositories, but usage on a cluster beyond a certain size requires purchasing a license.

References

{{reflist}}