Delta Direct¶
Delta Direct lets you create a read-only Apache Iceberg™ table in Snowflake from a Delta
Lake table in external cloud object storage. Snowflake reads the Delta transaction log (_delta_log/) and registers the
table’s Parquet data files without copying or rewriting them, so you can query your Delta Lake data with Snowflake while
other engines continue to write to it.
Delta Direct is one type of Direct Iceberg table.
Create a Delta Direct table¶
To create a Delta Direct table, complete the following steps:
- Create an external volume that points to the cloud storage location of your Delta table. For instructions, see Configure an external volume.
- Create a catalog integration with
CATALOG_SOURCE = OBJECT_STOREandTABLE_FORMAT = DELTA. For instructions, see Delta Lake table files. - Create an Iceberg table with CREATE ICEBERG TABLE (Delta files in object storage).
The following example shows these steps:
The following example command creates an Iceberg table from Delta table files in object storage with automated refresh.
The example specifies an external volume associated with the cloud location of the Delta table files,
a catalog integration configured for Delta,
and a value for the required BASE_LOCATION parameter.
If the Delta table uses a partitioning scheme, Snowflake automatically interprets the scheme from the Delta log.
Refresh a Delta Direct table¶
To keep the table in sync with your Delta table, set a refresh interval on the catalog integration and use automated refresh, or refresh the table manually with ALTER ICEBERG TABLE … REFRESH. For more information, see Automatically refresh Apache Iceberg™ tables.
Storage access and metadata writes¶
Delta Direct only needs read access to your storage. If your external volume allows writes, Snowflake can also write Iceberg metadata for the table to your storage. For more information, see Delta-based tables and Read-only vs write access for Delta Direct on each storage provider.
Data types¶
For how Delta data types map to Snowflake data types, see Delta data types.
Considerations and limitations¶
For limitations, see the following sections: