外部ストレージサービスのURI形式
このドキュメントでは、Amazon S3、GCS、Azure Blob Storage などの外部storageサービスの URI 形式について説明します。
URI の基本的な形式は次のとおりです。
[scheme]://[host]/[path]?[parameters]
Amazon S3 URI 形式
scheme:s3host:bucket nameparameters:access-key: アクセス キーを指定します。secret-access-key: 秘密アクセスキーを指定します。session-token: 一時セッショントークンを指定します。BRはv7.6.0以降でこのパラメータをサポートしています。use-accelerate-endpoint: Amazon S3 の高速エンドポイントを使用するかどうかを指定します (デフォルトはfalse)。endpoint: S3 互換サービスのカスタムエンドポイントの URL を指定します (例:<https://s3.example.com/>)。force-path-style: 仮想ホスト スタイルのアクセスではなく、パス スタイルのアクセスを使用します (デフォルトはtrue)。storage-class: アップロードされたオブジェクトのstorageクラスを指定します (たとえば、STANDARDまたはSTANDARD_IA)。sse: アップロードされたオブジェクトの暗号化に使用されるサーバー側暗号化アルゴリズムを指定します (値のオプション: 空、AES256、またはaws:kms)。sse-kms-key-id:sseaws:kmsに設定されている場合は KMS ID を指定します。acl: アップロードされたオブジェクトの既定 ACL を指定します (たとえば、privateまたはauthenticated-read)。role-arn: 指定されたIAMロール使用してサードパーティの Amazon S3 データにアクセスする必要がある場合、arn:aws:iam::888888888888:role/my-roleなどのrole-arnURL クエリパラメータで、対応するAmazon リソースネーム (ARN) IAMロールを指定できます。IAMIAMを使用してサードパーティの Amazon S3 データにアクセスする方法の詳細については、 AWSドキュメント参照してください。BRはv7.6.0 以降でこのパラメータをサポートしています。external-id: サードパーティから Amazon S3 データにアクセスする場合、正しい外部ID指定してIAMロール引き受けることが必要になる場合があります。この場合、このexternal-idURL クエリパラメータを使用して外部 ID を指定し、 IAMロールを引き受けることができることを確認できます。外部 ID は、Amazon S3 データにアクセスするためにIAMロール ARN と一緒にサードパーティによって提供される任意の文字列です。IAM ロールを引き受ける場合の外部 IDのIAMIAMに外部 ID を必要としない場合は、このパラメータを指定せずにIAMロールを引き受け、対応する Amazon S3 データにアクセスできます。
以下は、 TiDB LightningおよびBRの Amazon S3 URI の例です。この例では、特定のファイルパスtestfolder指定する必要があります。
s3://external/testfolder?access-key=${access-key}&secret-access-key=${secret-access-key}
以下は、 TiCDC sink-uriの Amazon S3 URI の例です。
tiup cdc:v7.5.0 cli changefeed create \
--server=http://172.16.201.18:8300 \
--sink-uri="s3://cdc?endpoint=http://10.240.0.38:9000&access-key=${access-key}&secret-access-key=${secret-access-key}" \
--changefeed-id="cdcTest" \
--config=cdc_csv.toml
GCS URI形式
scheme:gcsまたはgshost:bucket nameparameters:credentials-file: 移行ツール ノード上の資格情報 JSON ファイルへのパスを指定します。storage-class: アップロードされたオブジェクトのstorageクラスを指定します(例:STANDARDまたはCOLDLINE)predefined-acl: アップロードされたオブジェクトの定義済みACLを指定します(たとえば、privateまたはproject-private)
以下は、 TiDB LightningとBRのGCS URIの例です。この例では、特定のファイルパスtestfolder指定する必要があります。
gcs://external/testfolder?credentials-file=${credentials-file-path}
以下はIMPORT INTOの GCS URI の例です。この例では、特定のファイル名test.csv指定する必要があります。
gcs://external/test.csv?credentials-file=${credentials-file-path}
Azure Blob Storage URI 形式
scheme:azureまたはazblobhost:container nameparameters:account-name:storageのアカウント名を指定します。account-key: アクセス キーを指定します。sas-token: 共有アクセス署名 (SAS) トークンを指定します。access-tier: アップロードされたオブジェクトのアクセス層を指定します(例:Hot、Cool、Archive)。既定値は、storageアカウントのデフォルトのアクセス層です。encryption-scope: サーバー側の暗号化に暗号化範囲指定します。encryption-key: AES256 暗号化アルゴリズムを使用するサーバー側暗号化の場合は暗号化キー指定します。
以下は、 BRのAzure Blob Storage URIの例です。この例では、特定のファイルパスtestfolder指定する必要があります。
azure://external/testfolder?account-name=${account-name}&account-key=${account-key}