ScalarDB Analytics の設定
このページは英語版のページが機械翻訳されたものです。英語版との間に矛盾または不一致がある場合は、英語版を正としてください。
このページでは、ScalarDB Analytics のすべてのコンポーネントの設定に関する包括的なリファレンスを提供します。
概要
ScalarDB Analytics は、設定が必要な 3 つの主要コンポーネントで構成されています:
- ScalarDB Analytics サーバー - カタログ情報とメータリングサービスをホストするサーバー
- CLI クライアント - カタログとデータソースを管理するためのコマンドラインインターフェース
- Spark 統合 - Apache Spark で ScalarDB Analytics を使用するための設定
ScalarDB Analytics サーバー設定
サーバーは、データベース接続、ネットワーク設定、ライセンス、オプション機能を定義する標準的な Java プロパティファイル (例: scalardb-analytics-server.properties) を使用して設定されます。
メタデータデータベース設定
カタログ情報を格納するメタデータデータベースを設定します。
db.contact_points
- フィールド:
scalar.db.analytics.server.db.contact_points - 説明: ScalarDB Analytics で使用されるメタデータデータベースの JDBC URL。
db.username
- フィールド:
scalar.db.analytics.server.db.username - 説明: メタデータデータベースに接続するためのユーザー名。
db.password
- フィールド:
scalar.db.analytics.server.db.password - 説明: メタデータデータベースユーザーのパスワード。
サーバーネットワーク設定
サービスポートと TLS/SSL 暗号化を含むネットワーク設定を構成します。
catalog.port
- フィールド:
scalar.db.analytics.server.catalog.port - 説明: カタログサービスのポート。
- デフォルト値:
11051
metering.port
- フィールド:
scalar.db.analytics.server.metering.port - 説明: メータリングサービスのポート。
- デフォルト値:
11052
tls.enabled
- フィールド:
scalar.db.analytics.server.tls.enabled - 説明: セキュアな通信のために TLS/SSL を有効にする。
- デフォルト値:
false
tls.cert_chain_path
- フィールド:
scalar.db.analytics.server.tls.cert_chain_path - 説明: サーバー証明書チェーンファイルへのパス。
tls.enabledがtrueの場合に必須。
tls.private_key_path
- フィールド:
scalar.db.analytics.server.tls.private_key_path - 説明: サーバー秘密鍵ファイルへのパス。
tls.enabledがtrueの場合に必須。
ライセンス設定
ScalarDB Analytics ライセンスを設定します。
licensing.license_key
- フィールド:
scalar.db.analytics.server.licensing.license_key - 説明: ScalarDB Analytics ライセンスキー。
licensing.license_check_cert_pem
- フィールド:
scalar.db.analytics.server.licensing.license_check_cert_pem - 説明: ライセンス検証に使用する証明書の PEM 形式文字列。本フィールドまたは
license_check_cert_pathのいずれか一方を指定してください。
licensing.license_check_cert_path
- フィールド:
scalar.db.analytics.server.licensing.license_check_cert_path - 説明: ライセンス検証に使用する証明書ファイルのパス。本フィールドまたは
license_check_cert_pemのいずれか一方を指定してください。
認証・認可設定
ScalarDB Analytics サーバーの認証と認可を設定します。詳細については、ScalarDB Analytics でユーザーを認証・認可する を参照してください。
auth.enabled
- フィールド:
scalar.db.analytics.server.auth.enabled - 説明: 認証と認可が有効かどうか。
- デフォルト値:
false
auth.initial_admin_username
- フィールド:
scalar.db.analytics.server.auth.initial_admin_username - 説明: SUPERADMIN ロールにまだ割り当て られているユーザーがいない場合に、SUPERADMIN ロールが割り当てられる初期管理ユーザーのユーザー名。
auth.password.backend
- フィールド:
scalar.db.analytics.server.auth.password.backend - 説明: 使用する認証バックエンド(
internalまたはscalardb-cluster)。 - デフォルト値:
internal
auth.password.token_ttl_seconds
- フィールド:
scalar.db.analytics.server.auth.password.token_ttl_seconds - 説明: アクセストークンの有効期間(秒)。
- デフォルト値:
86400(24時間)
auth.password.internal.initial_admin_password
- フィールド:
scalar.db.analytics.server.auth.password.internal.initial_admin_password - 説明: 管理ユーザーの初期パスワード。
auth.password.backendがinternalの場合にのみ使用されます。
auth.password.scalardb_cluster.host
- フィールド:
scalar.db.analytics.server.auth.password.scalardb_cluster.host - 説明: ScalarDB Cluster インスタンスのホスト名または IP アドレス。
auth.password.backendがscalardb-clusterの場合に必須。 - デフォルト値:
localhost
auth.password.scalardb_cluster.port
- フィールド:
scalar.db.analytics.server.auth.password.scalardb_cluster.port - 説明: ScalarDB Cluster インスタンスのポート番号。
auth.password.backendがscalardb-clusterの場合に必須。 - デフォルト値:
60053
auth.password.scalardb_cluster.deadline_millis
- フィールド:
scalar.db.analytics.server.auth.password.scalardb_cluster.deadline_millis - 説明: ScalarDB Cluster への認証リクエストの gRPC デッドライン(ミリ秒)。
- デフォルト値:
5000
auth.password.scalardb_cluster.acl_delegation
- フィールド:
scalar.db.analytics.server.auth.password.scalardb_cluster.acl_delegation - 説明: ScalarDB データソースのネームスペースレベルおよびテーブルレベルの認可を ScalarDB Cluster に委任するかどうか。詳細については、ScalarDB Analytics でユーザーを認証・認可する を参照してください。
- デフォルト値:
false
auth.password.scalardb_cluster.tls.enabled
- フィールド:
scalar.db.analytics.server.auth.password.scalardb_cluster.tls.enabled - 説明: ScalarDB Cluster への接続で TLS を有効にするかどうか。
- デフォルト値:
false
auth.password.scalardb_cluster.tls.ca_root_cert_path
- フィールド:
scalar.db.analytics.server.auth.password.scalardb_cluster.tls.ca_root_cert_path - 説明: ScalarDB Cluster サーバー証明書を検証するための CA ルート証明書ファイルへのパス。
auth.password.scalardb_cluster.tls.override_authority
- フィールド:
scalar.db.analytics.server.auth.password.scalardb_cluster.tls.override_authority - 説明: ScalarDB Cluster 接続の TLS 検証用のサーバー権限をオーバーライド。
メータリングストレージ設定
メータリングデータの ストレージを設定します。
metering.storage.provider
- フィールド:
scalar.db.analytics.server.metering.storage.provider - 説明: メータリングデータのストレージプロバイダー (
filesystem、aws-s3、azureblob、google-cloud-storage)。
metering.storage.containerName
- フィールド:
scalar.db.analytics.server.metering.storage.containerName - 説明: クラウドストレージ用のコンテナ/バケット名。
- デフォルト値:
metering
metering.storage.path
- フィールド:
scalar.db.analytics.server.metering.storage.path - 説明: ローカルディレクトリパス。プロバイダーが
filesystemの場合に必須。
metering.storage.accessKeyId
- フィールド:
scalar.db.analytics.server.metering.storage.accessKeyId - 説明: クラウドストレージ用のアクセスキー ID。
azureblobの場合は必須で、ストレージアカウント名を指定します。aws-s3の場合は任意で、secretAccessKeyと併せて指定すると静的な認証情報を使用し、両方を省略するとデフォルトの AWS 認証情報プロバイダーチェーンを使用します。google-cloud-storageでは使用されず、アプリケーションのデフォルト認証情報 (ADC) を使用します。
metering.storage.secretAccessKey
- フィールド:
scalar.db.analytics.server.metering.storage.secretAccessKey - 説明: クラウドストレージ用のシークレットアクセスキー。
azureblobの場合は必須で、ストレージアカウントキーを指定します。aws-s3の場合は任意で、accessKeyIdと併せて指定すると静的な認証情報を使用し、両方を省略するとデフォルトの AWS 認証情報プロバイダーチェーンを使用します。google-cloud-storageでは使用されず、アプリケーションのデフォルト認証情報 (ADC) を使用します。
metering.storage.prefix
- フィールド:
scalar.db.analytics.server.metering.storage.prefix - 説明: すべてのストレージパスのオプションのプレフィックス。
CLI クライアント設定
CLI クライアントは、ScalarDB Analytics サーバーと通信するための接続設定を Java プロパティファイル (例: client.properties) を使用して設定します。
設定プロパティ
このセクションでは、設定プロパティについて説明します。
サーバー接続設定
以下は、サーバーへの接続の設定の一覧です。
server.host
- フィールド:
scalar.db.analytics.client.server.host - 説明: ScalarDB Analytics サーバーのホスト名または IP アドレス。
server.catalog.port
- フィールド:
scalar.db.analytics.client.server.catalog.port - 説明: カタログサービスのポート番号。
- デフォルト値:
11051
server.metering.port
- フィールド:
scalar.db.analytics.client.server.metering.port - 説明: メータリングサービスのポート番号。
- デフォルト値:
11052
認証設定
以下は、認証の設定の一覧です。詳細については、ScalarDB Analytics でユーザーを認証・認可する を参照してください。
auth.username
- フィールド:
scalar.db.analytics.client.auth.username - 説明: ScalarDB Analytics サーバーでの認証用のユーザー名。
auth.password
- フィールド:
scalar.db.analytics.client.auth.password - 説明: ScalarDB Analytics サーバーでの認証用のパスワード。
環境変数を使用して認証情報を設定することもできます。環境変数は設定ファイルプロパティよりも優先されます。
| 環境変数 | 説明 |
|---|---|
SCALAR_DB_ANALYTICS_CLIENT_AUTH_USERNAME | 認証用のユーザー名。 |
SCALAR_DB_ANALYTICS_CLIENT_AUTH_PASSWORD | 認証用のパスワード。 |
TLS 設定
以下は、TLSの設定の一覧です。
server.tls.enabled
- フィールド:
scalar.db.analytics.client.server.tls.enabled - 説明: サーバー接続の TLS/SSL を有効にする。
- デフォルト値:
false
server.tls.ca_root_cert_path
- フィールド:
scalar.db.analytics.client.server.tls.ca_root_cert_path - 説明: サーバー証明書を検証するための CA 証明書ファイルへのパス。
tls.enabledがtrueの場合に必須。
server.tls.override_authority
- フィールド:
scalar.db.analytics.client.server.tls.override_authority - 説明: TLS 検証のためのサーバー権限をオーバーライド (テストに便利)。
Spark 統合設定
Apache Spark で ScalarDB Analytics を使用するには、Spark 設定ファイル (spark-defaults.conf) に必要な設定を追加して Spark アプリケーションを設定します。
Spark Core 設定
以下は、Spark Core の設定の一覧です。
spark.jars.packages
- フィールド:
spark.jars.packages - 説明: ScalarDB Analytics 依存関係の Maven 座標。
spark.extraListeners
- フィールド:
spark.extraListeners - 説明: ScalarDB Analytics メータリングリスナーを登録。