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

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

Clock Icon2024.09.04

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

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

August 30, 2024 — Query attribution costs

ACCOUNT USAGE スキーマに QUERY_ATTRIBUTION_HISTORY ビューが追加されました。このビューでは、過去 1 年間にアカウント内のウェアハウスで実行された特定のクエリのコストを算出できます。ビューには、ウェアハウス名、QUERY_TAG、ユーザー名なども含まれるため指定の属性ごとにコストを算出することも可能です。
詳細は以下をご参照ください。

https://docs.snowflake.com/en/sql-reference/account-usage/query_attribution_history

また、以下の記事でもサンプルクエリとあわせて詳しく紹介されておりますので、あわせてご参照ください。

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

August 29, 2024 — New multilingual embedding models available in Snowflake Cortex AI

https://docs.snowflake.com/en/release-notes/2024/other/2024-08-29-multilingual-embed-models

Snowflake Cortex LLM 関数で利用可能な EMBED_TEXT_1024 関数で指定可能なモデルとして multilingual-e5-large を指定できるようになりました。

August 29, 2024 — Cortex Analyst: New regions

https://docs.snowflake.com/en/release-notes/2024/other/2024-08-29-cortex-analyst-new-regions

以下のクラウドリージョンで Cortex Analyst が利用できるようになりました。

  • AWS ap-northeast-1 (Tokyo)
  • Azure West Europe (Netherlands)

August 28, 2024 — Snowflake ML Functions: Top Insights Preview Update

https://docs.snowflake.com/en/release-notes/2024/other/2024-08-28-top-insights-preview-refresh

現在パブリックプレビュー段階の Snowflake Cortex ML ベース関数の Top Insights がアップデートされ、他の ML 関数に近い方法で実行できるようになりました。

具体的には、これまでは引数としてディメンション名と関連するカテゴリ列間のマッピングを表す OBJECT などの指定が必要でしたが、アップデートにより TOP_INSIGHTS クラスのインスタンスを作成後、GET_DRIVERS メソッドを実行するという手順に変わりました。それぞれ既存の時系列予測のように実行できます。

2024/9/4 時点では日本語版のドキュメントは更新されていないので、詳細は英語版のドキュメントをご確認ください。

https://docs.snowflake.com/user-guide/ml-functions/top-insights#label-top-insights-examples

August 26, 2024 — Easier Training of Forecasting Models from Real-World Data

https://docs.snowflake.com/en/release-notes/2024/other/2024-08-26-forecasting-preprocessing

Snowflake Cortex ML ベース関数の FORECAST に前処理機能が追加され、トレーニング データに時間間隔の欠落、重複、または不整合がある場合でも、予測モデルをトレーニングできるようになりました。以下は具体的な機能の一部です。

  • この関数でのモデルのトレーニング時は、トレーニングデータの時間間隔(年、月、日 など)が自動で推測されます。ただし、モデル構築時にこの時間間隔を推測できなかったり、誤って推測した場合に、間隔を手動で指定できます
  • 応答変数の欠損値の補完について
    • 応答変数が合計による集計の場合、欠損値はゼロとして補完されます
    • その他の場合は近くの値から線形補間が行われます
  • 特徴値(特徴量)の欠損について
    • 補完は行わず、そのままNULL として扱われます
    • モデルのトレーニング時には、NULL は無視されるため、トレーニングに影響を与えません。(欠損値があっても処理の続行が可能)

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

https://docs.snowflake.com/en/user-guide/ml-functions/preprocessing

August 26-30, 2024 — 8.32 Release Notes

https://docs.snowflake.com/en/release-notes/2024/8_32

SQL updates

VARIANT、OBJECT または ARRAY 型のカラムに対して有効な IPv4 アドレスを検索できる SEARCH_IP が利用できるようになりました。下図のように使用でき CIDR 範囲を含む IP アドレスでの検索も可能です。

image

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

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

August 20, 2024 — Differential Privacy — Preview

https://docs.snowflake.com/en/release-notes/2024/other/2024-08-16-diff-privacy

Differential Privacy(差分プライバシー)がパブリックプレビューとなりました。

テーブルやビューにプライバシーポリシーを設定し、分析クエリの結果に数学的なノイズを追加することで、個人のプライバシーを保護することができます。これにより特定の個人やエンティティがデータセットから識別されるリスクを低減できます。

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

https://docs.snowflake.com/en/user-guide/diff-privacy/differential-privacy-overview

August 19-21, 2024 — 8.31 Release Notes

https://docs.snowflake.com/en/release-notes/2024/8_31

Iceberg tables: Support for time travel queries using third-party engines — General availability

Apache Spark などのサードパーティのコンピューティング エンジンを使用する際の Snowflake 管理の Iceberg テーブルに対するタイムトラベルクエリのサポートが一般提供となりました。
詳細は以下をご参照ください。

https://docs.snowflake.com/en/user-guide/tables-iceberg-metadata#label-tables-iceberg-time-travel-retention-period

August 14, 2024 — Cortex Analyst –— Preview

https://docs.snowflake.com/en/release-notes/2024/other/2024-08-14-cortex-analyst

Snowflake 内の構造化データに対して、自然言語で質問し回答を得るアプリケーションを作成する際に使用できる Cortex Analyst がパブリックプレビューとなりました。
国内であれば AWS Tokyo を含む以下に記載のクラウドリージョンのアカウントで使用可能です。

https://docs.snowflake.com/en/user-guide/snowflake-cortex/cortex-analyst#region-availability

こちらの機能については以下の記事も紹介されていますので、あわせてご参照ください。

https://dev.classmethod.jp/articles/snowflake-try-cortex-analytst/

August 11-14, 2024 — 8.30 Release Notes

https://docs.snowflake.com/en/release-notes/2024/8_30

Full-text search - Preview

Snowflake における全文検索機能がパブリックプレビューとなりました。VARIANT、OBJECT、および ARRAY 型のカラムに対して SEARCH または SEARCH_IP の検索関数を使用することで文字データ (テキスト) と IPv4 アドレスを検索できます。

SEARCH 関数による検索時の特徴として、検索時はテキスト アナライザーによってテキストがトークンに分割されます。検索時は、検索したい用語と対象データの両方からトークンが抽出され、検索したい用語から抽出されたトークンが、指定の列から抽出されたトークンと完全に一致する場合、TRUE を返します。
アナライザーの種類やトークン化の仕組みは以下に記載があります。

https://docs.snowflake.com/en/sql-reference/functions/search#label-how-search-terms-tokenized

全文検索については以下をご参照ください。

https://docs.snowflake.com/en/user-guide/querying-with-search-functions

UNDROP command: Support for restoring objects using ID

UNDROP コマンド実行時にデータベース・スキーマ・テーブルのオブジェクト ID を指定できるようになりました。

同じ名称のテーブルを何度か作り直したりした場合、直近のテーブルから復元されるため、場合によっては一度テーブルを復元し RENAME した上で再度 UNDROP するなどの手順が必要でした。今回のアップデートで、テーブル ID を使用して特定のテーブルを復元できるようになったため、この手順が簡素化されます。
詳細は以下で紹介されていますので、ぜひご覧ください。

https://dev.classmethod.jp/articles/snowflake-undrop-table-using-table-id/

August 08, 2024 — Cross-region inference for Snowflake AI & ML features — General Availability

https://docs.snowflake.com/en/release-notes/2024/other/2024-08-08-cross-region-llm

推論リクエストを現在のアカウントリージョンとは異なるリージョンで処理できるようになる Cross-region inference for Snowflake AI & ML features が一般提供となりました。これによりアカウントのあるクラウドリージョンでサポートされていない LLM 機能の推論を行えます。

例えば、2024/9/4 時点において AWS アジア太平洋(東京)リージョンの Snowflake アカウントでは LLM 関数の一つである COMPLETE のモデルとして snowflake-arctic を使用できません。

image 1

アカウントの CORTEX_ENABLED_CROSS_REGION パラメータを変更することで指定のリージョンに対してクロスリージョン推論を有効化できます。

ALTER ACCOUNT SET CORTEX_ENABLED_CROSS_REGION = 'AWS_US';

パラメータ値は以下で確認可能です。

SHOW PARAMETERS IN ACCOUNT;
SELECT * FROM TABLE(RESULT_SCAN(-1)) where $1 like 'CORTEX%';

パラメータを変更後、再度 AWS 東京 リージョンのアカウントから同じモデル指定し COMPLETE 関数を実行すると結果が出力されます。

image 2

異なるリージョンで処理を行うことになるため、推論のリクエストに必要なデータは、以下のように移動する点にご注意点ください。

  • ソースリージョンと宛先リージョンの両方が AWS 内にある場合、データは AWS グローバルネットワーク内に留まる
  • リージョンが異なるクラウド プロバイダー上にある場合、データは mTLS を使用してパブリック インターネットを通過する

https://docs.snowflake.com/en/user-guide/snowflake-cortex/cross-region-inference#considerations

August 02, 2024 — Custom UI in Streamlit in Snowflake –— General Availability

https://docs.snowflake.com/en/release-notes/2024/other/2024-08-02-sis

Streamlit in Snowflake でカスタムUIとして以下のサポートが一般提供となりました。

  • st.markdownunsafe_allow_html=True を使用したカスタム HTML および CSS の使用
  • st.components.v1.html を使用した iframe 内での HTML、CSS、および JavaScript の使用

これによりフロントエンドの動作をカスタマイズできます。ただしセキュリティ上の理由から、スクリプト、スタイル、フォントや iframe 埋め込みなど外部ドメインからのコードのロードはブロックされます。

https://docs.snowflake.com/en/developer-guide/streamlit/limitations#label-streamlit-limitations-csp

August 07-08, 2024 — 8.29 Release Notes

https://docs.snowflake.com/en/release-notes/2024/8_29

Access to Git repositories from Snowflake — General availability

Snowflake 内から Git リポジトリへのアクセスが一般提供となりました。

GitHub などの Git リポジトリに Snowflake からアクセスし、Git リポジトリステージというスキーマレベルのオブジェクトにリポジトリをクローンすることが可能です。これにより Git リポジトリ上のファイルのフェッチから参照、実行までが可能となります。
詳細は以下の記事をご参照ください。

https://dev.classmethod.jp/articles/snowflake-git-stage-jinja2/

August 02, 2024 — Snowsight Release Notes

https://docs.snowflake.com/en/release-notes/2024/ui/2024-08-02

Cortex Search Service –— Preview

Snowsight 上で Cortex Search Service を作成できる機能がプレビューとなりました。

Cortex Search Service では検索拡張生成(RAG)を構成するためのベクトル化やベクトルデータベースなどを内包し COMPLETE などの LLM 関数を使用する際に必要なコンテキストを提供します。
以下ではコマンドベースで Cortex Search について紹介されていますので、あわせてご参照ください。

https://dev.classmethod.jp/articles/snowflake-try-cortex-search/

August 01, 2024 — Support for Streamlit 1.35.0 in Streamlit in Snowflake

https://docs.snowflake.com/en/release-notes/2024/other/2024-08-01-sis

Streamlit in Snowflake の Streamlit ライブラリのバージョンとして 1.35.0 がサポートされました。サポートされるバージョンの一覧は以下をご参照ください。

https://docs.snowflake.com/en/developer-guide/streamlit/getting-started#supported-versions-of-the-streamlit-library

August 01, 2024 — Snowpark Container Services release notes

https://docs.snowflake.com/en/release-notes/2024/other/2024-08-01-spcs

Snowpark Container Services の利用が以下のステータスとなりました。

  • すべての商用 AWS リージョンアカウントで一般提供
  • すべての商用 Azure リージョンアカウントでプレビュー

Google Cloud アカウントでは、間もなくプライベートプレビューとのことです。

https://docs.snowflake.com/en/developer-guide/snowpark-container-services/overview#available-regions

August 01, 2024 — Snowsight Release Notes

https://docs.snowflake.com/en/release-notes/2024/ui/2024-08-01

Schema detection and visual column mapping for loading files to existing tables in Snowsight –— Preview

Snowsight から既存のテーブルにファイルをロードする際に、ソース ファイルとターゲット テーブル間の列マッピングを視覚化できるようになりました。

デフォルトではカラム名によるマッチングが行われるため、カラム名が一致しない場合に、下図のようにロード先カラムの割り当てが行えるようになります。

image 3

July 31, 2024 — Context functions and row access policies in Streamlit in Snowflake –— General Availability

https://docs.snowflake.com/en/release-notes/2024/other/2024-07-31-sis

Streamlit in Snowflake におけるコンテキスト関数と行アクセス ポリシーの利用が一般提供となりました。これによりアプリケーションを実行するユーザーコンテキストにより処理内容や表示内容を動的に制御することが可能となります。
以下の記事では CURRENT_USER 関数を使用した本機能の利用イメージが詳しく紹介されていますので、あわせてご参照ください。

https://zenn.dev/tsubasa_tech/articles/a23029dfe97c46

注意点として、Streamlit in Snowflake アプリは所有者権限で実行されるため CURRENT_ROLE を使用する行アクセス ポリシーは使用できません。

Behavior Change Log

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

8.32(2024/8/26 - 2024/8/30 リリース)で、2024_07 バンドルが提供開始となりました。先に挙動を確かめたい場合には手動でバンドルを有効化してテスト可能です。
このバンドルは、2024年9月のリリースでデフォルトで有効化される予定となっています。

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

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

8.32(2024/8/26 - 2024/8/30 リリース)で、2024_06 バンドルがデフォルトで有効化されました。このバンドルは、2024年9月のリリースで一般的に有効化される予定となっています。

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

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

8.32(2024/8/26 - 2024/8/30 リリース)で、2024_05 バンドルが一般的に有効化されました。

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

おまけ:Modern Data Stack全般の最新情報

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

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

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

Share this article

facebook logohatena logotwitter logo

© Classmethod, Inc. All rights reserved.