Convert to Delta Lake

The CONVERT TO DELTA SQL command coverts Parquet and Iceberg tables to Delta Lake tables.

Unity Catalog supports the CONVERT TO DELTA SQL command for Parquet and Iceberg tables stored in external locations managed by Unity Catalog.

You can configure existing Parquet data files as external tables in Unity Catalog and then convert them to Delta Lake to unlock all features of the Databricks Lakehouse.

For the technical documentation, see CONVERT TO DELTA.

Converting a directory of Parquet or Iceberg files in an external location to Delta Lake

You can convert a directory of Parquet data files to a Delta Lake table as long as you have write access on the storage location; for information on configuring access with Unity Catalog, see Manage external locations and storage credentials.

CONVERT TO DELTA parquet.`s3://my-bucket/parquet-data`;

CONVERT TO DELTA iceberg.`s3://my-bucket/iceberg-data`;

To load converted tables as external tables to Unity Catalog, you need CREATE TABLES permissions on the external location.

Note

For Databricks Runtime 11.2 and above, CONVERT TO DELTA automatically infers partitioning information for tables registered to the metastore, eliminating the requirement to manually specify partitions.

Converting managed and external tables to Delta Lake on Unity Catalog

Unity Catalog supports many formats for external tables, but only supports Delta Lake for managed tables. To convert a managed Parquet table directly to a managed Unity Catalog Delta Lake table, see Upgrade a table to a Unity Catalog managed table.

To upgrade an external Parquet table to Unity Catalog, see Upgrade an external table to Unity Catalog.

Once you’ve registered an external Parquet table to Unity Catalog, you can convert it to an external Delta Lake table. Note that you must provide partitioning information if the parquet table is partitioned.

CONVERT TO DELTA catalog_name.database_name.table_name;

CONVERT TO DELTA catalog_name.database_name.table_name PARTITIONED BY (date_updated DATE);