DeltaLake テーブルエンジン
このエンジンは、S3、GCP および Azure のストレージ上に存在する既存の Delta Lake テーブルとの連携を提供し、読み取りと書き込みの両方をサポートします(v25.10 から)。
DeltaLake テーブルを作成する
DeltaLake テーブルを作成するには、事前に S3、GCP、または Azure ストレージ上にテーブルが存在している必要があります。このコマンドでは新しいテーブルを作成するための DDL パラメータは指定できません。
- S3
- GCP
- Azure
構文
エンジンパラメータ
url— 既存の Delta Lake テーブルへのパスを含むバケットの URL。aws_access_key_id,aws_secret_access_key- AWS アカウントユーザーの長期的に有効な認証情報。リクエストの認証に使用できます。パラメータは省略可能です。認証情報が指定されていない場合は、設定ファイルで指定されたものが使用されます。
エンジンパラメータは Named Collections を使用して指定できます。
例
名前付きコレクションの使用:
構文
サポートされない gsutil URI
gs://clickhouse-docs-example-bucket のような gsutil URI はサポートされません。https://storage.googleapis.com で始まる URL を使用してください。
引数
url— Delta Lake テーブルへの GCS バケット URL。https://storage.googleapis.com/<bucket>/<path>/形式(GCS XML API エンドポイント)を使用する必要があります。またはgs://<bucket>/<path>/を指定すると自動変換されます。access_key_id— GCS Access Key。Google Cloud Console → Cloud Storage → Settings → Interoperability から作成します。secret_access_key— GCS のシークレット。
名前付きコレクション
名前付きコレクションを使用することもできます。 例:
構文
引数
connection_string— Azure 接続文字列storage_account_url— Azure ストレージアカウントの URL(例: https://account.blob.core.windows.net)container_name— Azure コンテナー名blobpath— コンテナー内の Delta Lake テーブルへのパスaccount_name— Azure ストレージアカウント名account_key— Azure ストレージアカウントキー
DeltaLake テーブルを使用したデータ書き込み
DeltaLake テーブルエンジンを使用してテーブルを作成したら、次の方法でデータを挿入できます。
注記
テーブルエンジンを使用した書き込みは、delta kernel を経由する場合にのみサポートされています。 Azure への書き込みはまだサポートされていませんが、S3 および GCS への書き込みはサポートされています。
データキャッシュ
DeltaLake テーブルエンジンおよびテーブル関数は、S3、AzureBlobStorage、HDFS ストレージと同様に、データキャッシュをサポートします。詳細は「S3 table engine」を参照してください。