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 クライアントではテーブルを読み取ることができなくなります。 「Databricks で Delta Lake 機能の互換性を管理する方法」を参照してください。
制限
次の制限があります。
- バリアント列を使用してテーブルをパーティション分割することはできません。
- バリアント列をテーブルのクラスタリング・キーにすることはできません。
- バリアント列を
GROUP BY
句またはORDER BY
句で使用することはできません。 - バリアント列で
DISTINCT
を呼び出すことはできません。 - SQL セット演算子 (
INTERSECT
、UNION
、EXCEPT
) をバリアント列で使用することはできません。 - 列の生成を使用してバリアント列を作成することはできません。
- Delta は、バリアント列の
minValues
統計やmaxValues
統計を収集しません。