Converter para Delta Lake

O comando SQL CONVERT TO DELTA executa uma conversão única para tabelas Parquet e Iceberg em tabelas Delta Lake. Para conversão incremental de tabelas Parquet ou Iceberg para Delta Lake, consulte Clonar tabelas Parquet e Iceberg de forma incremental para Delta Lake.

O Unity Catalog suporta o comando SQL CONVERT TO DELTA para tabelas Parquet e Iceberg armazenadas em locais externos gerenciados pelo Unity Catalog.

Você pode configurar arquivos de dados Parquet existentes como tabelas externas no Unity Catalog e depois convertê-los em Delta Lake para desbloquear todos os recursos do Databricks lakehouse.

Para obter a documentação técnica, consulte CONVERT TO DELTA.

Convertendo um diretório de arquivos Parquet ou Iceberg em um local externo para Delta Lake

Observação

  • A conversão de tabelas Iceberg está em Visualização pública.

  • A conversão de tabelas Iceberg tem suporte no Databricks Runtime 10.4e acima.

  • A conversão de tabelas metastore Iceberg não é suportada.

  • A conversão de tabelas Iceberg que sofreram evolução de partição não é suportada.

  • A conversão de tabelas Iceberg merge-on-read que sofreram atualizações, exclusões ou merge não é suportada.

  • A seguir estão as limitações para converter tabelas Iceberg com partições definidas em colunas truncadas:

    • Em Databricks Runtime 12.2 LTS e abaixo, o único tipo de coluna truncada suportado é string.

    • Em Databricks Runtime 13.3 LTS e acima, o senhor pode trabalhar com colunas truncadas dos tipos string, long ou int.

    • Databricks não dá suporte ao trabalho com colunas truncadas do tipo decimal.

Você pode converter um diretório de arquivos de dados Parquet em uma tabela Delta Lake, desde que tenha acesso de gravação no local de armazenamento.

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

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

Você pode então registrar esses arquivos como uma tabela no Hive metastore.

Observação

Para Databricks Runtime 11.3 LTS e acima, CONVERT TO DELTA infere automaticamente as informações de particionamento das tabelas registradas no metastore, eliminando a necessidade de especificar manualmente as partições.

Conversão de tabelas gerenciais e externas para Delta Lake no Unity Catalog

Unity Catalog é compatível com vários formatos de tabelas externas, mas somente com Delta Lake para tabelas gerenciais. Para converter uma tabela gerenciar Parquet diretamente em uma tabela gerenciar Unity Catalog Delta Lake , consulte Atualizar uma tabela gerenciar Hive para uma tabela gerenciar Unity Catalog usando CLONE.

Para atualizar uma tabela Parquet externa para uma tabela externa do Unity Catalog, consulte Atualizar uma única tabela Hive para uma tabela externa do Unity Catalog usando o assistente de atualização.

Depois de registrar uma tabela Parquet externa no Unity Catalog, você pode convertê-la em uma tabela Delta Lake externa. Observe que você deve fornecer informações de particionamento se a tabela de parquet for particionada.

CONVERT TO DELTA catalog_name.database_name.table_name;

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