CREATE STORAGE VOLUME
説明
リモートストレージシステム用のストレージボリュームを作成します。この機能は v3.1 からサポートされています。
ストレージボリュームは、リモートデータストレージのプロパティと認証情報で構成されます。共有データ StarRocks クラスターでデータベースやクラウドネイティブテーブルを作成する際に、ストレージボリュームを参照できます。
注意
SYSTEM レベルで CREATE STORAGE VOLUME 権限を持つユーザーのみがこの操作を実行できます。
構文
CREATE STORAGE VOLUME [IF NOT EXISTS] <storage_volume_name>
TYPE = { S3 | HDFS | AZBLOB | ADLS2 | GS }
LOCATIONS = ('<remote_storage_path>')
[ COMMENT '<comment_string>' ]
PROPERTIES
("key" = "value",...)
パラメータ
| パラメータ | 説明 |
|---|---|
| storage_volume_name | ストレージボリュームの名前です。builtin_storage_volume という名前のストレージボリュームは作成できません。これは組み込みストレージボリュームの作成に使用されるためです。命名規則については、System limits を参照してください。 |
| TYPE | リモートストレージシステムのタイプです。有効な値は S3、HDFS、AZBLOB です。S3 は AWS S3 または S3 互換ストレージシステムを示します。AZBLOB は Azure Blob Storage を示します(v3.1.1 以降でサポート)。ADLS2 は Azure Data Lake Storage Gen2 を示します(v3.4.1 以降でサポート)。GS は Google Storage を示します(ネイティブ SDK はv3.5.1以降でサポート)。HDFS は HDFS クラスターを示します。 |
| LOCATIONS | ストレージの場所です。形式は次のとおりです:
|
| COMMENT | ストレージボリュームに関するコメントです。 |
| PROPERTIES | リモートストレージシステムにアクセスするためのプロパティと認証情報を指定するための "key" = "value" ペアのパラメータです。詳細は PROPERTIES を参照してください。 |
PROPERTIES
以下の表は、ストレージボリュームのすべての利用可能なプロパティを示しています。表の後には、認証情報 と 機能 の観点から異なるシナリオに基づいたこれらのプロパティの使用方法が示されています。
| プロパティ | 説明 |
|---|---|
| enabled | このストレージボリュームを有効にするかどうか。デフォルトは false です。無効なストレージボリュームは参照できません。 |
| aws.s3.region | S3 バケットが存在するリージョンです。例:us-west-2。 |
| aws.s3.endpoint | S3 バケットにアクセスするためのエンドポイント URL です。例:https://s3.us-west-2.amazonaws.com。[プレビュー] v3.3.0 以降、Amazon S3 Express One Zone ストレージクラスがサポートされています。例:https://s3express.us-west-2.amazonaws.com。 Beta feature |
| aws.s3.use_aws_sdk_default_behavior | AWS SDK のデフォルト認証情報を使用するかどうか。有効な値は true と false(デフォルト)です。 |
| aws.s3.use_instance_profile | S3 にアクセスするための認証方法としてインスタンスプロファイルとアサインドロールを使用するかどうか。有効な値は true と false(デフォルト)です。
|
| aws.s3.access_key | S3 バケットにアクセスするためのアクセスキー ID です。 |
| aws.s3.secret_key | S3 バケットにアクセスするためのシークレットアクセスキーです。 |
| aws.s3.iam_role_arn | データファイルが保存されている S3 バケットに対して権限を持つ IAM ロールの ARN です。 |
| aws.s3.external_id | S3 バケットへのクロスアカウントアクセスに使用される AWS アカウントの外部 ID です。 |
| aws.s3.enable_path_style_access | Path Style を使用して S3 にアクセスするかどうか。 有効な値: true および false。デフォルト: false。 |
| azure.blob.endpoint | Azure Blob Storage アカウントのエンドポイントです。例:https://test.blob.core.windows.net。 |
| azure.blob.shared_key | Azure Blob Storage へのリクエストを承認するために使用される共有キーです。 |
| azure.blob.sas_token | Azure Blob Storage へのリクエストを承認するために使用される共有アクセス署名 (SAS) です。 |
| azure.adls2.endpoint | Azure Data Lake Storage Gen2 アカウントのエンドポイントです。例:https://test.dfs.core.windows.net。 |
| azure.adls2.shared_key | Azure Data Lake Storage Gen2 へのリクエストを承認するために使用される共有キーです。 |
| azure.adls2.sas_token | Azure Data Lake Storage Gen2 へのリクエストを承認するために使用される共有アクセス署名 (SAS) です。 |
| azure.adls2.oauth2_use_managed_identity | Azure Data Lake Storage Gen2 へのリクエストを認証するために Managed Identity を使用するかどうか。デフォルト: false。 |
| azure.adls2.oauth2_tenant_id | Azure Data Lake Storage Gen2 へのリクエストを認証するために使用される Managed Identity の Tenant ID。 |
| azure.adls2.oauth2_client_id |
|
| azure.adls2.oauth2_token_file | Azure ワークロード ID ウェブフックによってポッドにマッピングされた、OAuth2 トークンファイルへの絶対ファイルパス。 |
| gcp.gcs.service_account_email | Service Account 作成時に生成された JSON ファイル内のメールアドレスです。例:user@hello.iam.gserviceaccount.com。 |
| gcp.gcs.service_account_private_key_id | Service Account 作成時に生成された JSON ファイル内の秘密鍵 ID です。 |
| gcp.gcs.service_account_private_key | Service Account 作成時に生成された JSON ファイル内の秘密鍵です。例:-----BEGIN PRIVATE KEY----xxxx-----END PRIVATE KEY-----\n。 |
| gcp.gcs.impersonation_service_account | なりすましベースの認証を使用する場合、なりすます Service Account です。 |
| gcp.gcs.use_compute_engine_service_account | Compute Engine にバインドされている Service Account を使用するかどうか。 |
| hadoop.security.authentication | 認証方法です。有効な値は simple(デフォルト)と kerberos です。simple はシンプル認証、つまりユーザー名を示します。kerberos は Kerberos 認証を示します。 |
| username | HDFS クラスターの NameNode にアクセスするためのユーザー名です。 |
| hadoop.security.kerberos.ticket.cache.path | kinit で生成されたチケットキャッシュを保存するパスです。 |
| dfs.nameservices | HDFS クラスターの名前です。 |
dfs.ha.namenodes.<ha_cluster_name> | NameNode の名前です。複数の名前はカンマ (,) で区切る必要があります。ダブルクォート内にスペースは許可されません。<ha_cluster_name> は dfs.nameservices で指定された HDFS サービスの名前です。 |
dfs.namenode.rpc-address.<ha_cluster_name>.<NameNode> | NameNode の RPC アドレス情報です。<NameNode> は dfs.ha.namenodes.<ha_cluster_name> で指定された NameNode の名前です。 |
| dfs.client.failover.proxy.provider | クライアント接続のための NameNode のプロバイダーです。デフォルト値は org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider です。 |
fs.viewfs.mounttable.<ViewFS_cluster>.link./<viewfs_path> | マウントする ViewFS クラスターへのパスです。複数のパスはカンマ (,) で区切る必要があります。<ViewFS_cluster> は LOCATIONS で指定された ViewFS クラスター名です。 |
| aws.s3.enable_partitioned_prefix | ストレージボリュームに対して Partitioned Prefix 機能を有効にするかどうか。デフォルトは false です。この機能の詳細については、Partitioned Prefix を参照してください。 |
| aws.s3.num_partitioned_prefix | ストレージボリュームに対して作成されるプレフィックスの数です。デフォルトは 256 です。有効範囲は [4, 1024] です。 |