Konvertieren in Delta Lake

Der SQL-Befehl CONVERT TO DELTA führt eine einmalige Konvertierung für Parquet- und Iceberg-Tabellen in Delta Lake-Tabellen durch. Informationen zur inkrementellen Konvertierung von Parquet- oder Iceberg-Tabellen in Delta Lake finden Sie unter Inkrementelles Klonen von Parquet- und Iceberg-Tabellen in Delta Lake.

Unity Catalog unterstützt den SQL-Befehl CONVERT TO DELTA für Parquet- und Iceberg-Tabellen, die an externen Speicherorten gespeichert sind, die von Unity Catalog verwaltet werden.

Sie können vorhandene Parquet-Datendateien als externe Tabellen in Unity Catalog konfigurieren und sie dann in Delta Lake konvertieren, um alle Funktionen des Databricks Lakehouse freizuschalten.

Eine technische Dokumentation finden Sie unter CONVERT TO DELTA.

Konvertieren eines Verzeichnisses von Parquet- oder Iceberg-Dateien in einen externen Speicherort in Delta Lake

Hinweis

  • Das Konvertieren von Iceberg-Tabellen befindet sich in der Public Preview-Phase.
  • Das Konvertieren von Iceberg-Tabellen wird in Databricks Runtime 10.4 und höher unterstützt.
  • Das Konvertieren von Iceberg-Metastore-Tabellen wird nicht unterstützt.
  • Das Konvertieren von Iceberg-Tabellen, die eine Partitionsentwicklung erlebt haben, wird nicht unterstützt.
  • Das Konvertieren von Iceberg Merge-on-Read-Tabellen mit Updates, Löschungen oder Zusammenführungen wird nicht unterstützt.
  • Im Folgenden sind Einschränkungen für die Konvertierung von Iceberg-Tabellen mit Partitionen aufgeführt, die für abgeschnittene Spalten definiert sind:
    • In Databricks Runtime 12.2 LTS und früher wird nur der abgeschnittene Spaltentyp string unterstützt.
    • In Databricks Runtime 13.3 LTS und höher können Sie die abgeschnittenen Spaltentypen string, long und int verwenden.
    • Azure Databricks unterstützt das Arbeiten mit dem abgeschnittenen Spaltentyp decimalnicht.

Sie können ein Verzeichnis von Parquet-Datendateien in eine Delta Lake-Tabelle konvertieren, sofern Sie Zugriff auf den Speicherort haben. Informationen zum Konfigurieren des Zugriffs mit Unity Catalog finden Sie unter Herstellen einer Verbindung mit Cloudobjektspeichern mithilfe von Unity Catalog.

Hinweis

Für Unity Catalog ist Azure Data Lake Storage Gen2 erforderlich.

CONVERT TO DELTA parquet.`abfss://container@storageAccount.dfs.core.windows.net/parquet-data`;

CONVERT TO DELTA iceberg.`abfss://container@storageAccount.dfs.core.windows.net/iceberg-data`;

Um konvertierte Tabellen als externe Tabellen in Unity Catalog zu laden, benötigen Sie Berechtigungen vom Typ CREATE TABLES für den externen Speicherort.

Hinweis

Für Databricks Runtime 11.3 LTS und höher leitet CONVERT TO DELTA automatisch Partitionierungsinformationen für Tabellen ab, die im Metastore registriert sind, sodass Partitionen nicht manuell angegeben werden müssen.

Konvertieren verwalteter und externer Tabellen in Delta Lake in Unity Catalog

Unity Catalog unterstützt viele Formate für externe Tabellen, für verwaltete Tabellen wird jedoch nur Delta Lake unterstützt. Informationen zum direkten Konvertieren einer verwalteten Parquet-Tabelle in eine verwaltete Unity Catalog-Delta Lake-Tabelle finden Sie unter Upgrade einer Tabelle auf Unity Catalog.

Informationen zum Upgrade einer externen Parquet-Tabelle auf Unity Catalog finden Sie unter Upgrade einer einzigen externen Tabelle auf Unity Catalog.

Nachdem Sie eine externe Parquet-Tabelle in Unity Catalog registriert haben, können Sie sie in eine externe Delta Lake-Tabelle konvertieren. Beachten Sie, dass Sie Partitionsinformationen bereitstellen müssen, wenn die Parquet-Tabelle partitioniert ist.

CONVERT TO DELTA catalog_name.database_name.table_name;

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