O suporte do tipo da variante para Apache Iceberg e Delta Lake

Importante

Esse recurso está em Visualização Pública.

O VARIANT tipo de dados armazena dados semiestruturados. Para obter exemplos de como trabalhar com VARIANT, confira Consultar dados do tipo Variant.

Todas as tabelas Apache Iceberg v3 incluem suporte a tipos VARIANT. Consulte Usar recursos do Apache Iceberg v3. Para tabelas Delta Lake, você deve habilitar explicitamente o suporte ao tipo VARIANT.

Você deve usar o Databricks Runtime 15.4 LTS ou superior para ler e gravar tabelas com suporte de variante habilitado.

Habilitar variante em uma tabela

Para habilitar a variante, crie uma nova tabela com uma VARIANT coluna de tipo:

CREATE TABLE table_name (variant_column VARIANT)

Para habilitar o suporte para VARIANT em uma tabela existente, use a seguinte sintaxe:

ALTER TABLE table_name SET TBLPROPERTIES('delta.feature.variantType-preview' = 'supported')

Note

Habilitar a variante atualiza o protocolo do gravador da tabela. Isso pode afetar a compatibilidade com clientes externos do Delta Lake. Consulte a compatibilidade de recursos e protocolos do Delta Lake.

Limitations

O suporte para o VARIANT tipo de dados tem as seguintes limitações:

  • Você não pode usar colunas variantes para particionar uma tabela.
  • Uma coluna variante não pode ser uma chave de clustering para uma tabela.
  • Você não pode usar colunas variantes com cláusulas GROUP BY ou ORDER BY.
  • Você não pode chamar DISTINCT em uma coluna variante.
  • Você não pode usar operadores de conjunto de SQL (INTERSECT, UNION, ) EXCEPTcom colunas variantes.
  • Você não pode usar a geração de colunas para criar uma coluna variante.
  • Colunas do tipo Variant não oferecem suporte a estatísticas minValues ou maxValues.
  • Uma coluna variante não pode conter um valor maior que 128 MiB (16 MiB no Databricks Runtime 17.1 e inferior).