Snowflake のロゴ

Snowflake / リリースノート / 2026/06/09 / 通常

SnowflakeのIceberg設定非推奨で確認したいこと

data

公式リリースノート

Snowflake release notesでは、ENABLE_ICEBERG_MERGE_ON_READの非推奨が案内されています。Icebergテーブルのmerge-on-read挙動に関わる設定変更なので、Icebergを運用しているチームは、既存設定、代替パラメータ、移行タイミングを早めに確認したい内容です。

要点

  • ENABLE_ICEBERG_MERGE_ON_READの廃止予定が案内されています
  • Iceberg テーブルやmerge-on-read挙動を利用している環境では、設定、互換性、移行方針の確認が必要です
  • 将来の効力発生日や実際の挙動変更は、公式release notesの該当項目で継続確認するべきです

実務上の読みどころ

SnowflakeでIcebergを使うチームにとって、廃止予定は新機能追加よりも重要な場合があります。既存設定が使えなくなる、既定挙動が変わる、または代替設定への移行が必要になると、読み取り性能、整合性、更新処理、運用手順に影響する可能性があります。

まずは、自社アカウントやTerraform、SQL スクリプト、運用ドキュメントでENABLE_ICEBERG_MERGE_ON_READを参照していないか確認してください。該当する場合は、代替挙動、検証環境での再現、移行タイミング、利用者への案内を整理しておく必要があります。

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

今回のSnowflake 10.20リリースでは、Apache Icebergテーブルの行単位DMLで使うmerge-on-read制御が、従来の真偽値パラメータから、より明示的な文字列パラメータへ移ります。新しいICEBERG_MERGE_ON_READ_BEHAVIORは、AUTOENABLEDDISABLEDを取り、アカウント、データベース、スキーマ、テーブルの各レベルで設定できます。最も具体的な設定が優先されるため、従来よりも「どの範囲でmerge-on-readを使うか」を運用単位に合わせて切り分けやすくなります。

重要なのは、古いENABLE_ICEBERG_MERGE_ON_READがすぐ無効になるわけではない点です。新しいパラメータが既定値のAUTOのままであれば、既存のレガシーパラメータ設定は引き続き尊重されます。一方で、新しいパラメータをENABLEDまたはDISABLEDに明示設定すると、古い真偽値パラメータは無視されます。将来のリリースでは、古いパラメータを設定しようとするとユーザーエラーになる予定なので、既存のSQL、Terraform、運用手順、社内ドキュメントでレガシーパラメータを使っている場合は、段階的に置き換える必要があります。

実務では、ENABLE_ICEBERG_MERGE_ON_READ = TRUEICEBERG_MERGE_ON_READ_BEHAVIOR = 'ENABLED'へ、FALSE'DISABLED'へ置き換えるのが基本です。明示設定していない環境ではAUTOのままにする選択肢もあります。ただし、Snowflake-managed v3テーブル、Snowflake-managed v2テーブル、外部管理Icebergテーブルで自動判定の意味が変わるため、対象テーブルの管理方式とIceberg形式バージョンを確認してから移行するのが安全です。外部エンジンからの書き込みについては、SnowflakeのオブジェクトパラメータではなくIceberg側の標準テーブルプロパティで制御する必要がある点も、運用チームが混同しやすいポイントです。