ScalarDB をはじめよう
このページは英語版のページが機械翻訳されたものです。英語版との間に矛盾または不一致がある場合は、英語版を正としてください。
この入門チュートリアルでは、ScalarDB でデータベースを設定する方法について説明し、ScalarDB を使用してクレジットカードでアイテムを注文して支払うことができるサンプルの電子商取引アプリケーションを作成するプロセスを示します。サンプルの電子商取引アプリケーションでは、ユーザーがクレジットラインを使用してアイテムを注文して支払う方法を示します。
サンプルアプリケーションは ScalarDB の使用方法を示すことに重点を置いているため、アプリケーション固有のエラー処理、認証処理、および同様の機能はサンプルアプリケーションに含まれていません。ScalarDB での例外処理の詳細については、例外の処理方法を参照してください。
このサンプルアプリケーションの前提条件
ScalarDB は Java で記述されているため、環境に次のいずれかの Java Development Kit (JDK) がインストールされている必要があります。
- Eclipse Temurin の OpenJDK LTS バージョン (8、11、17、または 21)
- Docker 20.10 以降と Docker Compose V2 以降
このサンプルアプリケーションは、Eclipse Temurin の OpenJDK でテストされています。ただし、ScalarDB 自体は、さまざまなベンダーの JDK ディストリビューションでテストされています。互換性のある JDK ディストリビューションを含む ScalarDB の要件の詳細については、要件を参照してください。
ScalarDB サンプルリポジトリのクローンを作成する
Terminal を開き、次のコマンドを実行して ScalarDB サンプルリポジトリのクローンを作成します。
git clone https://github.com/scalar-labs/scalardb-samples
次に、次のコマンドを実行して、サンプルアプリケーションが含まれているディレクトリに移動します。
cd scalardb-samples/scalardb-sample
データベースをセットアップする
データベースを選択し、指示に従って ScalarDB 用に設定します。
ScalarDB がサポートするデータベースの一覧については、データベースを参照してください。
- MySQL
- PostgreSQL
- Oracle Database
- SQL Server
- DynamoDB
- Cosmos DB for NoSQL
- Cassandra
MySQLをローカルで実行する
scalardb-samples/scalardb-sample
ディレクトリの docker-compose.yml
ファイルを使用して、Docker Compose で MySQL を実行できます。
MySQL を起動するには、次のコマンドを実行します。
docker compose up -d mysql
ScalarDB を設定する
scalardb-samples/scalardb-sample
ディレクトリの database.properties ファイルには、ScalarDB のデータベース設定が含まれています。database.properties ファイル内の MySQL のプロパティのコメントを解除して、設定が次のようになるようにしてください。
# For MySQL
scalar.db.storage=jdbc
scalar.db.contact_points=jdbc:mysql://localhost:3306/
scalar.db.username=root
scalar.db.password=mysql
PostgreSQL をローカルで実行する
scalardb-samples/scalardb-sample
ディレクトリの docker-compose.yml
ファイルを使用して、Docker Compose で PostgreSQL を実行できます。
PostgreSQL を起動するには、次のコマンドを実行します。
docker compose up -d postgres
ScalarDB を設定する
scalardb-samples/scalardb-sample
ディレクトリの database.properties ファイルには、ScalarDB のデータベース設定が含まれています。database.properties ファイル内の PostgreSQL のプロパティのコメントを解除して、設定が次のようになるようにしてください。
# For PostgreSQL
scalar.db.storage=jdbc
scalar.db.contact_points=jdbc:postgresql://localhost:5432/
scalar.db.username=postgres
scalar.db.password=postgres
Oracle Database をローカルで実行する
scalardb-samples/scalardb-sample
ディレクトリの docker-compose.yml
ファイルを使用して、Docker Compose で Oracle Database を実行できます。
Oracle Database を起動するには、次のコマンドを実行します。
docker compose up -d oracle
ScalarDB を設定する
scalardb-samples/scalardb-sample
ディレクトリの database.properties ファイルには、ScalarDB のデータベース設定が含まれています。database.properties ファイル内の Oracle データベースのプロパティのコメントを解除して、設定が次のようになるようにしてください。
# For Oracle
scalar.db.storage=jdbc
scalar.db.contact_points=jdbc:oracle:thin:@//localhost:1521/FREEPDB1
scalar.db.username=SYSTEM
scalar.db.password=Oracle
SQL Server をローカルで実行する
scalardb-samples/scalardb-sample
ディレクトリの docker-compose.yml
ファイルを使用して、Docker Compose で SQL Server を実行できます。
SQL Server を起動するには、次のコマンドを実行します。
docker compose up -d sqlserver
ScalarDB を設定する
scalardb-samples/scalardb-sample
ディレクトリの database.properties ファイルには、ScalarDB のデータベース設定が含まれています。database.properties ファイル内の SQL Server のプロパティのコメントを解除して、設定が次のようになるようにしてください。
# For SQL Server
scalar.db.storage=jdbc
scalar.db.contact_points=jdbc:sqlserver://localhost:1433;encrypt=true;trustServerCertificate=true
scalar.db.username=sa
scalar.db.password=SqlServer22
Amazon DynamoDB をローカルで実行する
scalardb-samples/scalardb-sample
ディレクトリの docker-compose.yml
ファイルを使用して、Docker Compose で Amazon DynamoDB Local を実行できます。
Amazon DynamoDB Local を起動するには、次のコマンドを実行します。
docker compose up -d dynamodb
ScalarDB を設定する
scalardb-samples/scalardb-sample
ディレクトリの database.properties ファイルには、ScalarDB のデータベース設定が含まれています。database.properties ファイル内の Amazon DynamoDB Local のプロパティのコメントを解除して、設定が次のようになるようにしてください。
# For DynamoDB Local
scalar.db.storage=dynamo
scalar.db.contact_points=sample
scalar.db.username=sample
scalar.db.password=sample
scalar.db.dynamo.endpoint_override=http://localhost:8000
Azure Cosmos DB for NoSQL を使用するには、Azure アカウントが必要です。Azure アカウントをお持ちでない場合は、Azure Cosmos DB アカウントを作成するにアクセスしてください。
Cosmos DB for NoSQL を設定する
既定の整合性レベルを構成するの公式ドキュメントに従って、既定の整合性レベルを強力に設定します。
ScalarDB を設定する
以下の手順では、ローカル環境に JDK が適切にインストールおよび設定されており、Azure で Cosmos DB for NoSQL アカウントが適切に設定されていることを前提としています。
scalardb-samples/scalardb-sample
ディレクトリの database.properties ファイルには、ScalarDB のデータベース設定が含まれています。scalar.db.contact_points
と scalar.db.password
の値は、説明に従って 必ず変更してください。
# For Cosmos DB
scalar.db.storage=cosmos
scalar.db.contact_points=<COSMOS_DB_FOR_NOSQL_URI>
scalar.db.password=<COSMOS_DB_FOR_NOSQL_KEY>
Azure Cosmos DB アカウントのプライマリーキーまたはセカンダリキーを scalar.db.password
の値として使用できます。
Cassandra をローカルで実行する
scalardb-samples/scalardb-sample
ディレクトリの docker-compose.yml
ファイルを使用して、Docker Compose で Apache Cassandra を実行できます。
Apache Cassandra を起動するには、次のコマンドを実行します。
docker compose up -d cassandra
ScalarDB を設定する
scalardb-samples/scalardb-sample
ディレクトリの database.properties ファイルには、ScalarDB のデータベース設定が含まれています。database.properties ファイル内の Cassandra のプロパティのコメントを解除して、設定が次のようになるようにしてください。
# For Cassandra
scalar.db.storage=cassandra
scalar.db.contact_points=localhost
scalar.db.username=cassandra
scalar.db.password=cassandra