ScyllaDB

ScyllaDB はオープンソースの分散NoSQLの一つである。Apache Cassandraと互換性のあるよう設計されると同時に大幅に高いスループットと低いレイテンシーを実現している。Cassandraと同じプロトコル (CQL及びThrift) 及び同じファイル形式 (SSTable) をサポートするものの、完全に書き直された実装となっており、Cassandra で採用されている Java言語 の代わりに C++20 言語を使用しているほか、スレッド、共有メモリ、マップトファイルのような古典的Linuxプログラミング技術を置き換えるSeastar非同期プログラミングライブラリを使用している。Cassandraのプロトコルを実装することに加えて ScyllaDB は Amazon DynamoDB API も実装している。

ScyllaDB は各ノードで設計を使用しており、これは各CPUコアがデータ中の異なるサブセットを処理することを意味している。CPUコアはデータを共有せず、必要な時に明示的に通信する仕組みとなっている。ScyllaDB の作者らはこの設計が近代的なNUMA SMPマシンでの遥かに良いパフォーマンスの記録と、多コアでの非常に良いスケールを可能にすると主張している。彼らは単一マシンで200万リクエスト毎秒という数値を測定したこともあり、また ScyllaDB クラスタはサイズが10倍の Cassandra クラスタと同じくらいのリクエストを処理でき、より低いレイテンシでそれが可能であると主張している。独立したテストではこのような10倍ものスループット向上を常に認めることはできず、時には2倍などの小さな速度向上しか測定されないこともあった。サムスンによる2017年のベンチマークではハイエンドマシンにおいて10倍もの速度向上が観測され、このベンチマークでは24コアマシンのクラスタ上において  のワークロードに応じて10から37倍の範囲で ScyllaDB が Cassandra を凌駕したと報告している。

ScyllaDB はオンプレミス、大手パブリッククラウド提供者、または DBaaS (ScyllaDB Cloud) で提供されている。

歴史 
ScyllaDB は2014年12月にの製作で知られていたベンチャー企業 Cloudius Systems (後の ScyllaDB Inc.) によって開始された。ScyllaDBは2015年9月にAGPLの下でオープンソースとしてリリースされた。ScyllaDB Inc.の従業員は引き続きScyllaを支持する主要なコーダーとなっているが、その開発は公開されており、パブリックなGitHubリポジトリとメーリングリストを使用している。

採用例 
 Discord - 72ノードの ScyllaDB で177ノードの Cassandra を置き換えた。

出典

外部リンク 
 Scylla パブリック GitHub レポジトリ（ソースコードレポジトリとバグトラッカー有り）
 ScyllaDB Inc. ホームページ
 ScyllaDB another contender to the open source NoSQL database crown
 How Scylla Scaled to One Billion Rows a Second
 ClickHouse Cost-Efficiency in Action: Analyzing 500 Billion Rows on an Intel NUC

NoSQLデータベース

フリーデータベース管理システム