外部ストレージサービスの URI 形式

このドキュメントでは、Amazon S3、GCS、Azure Blob Storage などの外部storageサービスの URI 形式について説明します。

URI の基本的な形式は次のとおりです。

[scheme]://[host]/[path]?[parameters]

Amazon S3 URI 形式

  • scheme : s3

  • host : bucket name

  • parameters :

    • 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-arn URL クエリパラメータを使用して、 IAMロールの対応するAmazon リソース名 (ARN)指定できます。IAM ロールを使用してサードパーティの Amazon S3 データにアクセスする方法の詳細については、 AWS ドキュメントを参照してください。BRは、 v7.6.0 以降でこのパラメータをサポートしています。
    • external-id : サードパーティから Amazon S3 データにアクセスする場合、正しい外部IDを指定してIAMロール引き受けなければならない場合があります。この場合、このexternal-id URL クエリパラメータを使用して外部 ID を指定し、 IAMロールを引き受けることができることを確認できます。外部 ID は、Amazon S3 データにアクセスするためにIAMロール ARN とともにサードパーティによって提供される任意の文字列です。IAM ロールを引き受ける場合、外部 ID の提供はオプションです。つまり、サードパーティがIAMロールの外部 ID を必要としない場合は、IAMIAMを引き受け、対応する 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

以下は、 IMPORT INTOの Amazon S3 URI の例です。この例では、特定のファイル名test.csvを指定する必要があります。

s3://external/test.csv?access-key=${access-key}&secret-access-key=${secret-access-key}

GCS URI 形式

  • scheme : gcsまたはgs

  • host : bucket name

  • parameters :

    • 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またはazblob

  • host : container name

  • parameters :

    • account-name :storageのアカウント名を指定します。
    • account-key : アクセスキーを指定します。
    • sas-token : 共有アクセス署名 (SAS) トークンを指定します。
    • access-tier : アップロードされたオブジェクトのアクセス層を指定します (例: HotCoolArchive 。既定値は、storageアカウントの既定のアクセス層です。
    • encryption-scope : サーバー側の暗号化に暗号化範囲を指定します。
    • encryption-key : AES256 暗号化アルゴリズムを使用するサーバー側暗号化の場合は暗号化キー指定します。

以下は、 BRの Azure Blob Storage URI の例です。この例では、特定のファイル パスtestfolderを指定する必要があります。

azure://external/testfolder?account-name=${account-name}&account-key=${account-key}

このページは役に立ちましたか?