Converti in Delta Lake

Il CONVERT TO DELTA comando SQL esegue una conversione una tantum per le tabelle Parquet e Iceberg in tabelle Delta Lake. Per la conversione incrementale delle tabelle Parquet o Iceberg in Delta Lake, vedere Clonare in modo incrementale tabelle Parquet e Iceberg in Delta Lake.

Unity Catalog supporta il CONVERT TO DELTA comando SQL per le tabelle Parquet e Iceberg archiviate in posizioni esterne gestite dal catalogo unity.

È possibile configurare i file di dati Parquet esistenti come tabelle esterne in Unity Catalog e quindi convertirli in Delta Lake per sbloccare tutte le funzionalità della databricks lakehouse.

Per la documentazione tecnica, vedere CONVERTI IN DELTA.

Conversione di una directory di file Parquet o Iceberg in una posizione esterna in Delta Lake

Nota

  • La conversione delle tabelle Iceberg è disponibile in anteprima pubblica.
  • La conversione delle tabelle Iceberg è supportata in Databricks Runtime 10.4 e versioni successive.
  • La conversione delle tabelle metastore Iceberg non è supportata.
  • La conversione delle tabelle Iceberg con evoluzione delle partizioni non è supportata.
  • La conversione di tabelle di merge di Iceberg in lettura con aggiornamenti, eliminazioni o merge non è supportata.
  • Di seguito sono riportate le limitazioni per la conversione di tabelle Iceberg con partizioni definite in colonne troncate:
    • In Databricks Runtime 12.2 LTS e versioni successive l'unico tipo di colonna troncato supportato è string.
    • In Databricks Runtime 13.3 LTS e versioni successive è possibile usare colonne troncate di tipi string, longo int.
    • Azure Databricks non supporta l'uso di colonne troncate di tipo decimal.

È possibile convertire una directory di file di dati Parquet in una tabella Delta Lake purché si disponga dell'accesso in scrittura nel percorso di archiviazione; per informazioni sulla configurazione dell'accesso con il catalogo Unity, vedere Connessione all'archiviazione di oggetti cloud tramite il catalogo unity.

Nota

Unity Catalog richiede Azure Data Lake Archiviazione Gen2.

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`;

Per caricare le tabelle convertite come tabelle esterne in Unity Catalog, sono necessarie CREATE TABLES autorizzazioni per la posizione esterna.

Nota

Per Databricks Runtime 11.3 LTS e versioni successive, CONVERT TO DELTA deduce automaticamente le informazioni di partizionamento per le tabelle registrate nel metastore, eliminando il requisito di specificare manualmente le partizioni.

Conversione di tabelle gestite ed esterne in Delta Lake nel catalogo unity

Il catalogo unity supporta molti formati per le tabelle esterne, ma supporta solo Delta Lake per le tabelle gestite. Per convertire una tabella Parquet gestita direttamente in una tabella Delta Lake del catalogo Unity gestita, vedere Aggiornare una tabella gestita hive a una tabella gestita del catalogo Unity usando CLONE.

Per aggiornare una tabella Parquet esterna a una tabella esterna del catalogo Unity, vedere Aggiornare una singola tabella Hive a una tabella esterna del catalogo Unity usando l'aggiornamento guidato.

Dopo aver registrato una tabella Parquet esterna in Unity Catalog, è possibile convertirla in una tabella Delta Lake esterna. Si noti che è necessario fornire informazioni sul partizionamento se la tabella parquet è partizionata.

CONVERT TO DELTA catalog_name.database_name.table_name;

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