Az Apache Iceberg és a Delta Lake változattípus-támogatása

Az VARIANT adattípus részben strukturált adatokat tárol. Példákért a VARIANT használatára, lásd a lekérdezésvariánsok adatainak lekérdezését.

Minden Apache Iceberg v3-tábla tartalmazza a VARIANT típustámogatást. Lásd: Apache Iceberg v3-funkciók használata. A Delta Lake-táblák esetében explicit módon engedélyeznie kell a típustámogatást VARIANT .

A Databricks Runtime 15.4 LTS vagy újabb verzióját kell használnia a táblák olvasásához és írásához, ha engedélyezve van a változattámogatás.

Variáns engedélyezése táblázaton

A variant engedélyezéséhez hozzon létre egy új táblát egy VARIANT típusoszlopmal:

CREATE TABLE table_name (variant_column VARIANT)

Egy meglévő tábla támogatásának VARIANT engedélyezéséhez használja az alábbi szintaxist:

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

Note

A változat engedélyezése frissíti a táblaíró protokollt. Ez hatással lehet a külső Delta Lake-ügyfelekkel való kompatibilitásra. Lásd a Delta Lake szolgáltatáskompatibilitását és protokolljait.

Limitations

Az adattípus támogatása a VARIANT következő korlátozásokkal rendelkezik:

  • A táblák particionálásához nem használhat variáns oszlopokat.
  • A variánsoszlop nem lehet egy tábla fürtözési kulcsa.
  • A variánsoszlopok nem használhatók a GROUP BY vagy ORDER BY záradékokkal.
  • Nem hívhatja meg a DISTINCT függvényt egy változó típusú oszlopra.
  • Az SQL-halmaz operátorai (INTERSECT, UNION, EXCEPT) nem használhatók variáns oszlopokkal.
  • A variánsoszlopok nem hozhatók létre oszlopgenerálással.
  • A változatoszlopok nem támogatják a minValues vagy a maxValues statisztikákat.
  • A variánsoszlopok nem tartalmazhatnak 128 MiB-nál nagyobb értéket (16 MiB a Databricks Runtime 17.1-ben és alatta).