ScyllaDB

ScyllaDB
開発元 ScyllaDB Inc.
初版 2015年9月22日 (2015-09-22)
最新版
4.4.1[1] ウィキデータを編集 / 2021年4月6日
リポジトリ
プログラミング
言語
C++
対応OS Linux
種別 ワイドカラムデータストア
ライセンス GNU AGPL(-6.2), SCYLLADB SOFTWARE LICENSE AGREEMENT(2025.1-)
公式サイト www.scylladb.com ウィキデータを編集

ScyllaDB はオープンソースの分散NoSQLワイドカラムデータストアの一つである。Apache Cassandraと互換性のあるよう設計されると同時に大幅に高い単位時間当たりの処理能力やデータ転送量(スループット)と低い待ち時間(レイテンシー(英:latency))を実現している。Cassandraと同じプロトコル (CQL及びThrift) 及び同じファイル形式 (SSTable) に対応するものの、完全に書き直された実装となっており、Cassandra で採用されている Java言語 の代わりに C++20 言語を使用しているほか、スレッド、共有メモリ、マップトファイルのような古典的Linuxプログラミング技術を置き換えるSeastar[2]非同期プログラミングライブラリを使用している。Cassandraのプロトコルを実装することに加えて ScyllaDB は Amazon DynamoDB API も実装している[3]。

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

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

歴史

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

採用例

  • Discord - 72ノードの ScyllaDB で177ノードの Cassandra を置き換えた[9]。

出典

  1. ↑ “Release 4.4.1” (2021年4月6日). 2021年4月16日閲覧。
  2. ↑ Seastar is an advanced, open-source C++ framework for high-performance server applications on modern hardware.
  3. ↑ ScyllaDB Secures $25 Million to Open Source Amazon DynamoDB-compatible API
  4. ↑ 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.
  5. ↑ YCSB cluster benchmark, on the ScyllaDB Inc. website, read February 19, 2017.
  6. ↑ ScyllaDB vs Cassandra: towards a new myth?, by Marc Alonso and Thomas Mouron on the octo.com website, December 15, 2015.
  7. ↑ Rezaei, Arash; Guz, Zvika; Balakrishnan, Vijay (February 2017) (PDF), ScyllaDB and Samsung NVMe SSDs Accelerate NoSQL Database Performance, Samsung Semiconductor Inc., p. 12 2019年2月7日閲覧。
  8. ↑ "Cassandra Rewritten In C++, Ten Times Faster", September 22, 2015, Slashdot
  9. ↑ How Discord Stores Trillions of Messages Discord 2023年3月6日

外部リンク