Delta Lake でのバリアントのサポート
備考
プレビュー
この機能は パブリック プレビュー段階です。
VARIANT データ型を使用して、Delta Lake に半構造化データを格納できます。VARIANTの操作例については、「バリアント データのクエリ」を参照してください。
バリアント サポートが有効になっているテーブルの読み取りと書き込みを行うには、Databricks Runtime 15.3 以降を使用する必要があります。
Delta テーブルでバリアントを有効にする
バリアントを有効にするには、VARIANT タイプの列を持つ新しいテーブルを作成します。例:
SQL
CREATE TABLE table_name (variant_column VARIANT)
次の構文を使用して、既存のテーブルで VARIANT のサポートを有効にすることもできます。
SQL
ALTER TABLE table_name SET TBLPROPERTIES('delta.feature.variantType-preview' = 'supported')
警告
バリアントを有効にすると、テーブルプロトコルがアップグレードされます。アップグレード後、バリアントをサポートしていない Delta Lake クライアントではテーブルを読み取ることができなくなります。Delta Lake 機能の互換性とプロトコルを参照してください。
制限
次の制限があります。
- バリアント列を使用してテーブルをパーティション分割することはできません。
- バリアント列をテーブルのクラスタリング・キーにすることはできません。
- バリアント列を
GROUP BY句またはORDER BY句で使用することはできません。 - バリアント列で
DISTINCTを呼び出すことはできません。 - SQL セット演算子 (
INTERSECT、UNION、EXCEPT) をバリアント列で使用することはできません。 - 列の生成を使用してバリアント列を作成することはできません。
- Delta は、バリアント列の
minValues統計やmaxValues統計を収集しません。 - バリアント列には、16 MiB より大きい値を含めることはできません。