📣新登場!TiDB Cloud BYOC、TiDB Cloud Filesystem、PostgreSQL-compatible TiDB Cloud Starter がパブリックプレビュー中。このページは自動翻訳されたものです。原文はこちらからご覧ください。

CREATE CONNECTION



外部ストレージへの接続を作成します。

構文

CREATE [ OR REPLACE ] CONNECTION [ IF NOT EXISTS ] <connection_name> STORAGE_TYPE = '<type>' [ <storage_params> ]
パラメータ説明
STORAGE_TYPEストレージサービスの種類です。指定可能な値には s3、azblob、gcs、oss、cos があります。
storage_paramsストレージの種類と認証方法によって異なります。完全な一覧については 接続パラメータ を参照してください。

接続パラメータ

接続には、特定のストレージバックエンドに対する認証情報と設定が含まれます。接続を作成する際は、適切な STORAGE_TYPE を選択し、必要なパラメータを指定してください。次の表は一般的なオプションを示しています。

STORAGE_TYPE一般的なパラメータ説明
s3ACCESS_KEY_ID/SECRET_ACCESS_KEY、または ROLE_ARN/EXTERNAL_ID、任意で ENDPOINT_URL、REGIONAmazon S3 および S3 互換サービス(MinIO、Cloudflare R2 など)。
azblobACCOUNT_NAME、ACCOUNT_KEY、ENDPOINT_URLAzure Blob Storage。
gcsCREDENTIAL(base64 エンコードされたサービスアカウントキー)Google Cloud Storage。
ossACCESS_KEY_ID、ACCESS_KEY_SECRET、ENDPOINT_URLAlibaba Cloud Object Storage Service。
cosSECRET_ID、SECRET_KEY、ENDPOINT_URLTencent Cloud Object Storage。
hfREPO_TYPE、REVISION、任意で TOKENHugging Face Hub のデータセットおよびモデル。

パラメータの意味、任意フラグ、追加のストレージタイプについては、接続パラメータ を参照してください。以下のタブを展開すると、ストレージ固有の例を確認できます。

    Amazon S3 および S3 互換サービスでは、認証方法を選択してください。

      CREATE CONNECTION <connection_name> STORAGE_TYPE = 's3' ACCESS_KEY_ID = '<your-access-key-id>' SECRET_ACCESS_KEY = '<your-secret-access-key>';
      パラメータ説明
      ACCESS_KEY_IDAWS アクセスキー ID。
      SECRET_ACCESS_KEYAWS シークレットアクセスキー。
      CREATE CONNECTION <connection_name> STORAGE_TYPE = 's3' ROLE_ARN = '<your-role-arn>';
      パラメータ説明
      ROLE_ARNTiDB Cloud Lake が S3 リソースにアクセスするために引き受ける IAM ロールの Amazon Resource Name (ARN)。
      CREATE CONNECTION <connection_name> STORAGE_TYPE = 'azblob' ACCOUNT_NAME = '<account-name>' ACCOUNT_KEY = '<account-key>' ENDPOINT_URL = 'https://<account-name>.blob.core.windows.net';
      CREATE CONNECTION <connection_name> STORAGE_TYPE = 'gcs' CREDENTIAL = '<base64-encoded-service-account>';
      CREATE CONNECTION <connection_name> STORAGE_TYPE = 'oss' ACCESS_KEY_ID = '<your-ak>' ACCESS_KEY_SECRET = '<your-sk>' ENDPOINT_URL = 'https://<region-id>[-internal].aliyuncs.com';
      CREATE CONNECTION <connection_name> STORAGE_TYPE = 'cos' SECRET_ID = '<your-secret-id>' SECRET_KEY = '<your-secret-key>' ENDPOINT_URL = '<your-endpoint-url>';
      CREATE CONNECTION <connection_name> STORAGE_TYPE = 'hf' REPO_TYPE = 'dataset' REVISION = 'main' TOKEN = '<optional-access-token>';

      公開リポジトリでは TOKEN を省略し、プライベートまたはレート制限のあるアセットでは含めてください。

      アクセス制御要件

      権限オブジェクトタイプ説明
      CREATE CONNECTIONグローバル接続を作成します。

      接続を作成するには、操作を実行するユーザーまたは current_role が CREATE CONNECTION 権限 を持っている必要があります。

      テーブル接続の更新

      既存のテーブルを新しい接続に切り替えるには、ALTER TABLE ... CONNECTION を使用します。このコマンドは、テーブルを再作成せずに外部テーブルを別の接続へ再バインドします。

      例

      Access Keys を使用する

      この例では、'toronto' という名前の Amazon S3 への Connection を作成し、その 'toronto' Connection を使用して、's3://lake-toronto' URL にリンクされた 'my_s3_stage' という名前の外部 stage を作成します。Connection に関するより実践的な例については、使用例 を参照してください。

      CREATE CONNECTION toronto STORAGE_TYPE = 's3' ACCESS_KEY_ID = '<your-access-key-id>' SECRET_ACCESS_KEY = '<your-secret-access-key>'; CREATE STAGE my_s3_stage URL = 's3://lake-toronto' CONNECTION = (CONNECTION_NAME = 'toronto');

      AWS IAM ロールを使用する

      この例では、IAM ロールを使用して Amazon S3 への接続を作成し、その後この接続を使用する stage を作成します。この方法は、アクセスキーを TiDB Cloud Lake に保存する必要がないため、より安全です。

      CREATE CONNECTION lake_test STORAGE_TYPE = 's3' ROLE_ARN = 'arn:aws:iam::987654321987:role/lake-test'; CREATE STAGE lake_test URL = 's3://test-bucket-123' CONNECTION = (CONNECTION_NAME = 'lake_test'); -- You can now query data from your S3 bucket SELECT * FROM @lake_test/test.parquet LIMIT 1;

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