Scylla は、Apache Cassandra および Amazon DynamoDB と API 互換性のあるリアルタイム ビッグ データ データベースです。 Scylla は、スループットとストレージ容量を向上させるシェアード ナッシング アプローチを採用し、桁違いのパフォーマンス向上を実現し、ハードウェア コストを削減します。
詳細については、ScyllaDB Web サイトを参照してください。
Scylla はビルド環境にかなりこだわりがあり、ビルドするには最新バージョンの C++23 コンパイラと多くのライブラリが必要です。ドキュメント HACKING.md には、Scylla のビルドと開発に関する詳細な情報が含まれていますが、(ほぼ) あらゆるビルド マシンで Scylla を迅速にビルドできるように、Scylla は凍結されたツールチェーンを提供しています。これは、必要なすべての最新バージョンが含まれる事前構成された Docker イメージです。コンパイラ、ライブラリ、ビルド ツール。凍結されたツールチェーンを使用すると、Scylla の要件を満たすためにビルド マシンを変更する必要がなくなります。必要なのは、凍結されたツールチェーンの前提条件 (主に、Docker または Podman が使用可能であること) を満たすことだけです。
凍結されたツールチェーンdbuild
を使用して Scylla を構築するのは、次のように簡単です。
$ git submodule update --init --force --recursive
$ ./tools/toolchain/dbuild ./configure.py
$ ./tools/toolchain/dbuild ninja build/release/scylla
詳細については、以下を参照してください。
Scylla サーバーを起動するには、次のコマンドを実行します。
$ ./tools/toolchain/dbuild ./build/release/scylla --workdir tmp --smp 1 --developer-mode 1
これにより、1 つの CPU コアが割り当てられた Scylla ノードが起動され、データ ファイルがtmp
ディレクトリに保存されます。 --developer-mode
、Scylla が起動時に実行するさまざまなチェックを無効にして、マシンが最大のパフォーマンスを発揮するように構成されていることを確認するために必要です (開発ワークステーションには関係ありません)。凍結されたツールチェーンを使用して Scylla をビルドした場合は、 dbuild
を使用して Scylla を実行する必要があることに注意してください。
その他の実行オプションについては、次を実行します。
$ ./tools/toolchain/dbuild ./build/release/scylla --help
test.py マニュアルを参照してください。
デフォルトでは、Scylla は Apache Cassandra およびその API - CQL と互換性があります。 Amazon DynamoDB™ の API もサポートされており、使用するには有効にして設定する必要があります。 Scylla で DynamoDB™ API を有効にする方法、この機能と Scylla 固有の拡張機能の現在の互換性の詳細については、「Alternator」および「Alternator の概要」を参照してください。
ドキュメントはここで見つけることができます。 Seastar のドキュメントはここにあります。ユーザードキュメントはここにあります。
トレーニング資料とオンライン コースは Scylla University で入手できます。コースは無料で自分のペースで進められ、実践的な例が含まれています。これらは、Scylla データ モデリング、管理、アーキテクチャ、基本的な NoSQL 概念、アプリケーション開発のためのドライバーの使用、Scylla セットアップ、フェイルオーバー、圧縮、マルチデータセンター、Scylla とサードパーティ アプリケーションとの統合方法など、さまざまなトピックをカバーしています。
バグを報告したり、プルリクエストやパッチを送信したい場合は、貢献ガイドラインをお読みください。
Scylla に取り組んでいる開発者の方は、開発者ガイドラインをお読みください。