DeltaLake table engine
This engine provides an integration with existing Delta Lake tables in S3, GCP and Azure storage and supports both reads and writes (from v25.10).
Create a DeltaLake table
To create a DeltaLake table it must already exist in S3, GCP or Azure storage. The commands below do not take DDL parameters to create a new table.
- S3
- GCP
- Azure
Syntax
Engine parameters
url— Bucket url with path to the existing Delta Lake table.aws_access_key_id,aws_secret_access_key- Long-term credentials for the AWS account user. You can use these to authenticate your requests. Parameter is optional. If credentials are not specified, they are used from the configuration file.
Engine parameters can be specified using Named Collections.
Example
Using named collections:
Syntax
gsutil URI such as gs://clickhouse-docs-example-bucket is not supported, please use a URL starting https://storage.googleapis.com
Arguments
url— GCS bucket URL to the Delta Lake table. Must usehttps://storage.googleapis.com/<bucket>/<path>/format (the GCS XML API endpoint), orgs://<bucket>/<path>/which is auto-converted.access_key_id— GCS Access Key. Create via Google Cloud Console → Cloud Storage → Settings → Interoperability.secret_access_key— GCS secret.
Named collections
You can also use named collections. For example:
Syntax
Arguments
connection_string— Azure connection stringstorage_account_url— Azure storage account URL (e.g., https://account.blob.core.windows.net)container_name— Azure container nameblobpath— Path to the Delta Lake table within the containeraccount_name— Azure storage account nameaccount_key— Azure storage account key
Write data using a DeltaLake table
Once you have created a table using the DeltaLake table engine, you can insert data into it with:
Writing using the table engine is supported only through delta kernel. Writes to Azure are not yet supported but work for S3 and GCS.
Data cache
The DeltaLake table engine and table function support data caching, the same as S3, AzureBlobStorage, HDFS storages. See "S3 table engine" for more details.