2025年10月にリリースされたSnowflakeの新機能・変更点のまとめ #SnowflakeDB

2025年10月にリリースされたSnowflakeの新機能・変更点のまとめ #SnowflakeDB

2025.11.04

2025年10月にリリースされたSnowflakeの新機能・変更点のまとめ記事になります。

※注意事項:本記事ではすべての情報についての記述はせず、特筆すべきだと感じた情報だけピックしております。基本的には以下の情報を参考にしておりますので、全ての最新情報を確認したい場合は下記のURLからご確認ください。

Oct 31, 2025: Trust Center で組織内のすべてのアカウントで検出された違反に関する情報が表示されるように

https://docs.snowflake.com/en/release-notes/2025/other/2025-10-31-trust-center-org-findings

Snowflake アカウント内のセキュリティモニタリングに使用できる機能である Trust Center で組織内のすべてのアカウントで検出された違反に関する情報が表示されるようになりました。

これにより、 組織内の違反の数や最も重大な違反があるアカウントを特定できます。この機能は組織アカウントでのみ使用できます。

詳細は以下をご参照ください。

https://docs.snowflake.com/en/user-guide/trust-center/overview#label-trust-center-findings

Oct 29, 2025: 認証ポリシーに CLIENT_POLICY パラメータが追加

https://docs.snowflake.com/en/release-notes/2025/other/2025-10-29-client-version-policies

認証ポリシーで、指定のクライアントタイプごとに許可される最小バージョンを設定できるようになりました。

以下は公式ドキュメントからの引用ですが、CLIENT_POLICYプロパティが追加され、クライアントタイプとバージョンを指定することで制御できます。

CREATE AUTHENTICATION POLICY two_driver_policy
  CLIENT_TYPES = ('DRIVERS')
  CLIENT_POLICY = (
    GO_DRIVER = (MINIMUM_VERSION = '1.14.1'),
    JDBC_DRIVER = (MINIMUM_VERSION = '3.25.0')
    )
  COMMENT = 'JDBC and Go Driver minimum versions';

詳細は以下をご参照ください。

https://docs.snowflake.com/en/sql-reference/sql/create-authentication-policy

9.33 Release Notes: Oct 21, 2025-Oct 23, 2025

https://docs.snowflake.com/en/release-notes/2025/9_33

AWS PrivateLink のクロスリージョン接続が一般提供

顧客の AWS VPC と Snowflake アカウントが異なる AWS リージョンにある場合でも、AWS PrivateLink によるプライベート接続を構成できるようになりました。

注意点として、S3 などの AWS サービスに対するクロスリージョン接続はサポートされていないため、内部ステージ向けの PrivateLink を構成する場合は、同一のリージョンである必要があります。

https://docs.snowflake.com/en/user-guide/admin-security-privatelink

Google Cloud Storage を使用する外部ステージと外部ボリュームへのアウトバウンドプライベート接続のサポートが一般提供

Google Cloud Storage を使用する外部ステージと外部ボリュームへの Google Cloud Private Service Connect を使用するアウトバウンドプライベート接続が一般提供となりました。

SYSTEM$PROVISION_PRIVATELINK_ENDPOINT 関数で Snowflake 側にプライベートエンドポイントをプロビジョニングし、外部ステージやボリュームでこのエンドポイントを経由するように構成できます。

詳細は以下をご参照ください。

https://docs.snowflake.com/en/user-guide/data-load-gcs-private

https://docs.snowflake.com/en/user-guide/tables-iceberg-configure-external-volume-gcs-private

アウトバウンドプライベート接続については、以下の公式のブログ記事が参考になります。

https://www.snowflake.com/en/engineering-blog/secure-communications-outbound-private-link/

Snowflake-managed network rules が一般提供

GitHub Actions や Microsoft Power BI サービスなどの対応する SaaS の IP アドレス変更に自動で対応し、ビルトインのネットワークルールとして継続的に更新される Snowflake-managed network rules が一般提供となりました。

これまで定期的に IP 範囲が更新される SaaS へのアクセス制御と、その変更対応がセキュリティ管理の大きな負荷となっていましたが、本機能によりその手間を解消できます。

詳細は以下をご参照ください。

https://dev.classmethod.jp/articles/snowflake-managed-network-rules-ga/

Semantic views で ASOF JOIN がサポート

セマンティックビューの RELATIONSHIPS句内でASOFを使用することで、論理テーブル間に時間的な連続性や範囲を持つ結合を定義できるようになりました。

以下のように記述でき、生成されるASOF JOINMATCH_CONDITION句は、常に>=の比較演算子が使用されます(logical_table_1.col_table_1 >= logical_table_2.col_table_2)。他の比較演算子(>, <=, <)はサポートされていません。

RELATIONSHIPS(
  my_relationship AS
    logical_table_1(
      col_table_1
    )
    REFERENCES
    logical_table_2(
      ASOF col_table_2
    )
)

詳細は以下をご参照ください。

https://docs.snowflake.com/en/user-guide/views-semantic/sql#label-semantic-views-create-relationships-asof

Oct 20, 2025: Performance Explorer がパブリックプレビュー

https://docs.snowflake.com/en/release-notes/2025/other/2025-10-20-performance-explorer

Snowsight 上で、SQL ワークロードのメトリクスを監視・分析するための機能である Performance Explorer がパブリックプレビューとなりました。

クエリアクティビティに関連する、以下のような分析が可能です。

  • Query health
    • 1,000クエリあたりの失敗数
    • 1,000クエリあたりの再試行数
    • クエリがウェアハウスリソース待ちでキューに滞留した実行時間全体に対する割合
    • クエリがトランザクションロック待ちでブロックされた実行時間全体に対する割合
  • Query activity
    • クエリ完了にかかった時間(中央値、90パーセンタイル、99パーセンタイル)
    • 1時間あたりに実行されたクエリの総数
    • クエリがリソース不足やロックにより待機した合計時間
    • 1時間あたりに失敗したクエリの数
  • ウェアハウス別、ユーザー別分析
    • 特定のウェアハウスやユーザーが生成するクエリ負荷とパフォーマンスを分離した監視

2025-11-04_10h40_01

詳細は以下をご参照ください。

https://docs.snowflake.com/en/user-guide/performance-explorer

Oct 17, 2025: 外部管理の Iceberg テーブルとカタログリンク データベースの書き込みサポート

https://docs.snowflake.com/en/release-notes/2025/other/2025-10-17-iceberg-external-writes-cld-ga

Iceberg テーブルの以下の機能が一般提供となりました。

  • 外部管理の Iceberg テーブルに対する書き込み操作
  • 外部の Iceberg REST カタログに接続するカタログリンク データベース

詳細は以下をご参照ください。

https://docs.snowflake.com/en/user-guide/tables-iceberg-externally-managed-writes

https://docs.snowflake.com/en/user-guide/tables-iceberg-catalog-linked-database

https://dev.classmethod.jp/articles/catalog-link-database-pupr-snowflakedb/

Oct 17, 2025: Iceberg テーブルのターゲット ファイル サイズの設定が一般提供

https://docs.snowflake.com/en/release-notes/2025/other/2025-10-17-set-target-file-size-ga

Iceberg テーブルにおける Parquet ファイルのターゲットサイズ設定が一般提供となりました。

これにより、Apache Spark や Trino など、より大きなファイルサイズに最適化された外部 Iceberg エンジンを使用する際に、エンジン間のクエリパフォーマンスが向上します。

詳細は以下をご参照ください。

https://docs.snowflake.com/en/user-guide/tables-iceberg-manage#label-tables-iceberg-target-file-size

Oct 16, 2025: AI_EXTRACT AISQL function が一般提供

https://docs.snowflake.com/en/release-notes/2025/other/2025-10-16-ai-extract

テキスト、画像、ドキュメントなどの非構造化データ ソースから情報を抽出できる AI_EXTRACT がパブリックプレビューとなりました。

responseFormatで抽出したい要素を指定することで、各要素の情報を抽出可能です。

日本語にも対応しており、通常のテキストの他、PDF、PNG、PPTX、HTML や DOC/DOCX などのファイルもサポートされています。

AI_PARSE_DOCUMENT との違いなど、詳細は以下の記事で詳しく解説されています。

https://zenn.dev/tf_takada/articles/9d391febbb7448

Oct 15, 2025: Directed joins が一般提供

https://docs.snowflake.com/en/release-notes/2025/other/2025-10-15-directed-join

テーブルの結合順序を強制できる DIRECTED キーワードが一般提供となりました。

DIRECTED JOIN を使うと、最初のテーブル(左側のテーブル)が、2番目のテーブル(右側のテーブル)よりも 先にスキャンされます。移行元のクエリの動作維持や、結合テーブルを特定の順序でスキャンすることによるパフォーマンスの向上が期待できます。

https://docs.snowflake.com/en/sql-reference/constructs/join#parameters

9.32 Release Notes (with behavior changes): Oct 13, 2025-Oct 15, 2025

https://docs.snowflake.com/en/release-notes/2025/9_32

Snowflake Notebooks のレプリケーションが一般提供

レプリケーショングループまたはフェイルオーバーグループに含まれるデータベースの一部である場合に、ノートブックが複製されるようになりました。セカンダリアカウントでは、複製されたコンテンツは読み取り専用です。

本機能の使用には、アカウントで 2025_07 バンドルが有効化されている必要があります。

https://docs.snowflake.com/en/user-guide/ui-snowsight/notebooks-replication

Oct 13, 2025: CORTEX_EMBED_USER データベースロールが一般提供

https://docs.snowflake.com/en/release-notes/2025/other/2025-10-13-cortex-embed-user-db-role

埋め込み関数へのアクセス管理に使用できる CORTEX_EMBED_USER データベースロールが追加されました。

SNOWFLAKE データベース内で提供され、テキスト・画像の埋め込みに使える AI_EMBED の他、EMBED_TEXT_768EMBED_TEXT_1024 のアクセス権を付与できます。SNOWFLAKE.CORTEX_USER ではその他の Cortex 機能へのアクセスも許可されるため、埋め込み関数のみのアクセスを許可したい場合に使用できます。

詳細は以下をご参照ください。

https://docs.snowflake.com/en/sql-reference/snowflake-db-roles#label-snowflake-db-roles-cortex-embed-user

Oct 09, 2025: dbt Projects on Snowflake に関する機能改善

https://docs.snowflake.com/en/release-notes/2025/other/2025-10-09-dbt-projects-on-snowflake-updates

dbt Projects on Snowflake に関する以下のアップデートがありました。

  • コンパイルやテストの失敗など、dbt プロジェクトのエラーはすべてクエリの失敗として表示されるようになりました
  • dbt Project オブジェクトをデプロイまたは更新する際、自動的にコンパイルが実行されるようになりました
  • デプロイまたは更新コマンド時に外部アクセス統合を設定することで、デプロイ時に dbt deps を自動実行し、プロジェクトの依存関係をインストールできるようになりました
  • dbt Project オブジェクトでMONITOR 権限が追加され、dbt Project オブジェクトの実行履歴の確認や、ビルドアーティファクトのダウンロードを制御できるようになりました
  • 実行結果へのアクセスが容易になりました

詳細は以下をご参照ください。

https://docs.snowflake.com/en/user-guide/data-engineering/dbt-projects-on-snowflake

Oct 07, 2025: Snowsight 上での Query insights の表示が一般提供

https://docs.snowflake.com/en/release-notes/2025/other/2025-10-07-query-insights-in-snowsight-ga

クエリ履歴のクエリプロファイル タブで、クエリのインサイトを確認できるようになりました。

下図のように対応するインサイトを持つノードはハイライト表示され詳細を確認できます。

image 1

検出されるインサイトは以下に記載があります。

https://docs.snowflake.com/en/user-guide/query-insights#list-of-insight-types

Query insights については以下の記事をご参照ください。

https://dev.classmethod.jp/articles/snowflake-query-insights-view/

9.31 Release Notes: Oct 06, 2025-Oct 08, 2025

https://docs.snowflake.com/en/release-notes/2025/9_31

Tri-Secret Secure supports private connectivity

Tri-Secret Secure において、顧客管理キー(CMK)とのプライベート接続がサポートされました。

SYSTEM$PROVISION_PRIVATELINK_ENDPOINT_TSS を使用することで、CMK 用のプライベートエンドポイントを作成できます。

詳細は以下をご参照ください。

https://docs.snowflake.com/en/user-guide/security-encryption-tss-self-serve-private#understanding-tri-secret-secure-self-service-with-private-connectivity

Oct 06, 2025: Microsoft Azure 商用リージョンでの Hybrid table が一般提供

https://docs.snowflake.com/en/release-notes/2025/other/2025-10-06-hybrid-tables-azure-ga

Microsoft Azure の商用リージョンにおいてハイブリッドテーブルが一般提供となりました。

詳細は以下をご参照ください。

https://docs.snowflake.com/en/user-guide/tables-hybrid

Oct 03, 2025: Lineage for stored procedures and tasks (一般提供)

https://docs.snowflake.com/en/release-notes/2025/other/2025-10-03-process-lineage

データリネージ画面で、ソースオブジェクトと下流オブジェクトを接続する矢印を選択すると、下流オブジェクトを生成したストアドプロシージャやタスクの詳細を取得できるようになりました。

タスクの例

image 2

ストアドプロシージャの例

image 3

詳細は以下をご参照ください。

https://docs.snowflake.com/en/user-guide/ui-snowsight-lineage

Oct 02, 2025: データベース オブジェクト エクスプローラーを使用した Semantic view の作成と管理が一般提供

https://docs.snowflake.com/en/release-notes/2025/other/2025-10-02-semantic-views-in-snowsight

Snowsight 上のデータベース オブジェクト エクスプローラーからセマンティック ビューを作成および管理できる機能が一般提供となりました。

image 4

詳細は以下をご参照ください。

https://docs.snowflake.com/en/user-guide/views-semantic/ui

Oct 02, 2025: Snowflake-managed MCP server がパブリックプレビュー

https://docs.snowflake.com/en/release-notes/2025/other/2025-10-02-mcp-server

MCP サーバーのインフラを Snowflake 側で管理できるSnowflake-managed MCP server がパブリックプレビューとなりました。

通常は、仮想マシンや Docker コンテナなどへのデプロイが必要ですが、Snowflake-managed MCP server はCREATE MCP SERVERコマンドを実行するだけ MCP サーバーを構築できます。

現時点では、ツールとして Cortex Search と Cortex Analyst が利用可能です。

詳細は以下をご参照ください。

https://docs.snowflake.com/en/user-guide/snowflake-cortex/cortex-agents-mcp

https://dev.classmethod.jp/articles/snowflake-managed-mcp-server-pupr/

9.30 Release Notes: Sep 29, 2025-Oct 01, 2025

https://docs.snowflake.com/en/release-notes/2025/9_30

MERGE ALL BY NAME

SQL でターゲットとソースのテーブルが同じ列名と列数を持つ場合に、個々の列を指定せずに同期処理を記述できる MERGE ALL BY NAME句が追加されました。

MERGE ALL BY NAME を使用すると、ターゲットとソースのテーブルが同じ列名と列数を持つ場合、列の順序が異なっていても、自動的に対応する列を特定し、更新・挿入を行え、データ同期のクエリをより簡潔に記述できるようになります。

詳細は以下をご参照ください。

https://dev.classmethod.jp/articles/merge-all-by-name-try-snowflakedb/

PIVOT と UNPIVOT 句でのエイリアスのサポート

PIVOT 句と UNPIVOT 句でAS句によるエイリアスが利用可能となりました。

これにより、出力列名の柔軟な制御による可読性の向上が期待できます。
それぞれ公式ドキュメントからの引用ですが、以下のように使用できます。

-- サンプルデータ
>SELECT * FROM QUARTERLY_SALES LIMIT 5;
+-------+--------+---------+
| EMPID | AMOUNT | QUARTER |
|-------+--------+---------|
|     1 |  10000 | 2023_Q1 |
|     1 |    400 | 2023_Q1 |
|     2 |   4500 | 2023_Q1 |
|     2 |  35000 | 2023_Q1 |
|     1 |   5000 | 2023_Q2 |
+-------+--------+---------+

-- AS句なしの標準的なPIVOT(列名は元のQUARTER値のまま)
>SELECT *
  FROM quarterly_sales
    PIVOT(SUM(amount) FOR quarter IN (ANY ORDER BY quarter))
  ORDER BY empid;
+-------+-----------+-----------+-----------+-----------+
| EMPID | '2023_Q1' | '2023_Q2' | '2023_Q3' | '2023_Q4' |
|-------+-----------+-----------+-----------+-----------|
|     1 |     10400 |      8000 |     11000 |     18000 |
|     2 |     39500 |     90700 |     12000 |      5300 |
|     3 |      NULL |      NULL |      2700 |     28900 |
+-------+-----------+-----------+-----------+-----------+

-- AS句で集計関数にエイリアスを適用
-- 出力列名は「元の値_エイリアス」(例: '2023_Q1_TOTAL')となる
>SELECT *
 FROM quarterly_sales
   PIVOT(SUM(amount) AS total FOR quarter IN (ANY ORDER BY quarter))
 ORDER BY empid;
+-------+-----------------+-----------------+-----------------+-----------------+
| EMPID | '2023_Q1_TOTAL' | '2023_Q2_TOTAL' | '2023_Q3_TOTAL' | '2023_Q4_TOTAL' |
|-------+-----------------+-----------------+-----------------+-----------------|
|     1 |           10400 |            8000 |           11000 |           18000 |
|     2 |           39500 |           90700 |           12000 |            5300 |
|     3 |            NULL |            NULL |            2700 |           28900 |
+-------+-----------------+-----------------+-----------------+-----------------+

-- 特定のピボット値にエイリアスを適用
-- 出力列名は指定されたエイリアス(例: Q1)となる
>SELECT *
 FROM quarterly_sales
   PIVOT(SUM(amount) FOR quarter IN (
     '2023_Q1' AS q1,
     '2023_Q2' AS q2,
     '2023_Q3' AS q3))
 ORDER BY empid;
+-------+-------+-------+-------+
| EMPID |    Q1 |    Q2 |    Q3 |
|-------+-------+-------+-------|
|     1 | 10400 |  8000 | 11000 |
|     2 | 39500 | 90700 | 12000 |
|     3 |  NULL |  NULL |  2700 |
+-------+-------+-------+-------+
-- サンプルデータ
>SELECT * FROM monthly_sales;
+-------+-------------+-----+-----+-----+-----+
| EMPID | DEPT        | JAN | FEB | MAR | APR |
|-------+-------------+-----+-----+-----+-----|
|     1 | electronics | 100 | 200 | 300 | 100 |
|     2 | clothes     | 100 | 300 | 150 | 200 |
|     3 | cars        | 200 | 400 | 100 |  50 |
|     4 | appliances  | 100 | NULL | 100 |  50 |
+-------+-------------+-----+-----+-----+-----+

-- UNPIVOT句で元の列名にエイリアスを適用
-- UNPIVOT後の列 (MONTH列) の「値」が指定されたエイリアス(例: JANUARY)となる
>SELECT *
 FROM monthly_sales
   UNPIVOT (sales FOR month IN (
     jan AS january,
     feb AS february,
     mar AS march,
     apr AS april)
   )
 ORDER BY empid;
+-------+-------------+----------+-------+
| EMPID | DEPT        | MONTH    | SALES |
|-------+-------------+----------+-------|
|     1 | electronics | JANUARY  |   100 |
|     1 | electronics | FEBRUARY |   200 |
|     1 | electronics | MARCH    |   300 |
|     1 | electronics | APRIL    |   100 |
|     2 | clothes     | JANUARY  |   100 |
|     2 | clothes     | FEBRUARY |   300 |
|     2 | clothes     | MARCH    |   150 |
|     2 | clothes     | APRIL    |   200 |
|     3 | cars        | JANUARY  |   200 |
|     3 | cars        | FEBRUARY |   400 |
|     3 | cars        | MARCH    |   100 |
|     3 | cars        | APRIL    |    50 |
|     4 | appliances  | JANUARY  |   100 |
|     4 | appliances  | MARCH    |   100 |
|     4 | appliances  | APRIL    |    50 |
+-------+-------------+----------+-------+

高次関数におけるテーブル列の参照

高次関数(TRANSFORMFILTERREDUCEなど)内で使用するラムダ式から、テーブルの他の列の値を参照できるようになりました。
これにより、配列データの変換(TRANSFORM)や絞り込み(FILTER)を行う際に、その行の他の列の値に基づいた、より複雑な計算ロジックを SQL で簡潔に記述できるようになります。

具体的には以下のように記述できます。

-- 配列の要素 (a) からテーブルの別の列 (col2) の値を引く
a -> a - table1.col2

-- ラムダ式内でテーブルの列(col2)を参照し、TRANSFORM関数で配列の各要素にcol2の値を掛ける
>SELECT
    id,
    col1,
    col2,
    TRANSFORM(col1, a -> a::INT * table1.col2) AS "Multiply_by_Col2_Ref_Col2"
FROM table1;
+----+-------+------+---------------------------+
| ID | COL1  | COL2 | Multiply_by_Col2_Ref_Col2 |
|----+-------+------+---------------------------|
|  1 | [     |   10 | [                         |
|    |   1,  |      |   10,                     |
|    |   2,  |      |   20,                     |
|    |   3   |      |   30                      |
|    | ]     |      | ]                         |
|  2 | [     |    5 | [                         |
|    |   10, |      |   50,                     |
|    |   20, |      |   100,                    |
|    |   30  |      |   150                     |
|    | ]     |      | ]                         |
+----+-------+------+---------------------------+

詳細は以下をご参照ください。

https://docs.snowflake.com/en/sql-reference/functions/transform

SEARCH 関数が PHRASE と EXACT モードをサポート

全文検索機能である SEARCH 関数に新たな検索モードとしてPHRASEEXACT が追加されました。

  • PHRASE
    • 単語の順序と隣接性が完全に一致する場合にマッチ
    • ただし、単語間の区切り文字の種類や数は問わない
  • EXACT
    • PHRASE のルールに加え、単語間の区切り文字列が検索文字列と完全に一致する必要がある

既存のモードとあわせて以下のように使用できます。

-- サンプルデータ
>SELECT * FROM search_test_data;
+----+---------------------+
| ID | TEXT_DATA           |
|----+---------------------|
|  1 | red, blue, green    |
|  2 | red blue green      |
|  3 | red-blue-green      |
|  4 | red_blue_green_item |
|  5 | blue, red, green    |
+----+---------------------+

>SET search_string = 'red blue green';
SELECT
     id,
     text_data,
     -- OR モード:いずれかの単語を含む
     SEARCH(text_data, $search_string, SEARCH_MODE => 'OR') AS is_or_match,
     -- AND モード:全ての単語を含む (順序は問わない)
     SEARCH(text_data, $search_string, SEARCH_MODE => 'AND') AS is_and_match,
     -- PHRASE モード: 単語の順序、隣接性が一致する
     SEARCH(text_data, $search_string, SEARCH_MODE => 'PHRASE') AS is_phrase_match,
     -- EXACT モード: PHRASEに加え、単語間の区切り文字まで完全に一致
     SEARCH(text_data, $search_string, SEARCH_MODE => 'EXACT') AS is_exact_match
 FROM search_test_data
 ORDER BY id;
+----+---------------------+-------------+--------------+-----------------+----------------+
| ID | TEXT_DATA           | IS_OR_MATCH | IS_AND_MATCH | IS_PHRASE_MATCH | IS_EXACT_MATCH |
|----+---------------------+-------------+--------------+-----------------+----------------|
|  1 | red, blue, green    | True        | True         | True            | False          |
|  2 | red blue green      | True        | True         | True            | True           |
|  3 | red-blue-green      | True        | True         | True            | False          |
|  4 | red_blue_green_item | True        | True         | True            | False          |
|  5 | blue, red, green    | True        | True         | False           | False          |
+----+---------------------+-------------+--------------+-----------------+----------------+

詳細は以下をご参照ください。

https://docs.snowflake.com/en/sql-reference/functions/search

Snowflake スクリプトの CONTINUE ハンドラ

Snowflake Scripting の例外ハンドラ(EXCEPTIONブロック)に WHEN ... CONTINUE句を指定できるようになりました。

これにより、例外が発生時にスクリプトの処理を完全に停止するのではなく、ハンドラ内で必要な処理を行った後に、例外が発生したブロックの実行を続行できるようになります。
公式ドキュメントの引用ですが、以下のように使用できます。

>EXECUTE IMMEDIATE $$
 DECLARE
   x INT := 0;
 BEGIN
   FOR i IN 0 TO 5 DO
     x := 10/i; -- i=0 のときにゼロ除算エラー
   END FOR;
   RETURN x;
 EXCEPTION
   WHEN EXPRESSION_ERROR CONTINUE THEN -- CONTINUE ハンドラ
     -- エラーログ記録などを行い、ループ続行を許可
     INSERT INTO error_log_table SELECT 'continue_type', :SQLERRM;
 END;
 $$
 ;
+-----------------+
| anonymous block |
|-----------------|
|               2 |
+-----------------+

>SELECT * FROM error_log_table;
+---------------+------------------+
| HANDLER_TYPE  | ERROR_MESSAGE    |
|---------------+------------------|
| continue_type | Division by zero |
+---------------+------------------+

詳細は以下をご参照ください。

https://docs.snowflake.com/en/sql-reference/snowflake-scripting/exception#handle-an-exception-and-continue

Snowflake Scripting user-defined functions (UDFs) が一般提供

Snowflake では Snowflake Scripting により、手続き型ロジックを使用しながら SQL でストアドプロシージャを記述することができます。今回のアップデートで SELECT 文から Snowflake Scripting によるロジックを呼び出せるようになるため、柔軟性が向上します。

詳細は以下をご参照ください。

https://dev.classmethod.jp/articles/snowflake-scripting-udf-try-snowflakedb/

Oct 01, 2025: OBJECT_VISIBILITY プロパティがパブリックプレビュー

https://docs.snowflake.com/en/release-notes/2025/other/2025-10-01-object-visibility

アカウント内のオブジェクトの発見可能性を制御する機能として、OBJECT_VISIBILITY プロパティが追加されました。

アカウント、データベース、スキーマレベルで設定可能で、使用権限や参照権限など、明示的なアクセス権限を持っていないユーザーでも、オブジェクトを見つけ、アクセスを要求することが可能となります。

オブジェクトは、Universal Search 機能で検索可能となり、目的が ACCESS_APPROVAL の Contact オブジェクトが関連付けららている場合、検索結果からアクセス権のリクエストに必要な情報を表示できます。

詳細は以下をご参照ください。

https://dev.classmethod.jp/articles/snowflake-universal-search-object-visibility-pupr/

Behavior Change Log

単一要素パスワードサインインの廃止に向けた計画

セキュリティ体制を強化するため、Snowflake でパスワードを使用するすべてのユーザーに対して多要素認証(MFA)が必須となります。この計画は、人間ユーザー(TYPE = PERSON)とサービスユーザー(TYPE = SERVICE)の認証セキュリティを向上させることを目的としており、2025年10月にタイムラインが簡素化・延長されました。

タイムラインについては以下のページにまとめられています。

https://docs.snowflake.com/en/user-guide/security-mfa-rollout

具体的には以下の通りです。

期間(予定) 対象ユーザー マイルストーン
2025年9月 - 2026年1月 人間ユーザー マイルストーン1:すべての Snowsight ユーザーに MFAを義務化
2026年5月 - 2026年7月 人間ユーザー 、レガシーサービスユーザー マイルストーン2:新規ユーザーに対する強力な認証の実施
2026年8月 - 2026年10月 人間ユーザー 、レガシーサービスユーザー マイルストーン3:すべてのユーザーに対する強力な認証の実施

マイルストーン1については、直近の2025_06 バンドルにて、導入が予定されています。ここでは、Snowsight のみに影響し、BI ツールなどからの接続時はこの影響を受けません。

https://docs.snowflake.com/en/release-notes/bcr-bundles/2025_06/bcr-2086

以降のマイルストーンの特徴は以下の通りです。

  • マイルストーン2
    • アカウントごとに順次適用される予定で、アカウントへの適用日を記載した通知が届くとされています
    • このマイルストーンの適用後に作成されるすべての人間ユーザーは、BI ツールなどを使用するユーザーを含め、パスワードで認証するときに 2 番目の要素を使用することが強制されます
    • マイルストーンの適用前に存在していた人間ユーザーは影響を受けず、引き続き2要素認証なしで Snowsight を除く BI ツール等から接続できます
    • マイルストーン適用後は新規の TYPE=LEGACY_SERVICEユーザーを作成できなくなり、既存ユーザーのタイプ変更も不可となります
  • マイルストーン3
    • アカウントごとに順次適用される予定で、アカウントへの適用日を記載した通知が届くとされています
    • 既存・新規を問わず、すべての人間ユーザーは、例外なくMFAが必須となります
    • レガシーサービスユーザーは完全に非推奨となり、既存の TYPE=LEGACY_SERVICE ユーザーはすべてTYPE=SERVICEに移行され、パスワード認証がブロックされます

2025_07 バンドルが提供開始 ※デフォルトは無効化

9.32(2025/10/13 - 2025/10/15 リリース)で、2025_07 バンドルが提供開始となりました。先に挙動を確かめたい場合には手動でバンドルを有効化してテスト可能です。

このバンドルは、2026年1月のリリースでデフォルトで有効化される予定となっています。

https://docs.snowflake.com/en/release-notes/bcr-bundles/2025_07_bundle

2025_06 バンドルがデフォルトで有効化

9.32(2025/10/13 - 2025/10/15 リリース)で、2025_06 バンドルがデフォルトで有効化されました。このバンドルは、2026年1月のリリースで一般的に有効化される予定となっています。

https://docs.snowflake.com/en/release-notes/bcr-bundles/2025_06_bundle

2025_05 バンドルが一般的に有効化

9.32(2025/10/13 - 2025/10/15 リリース)で、2025_05 バンドルが一般的に有効化されました。

https://docs.snowflake.com/en/release-notes/bcr-bundles/2025_05_bundle

Modern Data Stack全般の最新情報

Snowflakeも含め、Modern Data Stack 全般の最新情報についても、定期的にブログにまとめて投稿されています!こちらもぜひご覧ください。

https://dev.classmethod.jp/articles/modern-data-stack-info-summary-20251029/

https://dev.classmethod.jp/articles/modern-data-stack-info-summary-20251015/

https://dev.classmethod.jp/articles/modern-data-stack-info-summary-20251001/

この記事をシェアする

FacebookHatena blogX

関連記事