メインコンテンツまでスキップ
バージョン: 3.15

ScalarDB の要件

注記

このページは英語版のページが機械翻訳されたものです。英語版との間に矛盾または不一致がある場合は、英語版を正としてください。

このページでは、各 ScalarDB コンポーネントの使用要件 (プログラミング言語とそのバージョン、サポートされているデータベースとそのバージョン、必要な設定など) について説明します。

Core​

ScalarDB Core は ScalarDB の主要コンポーネントであり、基盤となるデータベースを抽象化する抽象化レイヤーを備えたデータベースマネージャーを提供します。詳細については、ScalarDB 設計を参照してください。

言語とランタイム​

ScalarDB Core は、ScalarDB と対話するための Java Client SDK を提供しています。また、Java Virtual Machine (JVM) 上で動作する Schema Loader や Data Loader などのツールも含まれています。

Java​

ScalarDB Core ライブラリは Maven Central Repository で利用できます。Gradle または Maven を使用して、アプリケーションのビルド依存関係としてライブラリを追加できます。詳細については、ビルドに ScalarDB を追加するを参照してください。

ライブラリを利用したアプリケーションの構築には、以下の Java Development Kit (JDK) がサポートされています。

これらの JDK の Java Runtime Environment (JRE) も、ツールの実行でサポートされています。

データベース​

ScalarDB は、以下のデータベースとそのバージョン上で動作します。

リレーショナルデータベース​

バージョンMariaDB 11.4MariaDB 10.11
ScalarDB 3.15✅✅
ScalarDB 3.14✅✅

NewSQL データベース​

バージョンAurora MySQL 3Aurora MySQL 2
ScalarDB 3.15✅✅
ScalarDB 3.14✅✅

NoSQL データベース​

バージョンDynamoDB
ScalarDB 3.15✅
ScalarDB 3.14✅
注記

各データベースの設定方法の詳細については、ScalarDB の基盤となるデータベースの設定を参照してください。

データベース権限要件​

ScalarDB は、基盤となるデータベースで操作を実行するために特定の権限が必要です。

注記

ScalarDB は、すべての管理操作および CRUD 操作で同じ基盤データベースユーザーアカウントが使用されることを前提としています。

リレーショナルデータベース​

このセクションでは、リレーショナルデータベースの権限要件について説明します。

Db2 を使用している場合、以下の権限を付与する必要があります。

  • DBADM

NewSQL データベース​

このセクションでは、NewSQL データベースの権限要件について説明します。

YugabyteDB を使用している場合、以下のデータベース権限を付与する必要があります。

  • CREATE

NoSQL データベース​

このセクションでは、NoSQL データベースの権限要件について説明します。

Amazon DynamoDB を使用している場合、以下のアクションを付与する必要があります。

  • dynamodb:ConditionCheckItem
  • dynamodb:PutItem
  • dynamodb:ListTables
  • dynamodb:DeleteItem
  • dynamodb:Scan
  • dynamodb:Query
  • dynamodb:UpdateItem
  • dynamodb:DeleteTable
  • dynamodb:UpdateContinuousBackups
  • dynamodb:CreateTable
  • dynamodb:DescribeTable
  • dynamodb:GetItem
  • dynamodb:DescribeContinuousBackups
  • dynamodb:UpdateTable
  • application-autoscaling:RegisterScalableTarget
  • application-autoscaling:DeleteScalingPolicy
  • application-autoscaling:PutScalingPolicy
  • application-autoscaling:DeregisterScalableTarget
  • application-autoscaling:TagResource

Cluster​

ScalarDB Cluster は、Core コンポーネントがクラスター化されたサーバーとして動作するためのクラスタリングソリューションを提供するコンポーネントです。詳細については、ScalarDB 設計を参照してください。

言語とランタイム​

ScalarDB Cluster は、使いやすさのために gRPC で生成されたクライアントをラップする Java および .NET Client SDK を提供しています。

Java​

ScalarDB Cluster の Java Client SDK は Maven Central Repository で利用できます。Gradle または Maven を使用して、アプリケーションのビルド依存関係としてライブラリを追加できます。詳細については、ScalarDB Cluster Java Client SDK をビルドに追加するを参照してください。

ライブラリを利用したアプリケーションの構築には、以下の Java Development Kit (JDK) がサポートされています。

.NET​

ScalarDB Cluster の .NET Client SDK は NuGet パッケージとして利用できます。詳細については、SDK のインストールを参照してください。

ライブラリを利用したアプリケーションの構築には、以下の .NET バージョンがサポートされています。

その他の言語​

ScalarDB Cluster は gRPC を使用するため、proto ファイルから生成されたクライアントを使用して、お好みの言語で独自のクライアントを作成することもできます。proto ファイルが必要な場合は、サポートにお問い合わせください。

データベース​

ScalarDB Cluster は Core を使用してデータベースと対話するため、データベースの要件は Core と同じです。詳細については、データベースを参照してください。

必要なポート​

ScalarDB Cluster では、以下のポートにアクセスできる必要があります。これらは、必要に応じて設定可能なデフォルトのポート番号です:

  • 60053 (Administrative API / Transactional API / SQL API / ポーズ operation)
  • 8080 (GraphQL)
  • 9080 (メトリクス)

Kubernetes​

ScalarDB Cluster は、本番環境では Kubernetes プラットフォーム上の1つ以上の Pod で構成されるクラスターとして提供されます。ScalarDB Cluster は以下のプラットフォームとツールをサポートしています。

プラットフォーム​

パッケージマネージャー​

Analytics​

ScalarDB Analytics は、Core コンポーネントによって管理されるデータ、または ScalarDB を使用していないアプリケーションによって管理されるデータに対して、スケーラブルな分析処理を提供するコンポーネントです。詳細については、ScalarDB 設計を参照してください。

Spark​

ScalarDB Analytics は、クエリエンジンに Apache Spark を使用します。以下のバージョンの Spark をサポートしています。

ScalarDB Analytics バージョンSpark バージョンScala バージョン
3.153.5、3.42.13、2.12
3.143.5、3.42.13、2.12

言語とランタイム​

ScalarDB Analytics は、Spark 上でフェデレーテッドクエリを実行するための Java ライブラリを提供しています。また、Java Virtual Machine (JVM) 上で動作する ScalarDB Analytics CLI というツールも提供しています。

注記

Spark と Scala はマイナーバージョン間で互換性がない場合があるため、ライブラリは scalardb-analytics-spark-all-<SPARK_VERSION>_<SCALA_VERSION> の形式で命名された、さまざまな Spark および Scala バージョン用の異なるアーティファクトを提供しています。使用している Spark および Scala バージョンと一致するアーティファクトを選択してください。たとえば、Spark 3.5 と Scala 2.13 を使用している場合は、scalardb-analytics-spark-all-3.5_2.13 を指定する必要があります。

Java​

ライブラリは Maven Central Repository で利用できます。Spark をセットアップする際にライブラリを指定する必要があります。詳細については、ScalarDB Analytics のセットアップのための Spark 設定を参照してください。

注記

ScalarDB Analytics ライブラリは、さまざまな Spark 環境と統合できるように JDK 11 で構築されています。

ScalarDB Analytics CLI の実行では、以下の JRE が検証されサポートされています。

データベース​

ScalarDB Analytics は、以下のデータベースとそのバージョン上で動作します。

ScalarDB​

ScalarDB Analytics は、ScalarDB Core および Cluster によって管理されるデータベース上で分析クエリを実行できます。以下に示すように、これらのデータベースと対話するために同じバージョンの ScalarDB Core ライブラリを使用します。

ScalarDB Analytics バージョンScalarDB Core バージョン
3.153.15
3.143.14

サポートされているデータベースとそのバージョンについては、データベースを参照してください。

リレーショナルデータベース​

ScalarDB Analytics は、ScalarDB Core および Cluster によって管理されていない以下のリレーショナルデータベース上で分析クエリを実行できます。

バージョンMySQL 8.0
ScalarDB Analytics 3.15✅
ScalarDB Analytics 3.14✅

NoSQL データベース​

ScalarDB Analytics は、ScalarDB Core および Cluster によって管理されていない以下の NoSQL データベース上で分析クエリを実行できます。

バージョンDynamoDB
ScalarDB Analytics 3.15✅
ScalarDB Analytics 3.14✅

データベース権限要件​

ScalarDB Analytics は、基盤となるデータベースで操作を実行するために読み取り権限が必要です。

ScalarDB Core および Cluster で管理されているデータベースについては、データベース権限要件に従ってデータベースがすでに設定されているため、追加の設定は必要ありません。

ScalarDB Core および Cluster で管理されていないデータベースについては、データソースに対する読み取り権限を持つユーザーでデータソースを登録してください。データソースの登録手順については、データソースの設定を参照してください。

ScalarDB Analytics サーバーは、そのデータベース内のカタログ情報を管理するための権限も必要です。データベース権限要件に従って権限を持つユーザーを作成し、そのユーザーを ScalarDB Analytics サーバー設定に設定してください。

必要なポート​

ScalarDB Analytics では、以下のポートにアクセスできる必要があります。これらは、必要に応じて設定可能なデフォルトのポート番号です:

  • 11051 (カタログサービス)
  • 11052 (メータリングサービス)
  • Apache Spark が使用するポート番号は、Spark クラスターのデプロイ方法によって異なります。アクセス可能にする必要があるポートの詳細については、Spark サービスプロバイダーのドキュメントを参照してください。

Kubernetes​

ScalarDB Analytics のサーバーコンポーネント (ScalarDB Analytics サーバー) は、本番環境では Kubernetes プラットフォーム上の Pod として提供されます。ScalarDB Analytics は以下のプラットフォームとツールをサポートしています。

プラットフォーム​

パッケージマネージャー​