Snowflake のロゴ

Snowflake / リリースノート / 2026/07/02 / 通常

Snowflake、Delta DirectのVARIANT型対応を一般提供

GAdata

公式リリースノート

Snowflakeは、Delta Directテーブルにおける VARIANT 型の対応を一般提供しました。オブジェクトストレージ上のDeltaテーブルに含まれる半構造化データを、Snowflake側で変換せずに参照する選択肢が広がります。

要点

  • Deltaテーブルの variant 列をSnowflakeの VARIANT 型へ対応付ける
  • VARIANT 関数やドット記法、ブラケット記法で半構造化データを照会できる
  • 対象はDeltaファイルから作成したDelta DirectのIcebergテーブル
  • Delta DirectテーブルはSnowflake上では読み取り専用

今回の更新で何が変わるのか

Delta Directは、オブジェクトストレージに保存されたDelta Lake形式のテーブルを、SnowflakeからIcebergテーブルとして直接参照する仕組みです。今回の一般提供により、元のDeltaテーブルに variant 列がある場合、その列がSnowflakeの VARIANT 型へ対応付けられるようになりました。JSONに近い入れ子構造や配列などの半構造化データを、Snowflakeの VARIANT 関数、ドット記法、ブラケット記法で照会できます。

これまで半構造化列がDelta Directで扱いにくかったワークロードでは、必要な項目を別列へ展開したり、Snowflake向けのコピーを作ったりする処理を減らせる可能性があります。データレイク上のDeltaテーブルを正本として保ちつつ、Snowflakeの利用者が半構造化列をSQLで分析する構成を取りやすくなります。データの複製を減らせれば、更新の同期、追加ストレージ、派生テーブルの管理を簡素化できる余地があります。

一方、Delta DirectテーブルはSnowflake上で読み取り専用です。Snowflakeから元の variant 値を書き換えたり、半構造化列を更新したりする機能が追加されたわけではありません。書き込みやデータ修正を必要とする処理は、Deltaテーブルを管理する元の処理系で行うか、別のSnowflake管理テーブルへ変換する設計が必要です。また、公式情報は対応する型変換の詳細について別のDeltaデータ型資料を参照するよう案内しています。すべての入れ子構造や値が既存クエリで同じように扱えると決めつけず、型対応と実データを確認したいです。

移行時には、欠損値、数値と文字列が混在する項目、深い入れ子、配列、キー名の表記揺れを含むサンプルを使い、Delta側とSnowflake側の件数や抽出結果を比較します。BIツールやデータ変換処理が VARIANT 内の項目を固定スキーマとして期待している場合は、上流で構造が変わったときの影響も考慮する必要があります。よく使う項目については、ビューで型変換や列名を固定し、利用者が元の複雑な構造へ直接依存しないようにする方法もあります。

実務で確認したいポイント

  • 利用中のDeltaテーブルの variant 列が公式の型対応範囲に収まるか
  • Delta側とSnowflake側で、件数、欠損値、配列、入れ子項目の抽出結果が一致するか
  • 既存のデータ複製・列展開処理を安全に廃止できるか
  • 読み取り専用という制約が、更新や修正を含む業務手順と矛盾しないか
  • BIや変換処理で利用する項目をビューとして安定化する必要があるか

結局、この更新をどう見るべきか

今回の一般提供は、Delta Lake上の半構造化データをSnowflakeから直接分析しやすくする相互運用性の改善です。複製処理を減らせる可能性がある一方、読み取り専用と型対応の境界は残ります。既存パイプラインを外す前に、実データによる結果比較が必要です。