ScalarDB Analytics をはじめよう
このページは英語版のページが機械翻訳されたものです。英語版との間に矛盾または不一致がある場合は、英語版を正としてください。
このクイックスタートガイドでは、ScalarDB Analytics をセットアップし、PostgreSQL、MySQL、Cassandra を含む異なるデータベース間でフェデレーテッドクエリを実行する方法を説明します。ScalarDB Analytics とその主要な利点の概要については、ScalarDB 概要および ScalarDB 設計ページを参照してください。
何を構築するか
このチュートリアルでは、以下のようなサンプル電子商取引分析環境をセットアップします:
- 顧客データは PostgreSQL に格納
- 注文データは ScalarDB を介して MySQL で管理
- 明細項目の詳細は Cassandra に保存され、ScalarDB トランザクションを通じて更新
3つのデータベースすべてにまたがってデータを結合する分析クエリを実行し、ビジネスインサイトを得ます。ソースコードは https://github.com/scalar-labs/scalardb-samples/tree/main/scalardb-analytics-sample で入手できます。
前提条件
- Docker 20.10以降と Docker Compose V2以降
ScalarDB Analytics を使用するには、ライセンスキー (試用ライセンスまたは商用ライセンス) が必要です。ライセンスキーをお持ちでない場合は、お問い合わせください。
ステップ 1: 環境をセットアップする
このセクションでは、ScalarDB Analytics 環境をセットアップする方法について説明します。
リポジトリをクローンする
ターミナル を開き、ScalarDB サンプルリポジトリをクローンします:
git clone https://github.com/scalar-labs/scalardb-samples
cd scalardb-samples/scalardb-analytics-sample
ライセンスを設定する
ScalarDB Analytics ライセンスを追加するには、config/scalardb-analytics-server.properties を開きます。次に、ライセンス設定行のコメントを外して更新し、<YOUR_LICENSE_KEY> と <YOUR_LICENSE_CERT_PEM> を実際のライセンス情報に置き換えます:
# License configuration (required for production)
scalar.db.analytics.server.licensing.license_key=<YOUR_LICENSE_KEY>
scalar.db.analytics.server.licensing.license_check_cert_pem=<YOUR_LICENSE_CERT_PEM>
ステップ 2: サンプルデータベースを設定する
サンプルデータベースをセットアップするには、次のコマンドを実行します:
docker compose up -d --wait
このコマンドは、以下のサービスをローカルで起動します:
- ScalarDB Analytics コンポーネント:
- ScalarDB Analytics サーバー: すべてのデータソースのメタデータを管理し、クエリ実行のための統一インターフェースを提供します。
- サンプルデータベース:
- PostgreSQL: ScalarDB 管理外データベースとして使用 (直接アクセス)
- Cassandra および MySQL: ScalarDB 管理下データベースとして使用 (ScalarDB のトランザクションレイヤー経由でアクセス)
このガイドでは、PostgreSQL は ScalarDB トランザクションによって管理されない ScalarDB 管理外データベース と呼ばれ、Cassandra および MySQL は ScalarDB トランザクションによって管理される ScalarDB 管理下データベース と呼ばれます。
サンプルデータは初回セットアップ時にすべてのデータベースに自動的にロードされます。セットアップが完了すると、次のテーブルが使用可能になります:
- PostgreSQL:
sample_ns.customer
- ScalarDB (Cassandra):
cassandrans.lineitem
- ScalarDB (MySQL):
mysqlns.orders
ScalarDB 内では、cassandrans と mysqlns がそれぞれ Cassandra と MySQL にマッピングされます。
列定義やデータ型を含むテーブルスキーマの詳細については、スキーマの詳細を参照してください。サンプルデータがこれらのテーブルに正常にロードされていることを確認してください。
ステップ 3: ScalarDB Analytics CLI を使用してデータソースを登録する
分析クエリを実行する前に、データソースを ScalarDB Analytics サーバーに登録する必要があります。これは ScalarDB Analytics CLI を使用して行うことができます。
カタログを作成する
まず、データソースを整理するための新しいカタログを作成します:
docker compose run --rm scalardb-analytics-cli catalog create --catalog sample_catalog