Skip to main content
このエンジンは、S3、GCP、Azure ストレージ上の既存の Delta Lake テーブルとのインテグレーションを提供し、読み取りと書き込みの両方をサポートします (書き込みは S3 と GCS では v25.10 以降、Azure では v26.9 以降) 。

Delta Lake テーブルを作成する

デフォルトでは、Delta Lake テーブルはあらかじめ S3、GCP、または Azure ストレージ上に存在している必要があり、以下のコマンドは DDL のカラム定義なしでそのテーブルにアタッチします。allow_delta_lake_create_table = 1 を設定している場合、_delta_log が存在しない場所に対して明示的なカラムを指定した CREATE TABLE を実行すると、代わりに delta-kernel-rs を通じて初期コミットを書き込むことで新しい Delta Lake テーブルが作成されます (パーティション分割されたテーブルの作成はまだサポートされていません)。また、Unity の DataLakeCatalog データベース内では、そのテーブルはカタログにも登録されます。
構文
エンジンパラメータ
  • url — 既存の Delta Lake テーブルへのパスを含むバケット URL。
  • aws_access_key_id, aws_secret_access_key - AWS アカウントユーザーの長期認証情報です。これらを使用してリクエストを認証できます。このパラメータは任意です。認証情報が指定されていない場合は、設定ファイルのものが使用されます。
  • extra_credentials - 任意。ClickHouse Cloud でロールベースアクセス用の role_arn を渡すために使用します。設定手順については、Secure S3 を参照してください。
エンジンパラメータは、名前付きコレクション を使用して指定することもできます。例
名前付きコレクション を使用する場合:

Delta Lake テーブルを使用してデータを書き込む

Delta Lake テーブルエンジンを使用してテーブルを作成したら、次のようにデータを挿入できます。
Delta Lake への書き込みは、既定では無効になっているベータ機能であり、SET allow_delta_lake_writes = 1; で有効にする必要があります (バージョン 26.7 以降で利用可能です。以前のバージョンでは SET allow_experimental_delta_lake_writes = 1; を使用してください)。
テーブルエンジンを使った書き込みは、delta kernel 経由でのみサポートされています。 書き込みは S3 と GCS でサポートされており、Azure ではバージョン 26.9 以降でサポートされています。 Azure の Workload Identity 認証 (extra_credentials(client_id = ..., tenant_id = ...)) は delta kernel ではサポートされていません。

データキャッシュ

Delta Lake テーブルエンジンおよびテーブル関数は、S3、AzureBlobStorage、HDFS ストレージと同様に、データキャッシュをサポートしています。詳細は “S3テーブルエンジン” を参照してください。

関連項目

最終更新日 2026年9月26日