🎿

SnowflakeSummit2024 SnowflakeHorizon新機能まとめ

2024/06/15に公開

こんにちは、Snowflake(SnowVillage)のデタマネコミュニティを運営している佐川です。
今年2024年のSnowflakeSummitにて、SnowflakeHorizonの機能が大量に追加されたので、新機能をまとめてみました。

自分向けのメモも兼ねてですが、ざっくり20超の機能が紹介されていて膨大過ぎる…という印象だったので、5つの柱+α主観で分類してみています。
公式でもSnowflakeHorizonの新機能に関する記事がSummit直後に出ているのでご参考ください。
https://www.snowflake.com/blog/horizon-leading-governance-data-discovery/?lang=ja
※個人のメモ起こしなので、正式な機能内容については、Snowflakeの情報を参照ください。

前提としての2024年KeyNote

今年2024年のSnowflakeSummitのKeynoteで語られた思想は、SnowflakeHorizonの機能をみていくなかでも前提となるため、一部キーワードを抽出しておきます。
Keynoteの詳細については、速報で多くのSnowflakeコミュニティの方がブログ投稿されていたり、公式Youtube動画もあるため、そちらをご参照ください。

AI DataCloud

昨年2023年のSnowflakeSummitではDataCloudというテーマが発表されましたが、
今年のテーマはAI Data Cloudでした。
AI Data Cloudを実現するための機能が揃ったということを最初にBenoirが以下の5つのキーワードで語っています。

  1. DATA COMPLETE
  2. COMPUTE COMPLETE
  3. ENTERPRISE AI
  4. SECURITY&GOVERNANCE
  5. GLOBAL COLLABORAION


https://youtu.be/8EQpUv0U4Ac?si=rEmhLWmcShWhqAA_

新機能のテーマ

こうした背景をもとに語られた今年の新機能発表のテーマは以下の3つです。

  1. データ基盤の強化
  2. アプリケーション構築・配布
  3. エンタプライズAIの加速


https://youtu.be/8EQpUv0U4Ac?si=rEmhLWmcShWhqAA_

昨年、NativeAppのMarketplaceやIcebergTable、DocumentAI等、異なるクラウドやリージョンを超えてのコラボレーションと、アプリケーションの強化などの発表に興奮した身としては、
今年、AI機能が強化されて、アプリケーション機能周りの機能も続々リリースされ、Horizon機能も強化されて、DataCloudというテーマが一気に現実味を増したなと感じています。

SnowflakeHorizonはこれらのテーマのうち1点目の「データ基盤の強化」という観点で多くの機能追加が行われたと認識しています。

以上がKeynoteの超抜粋でした。
ここからセッションで聞いた話をもとにSnowflakeHorizonの新機能についてまとめていきます。

1.Why Horizon??

詳細

対象はDataだけでない。Content

AI Data CloudというテーマのなかでSnowflake内に存在するアセットはデータだけではなくなります。
Table、AIMLアプリケーション、NativeApps、IcebergTable等のOSSテーブルフォーマットもすべてが対象になり、これをContentと呼んでいました。

加えてこれらの多種なContentsを、どのクラウドでもどのリージョンであっても、コラボレーションを行えるのがSnowflakeの描く未来です。

Horizonの目的

これらすべてのContent、もとい、データやアプリケーションを、多くの企業が他社/グループ企業間・自社内で連携をしていくなかで、管理対象は膨大になり、クラウドプラットフォーム・リージョンをまたぐケースも生まれ、SILOが生まれやすくなります。
こういった様々なContentを横断で取りまとめられるようにしたい。
そういった課題背景をもとに、SnowflakeHorizonは「何よりもContentの検索・発見をより簡単に行えるようにすること」「いかによいガバナンスとスチュワードシップを保証するか(セキュリティ、プライバシー、コンプライアンス)」という目的で機能拡充が追加されているようです。

もう少し具体的には、

  • クラウド横断でRBACの権限制御と脅威のモニタリングをすること
  • 精度高く簡単にすべてのコンテンツを保護すること
  • 簡単な発見と、プライバシー保護を実現すること

といった観点です。

2. 各アクターがHorizonで解決したい課題

詳細

データをコラボレーションするときにデータ活用のアクターによって求める機能も少し変わってくるよね、という点が今回のHorizonのセッションのなかで印象的でした。
上述のSnowflakeHorizonの目的に沿って、データチーム(アナリスト、サイエンティスト、データエンジニア)、ガバナンス&スチュワードチームが求めるであろう課題と解決方針の例をそれぞれ記載していきます。
※各新機能にもフラグ付けをしています

DataTeam(アナリスト、サイエンティスト、データエンジニア)視点

  • データを安全に共有するのが難しい
      →セキュアにデータ、アプリ、モデルを共有できること
  • 関係のあるデータを見つけるのが難しい
      →データ、アプリ、モデルをすぐに見つけられること

DataGovernance&Steward視点

  • クラウド横断でのセキュリティ対策の困難
      →クロスクラウドでのセキュリティ管理ができること
  • セキュリティやアクセス制御が手動で断片的
      →セキュリティやアクセス制御を統合できること
  • コンテンツのボリュームが今後指数関数的に増えていく
     →多くのコンテンツを簡単に理解できること
  • データの価値を開放させることと、リスクを高めることのバランス
      →高い精度で機微データの保護が保証されていること
  • 内部や制御に関する要求が増えてくる
      →品質や機微情報を監視できるビルトイン機能があること

3. 5つの柱で分類する新機能

上述のSnowflakeHorizonの目的や、解決したい課題を背景としてSnowflakeHorizonの機能は5つの柱に分類されます。
今回まとめる新機能もこの5つの柱に基づいて、以下の順にまとめていきます。
①COMPLIANCE
②ACCESS
③SECURITY
④PRIVACY
⑤INTEROPERABILITY


SnowflakeSummit What's Newセッションより

①COMPLIANCE(3機能)

■データ品質の監視

・Data Quality Monitoring GA soon

コメント


SnowflakeSummit What's Newセッションより
ガバナンス&スチュワード

  • Snowflakeがデフォルトで用意する関数またはカスタム関数のDataMetricsFunctionをテーブルに設定して、アラート通知やトラブルシュート、可視化等のアウトプットをさせることができる
  • スチュワードはデータに何かおかしいことが起きていた時に気づける契機になる
  • 通知に基づいて、データエンジニアとすぐに会話を始められる

これは昨年秋冬頃からPrPrの機能でしたので、ついにGA!という感じです。
外部のツールでもデータ品質監視をする機能はありますが、Snowflakeのビルトインされているというのがメリットかと思います。他の機能とも連携がしやすくなるのかなと。
別途発表されているSnowflakeTrailとの関係性も見ていきたいところ。

■Contentの関係性可視化

・LineageVisualizationUI For Data PubPr

コメント


SnowflakeSummit What's Newセッションより
ガバナンス&スチュワード

  • テーブルとテーブルだけでなくテーブルとVIEWのリネージュも追加された
  • リネージュグラフはRBACで守られている。権限を持っていない人は対象のリネージュは参照できない
  • リネージュUIはリアルタイムで更新される!対象のオブジェクトに変更が入ったら即時反映される。これはすばら。
  • カラムレベルでのタグベースでのリネージュ画面などもあり

こちらは個人的にとても嬉しかったアップデート。Snowsight上でSnowflakeのテーブル・ビュー間の関係性を可視化するリネージュUIが追加されます。
昨年冬頃は、まだテーブル間のリネージュのみ/ダウンストリームのみ?などいくつか制限がありましたが、その制限が今回外れたのがとても嬉しいです!
欲を言えばStreamlitAppとのリネージュも可視化してほしいなという願いです。

・LineageVisualizationUI For MLAssets PrPr

コメント


SnowflakeSummit What's Newセッションより
ガバナンス&スチュワード
HorizonのスコープはDataだけでなくAppも含めたContentである、という前提に戻り、MLアセットもリネージュされるようになるとのこと。
具体的にはFeatures、Datasets、MLModelsとのことですが、具体的な仕組みなどは今後注目していきたいです。

②ACCESS(11機能)

■タグ関連の機能

・SensitiveDataAutoClassification PrPr

コメント


SnowflakeSummit What's Newセッションより
ガバナンス&スチュワード

  • 新規テーブルを作成したら、自動で機微データのタグ付けと分類をしてくれる
  • Snowflakeは定期的に新しいテーブルの作成を監視して分類を設定する
  • 分類機能を提供するなかで、手動でプライバシーポリシーを確認して設定する作業が大変すぎるという顧客の声から、手動作業を減らせる機能を提供する

Classification機能が提供されたときに、膨大なテーブルにこれ設定するのは時間がいくらあっても足りないなと思った記憶があるので、この機能はClassificationのハードルが下がるなと思いました。どういう仕組みで分類してくれるのか試して確認したい機能の1つです。

・AutomaticTagPropagation PrPrsoon

コメント


SnowflakeSummit What's Newセッションより
ガバナンス&スチュワード

  • タグが付いているテーブルに対して、そのテーブルを参照するVIEW作成や、テーブルコピーをした際に、自動的に同じ項目にタグがつく機能
  • SourceオブジェクトからDestinationオブジェクトまでタグが伝搬(=Propagate)される
  • 機微データを守る際にタグベースマスキングポリシーが自動で適用できるようになる。

機微データだけでなくタグをつけていたら後続影響調査とかすごく便利になりそう。
マスキングポリシーをよく使っていれば尚更です。

■データカタログっぽい機能

・ObjectInsightsInterface PrPr

コメント


SnowflakeSummit What's Newセッションより
ガバナンス&スチュワード

  • よく実行されるクエリ、ロール、Claddification情報、トップユーザー、リネージュ情報等のメタデータを、Snowsightのテーブル・VIEWの「Governance」タブから参照できる
  • エンドユーザーがオブジェクトを発見しやすくなる。トップユーザーを見れるので、よくそのデータを使っている人に直接聞きにいける
  • スチュワードにこのテーブルを使えばいいのかどうか、などわざわざ聞く必要がなくなる
  • スチュワードは他の問い合わせが減ることで、正しいロールと権限を付与することに集中できる

機能追加背景のスチュワードが他のことに集中できる、みたいな観点があるので、スチュワード寄りの立場としてはとても嬉しい観点だなあと思いました。データ利用者からするとカタログ画面とSnowsightを行ったり来たりしなくていいのは便利だと思います。
データカタログ製品にも類似の機能がありますが、現時点ではデータカタログ製品としてはBIやダッシュボード等のSnowflakeオブジェクト以外も管理できる点が違いとブースでパートナー製品の方々は回答してました。

・AI-PoweredObjectDescriptions PrPrSoon

コメント


SnowflakeSummit What's Newセッションより
ガバナンス&スチュワード アナリスト、サイエンティスト、データエンジニア

  • スチュワードやデータオーナーはDescriptionを書くときにAI(SnowflakeのCopilot)の助けを得られる
  • テーブルの説明情報をわざわざ手書きしたりする必要がなくなる。
  • メタ情報からLLMがベストなDescriptionを導出して書いてくれる。

これは、データ共有が盛んになってInternalMarketplace (後述)でDataProductとしてデータを連携したりするときなどにも非常に便利な機能になってくるだろうなと予感しました。
ただ、日本語対応はおそらくまだあんまりなのではないかなと思います。

■DataMesh思想のDataProduct・社内共有寄りな機能

・Organizational Listing and Profiles PrPr

コメント


SnowflakeSummit What's Newセッションより
アナリスト、サイエンティスト、データエンジニア

  • 自分のSnowflakeのOrganizationの中で、共有をするときに使うListing
  • 同じ組織でも別アカウントだと今まで情報が共有しづらかったところを、同組織の別のアカウントに共有する
  • InternalMarketplaceで簡単に発見するために使える

DataMeshのアーキテクチャを組むときに使えるよ!と明言されていました。
InternalMarketplaceとセットで見ておく機能かなと思います。

・InternalMarketplace PrPr

コメント


SnowflakeSummit What's Newセッションより
アナリスト、サイエンティスト、データエンジニア

  • 自分の企業内でデータプロダクトを共有できるMarketplace
  • 他のチームから簡単にデータ、App、AIが発見できる
  • ProviderStudioのListingから選択できる

ちょうど5月にDataMeshについて勉強したので、社内向けのMarketPlaceはまさにな機能で、わくわくしました。
実際Organization内で誰がどういうデータをプロダクトとして共有するのか、どこのアカウントのどのロールに公開させるデータ(App)か、とかはちゃんとガバナンス利かせないといけないところかなあと思いました。

・UniformListingLocator ULL PrPr

コメント


SnowflakeSummit What's Newセッションより
アナリスト、サイエンティスト、データエンジニア

  • SQLクエリのなかで、Listingの場所を指定できるようになる一意のアドレス
  • 「DB名.スキーマ名.テーブル名」とSQLの中で指定するのと同じような概念で「Org名Profile名Listing名」をSQLに書けば参照できる。
  • Listingからデータを取得するときに、毎度CreateDBしてコピーしていた作業をしなくてよくなる

これはPlatformKeynoteで機能名だけ出ていましたが、地味に嬉しくて便利な機能で個人的に推しです。

・UniversalSearch GA

コメント


SnowflakeSummit What's Newセッションより
アナリスト、サイエンティスト、データエンジニア

  • Snowflake上のテーブル、View、関数、ドキュメントなどなんでも検索できる
  • さらに、ワークシート・ダッシュボード・InternalMarketplaceListingも検索できるようになった
  • キーワード検索も、自然言語検索もできる、アカウント横断で

これも昨年秋冬くらいから初めて見た時はユースケースのイメージがちゃんつ湧いていませんでしたが、DataMesh構成を組んで社内のいろいろなところにデータやAppが分散していた場合に、社内横断で検索できるので、とてもアツい機能ですね。

■社外コラボレーション等も含めた機能

・Share AI Models & More with Listing 一部GA

コメント


SnowflakeSummit What's Newセッションより
アナリスト、サイエンティスト、データエンジニア

  • AIモデルや、IcebergTableやDynamicTableを共有するときのListing機能
  • 組織内外に共有するときに使える

これは、SnowflakeHorizonの目的の中で前述した、データだけでないContentがコラボレーションの対象となるという考えに基づいた機能ですね。
アカウントレベルのSILOを解消して、良いAIモデルは共有できるようになるのはステキです。

・ListingAPI PuPr

コメント


SnowflakeSummit What's Newセッションより
アナリスト、サイエンティスト、データエンジニア

  • ListingをAPIで管理できるようになる

シンプルですが、Listingがどんどん増えてきたときに管理しやすくなってありがたい機能だと思います。

・Object Level Replication GA

コメント


SnowflakeSummit What's Newセッションより
アナリスト、サイエンティスト、データエンジニア

  • 今までリージョンを超えてデータ共有するときは、DB単位で複製する必要があった
  • リージョンやクラウド横断でデータ共有するときにオブジェクト単位で使える複製機能
  • データ転送コストも、ストレージコストも節約することができる

まだ業務でクロスリージョンのレプリケーションをSnowflakeで、ということがないので、課題感を持っていなかったですが、たしかに普段リージョン間共有しているケースにおいては、なくてはならない機能かと。

③SECURITY(1機能)

TrustCenter GASoon

コメント


SnowflakeSummit What's Newセッションより
ガバナンス&スチュワード

  • クロスクラウドのセキュリティや監査、コンプライアンスリスクを見える化してくれて、解決方法までアドバイスしてくれる
  • NativeAppにも適用する予定(こっちはPrPrSoon)

超最近使えるようになった機能ですが、これは基盤整備する側にとってはとてもとても嬉しい機能です。今回ガバナンス&スチュワード向けにも嬉しい機能追加が多く、有難いです。

SECURITY周りは他にも「Outbound Privatelink connectivity」「Enhancednetworksecurity」「Snowflake Secrets」「Authenticaiton improvement」等もあるはずですが、あまりセッション内で説明がなく本ブログでは割愛します。

④PRIVACY(6機能)

現在80%の国が各国でプライバシーに関する法律を持っており、クロスリージョン連携等ではこれらの法律を遵守するだけでもSILOが生まれやすい。
そういった背景で、機微データがあっても簡単にデータ共有が行える世界を目指した機能です。プライバシー保護の仕組みを使って、DCRとか、Streamlitアプリ作成とか、MarketPlaceへのデータやアプリ公開をやっていってねというメッセージでした。

■ポリシー系の機能

・Projection Policies GA

コメント


SnowflakeSummit What's Newセッションより
アナリスト、サイエンティスト、データエンジニア

  • いわゆるSQLの”射影”で一部の列を抽出するときのセキュリティを守る
  • マイナンバー番号の項目があったとして、マイナンバー番号をとってくるのではなく、顧客テーブルでマイナンバー番号が一致するものだけカウントしてくる

このあたりのポリシー群は4-5月頃にしれっとGAされていましたが、使いこなせるようになりたい機能です。マスキングポリシーや行アクセスポリシーもこれらの同列になるのかなと思いつつ、今回新機能のポリシーはDCR等でも特に重要そうなポリシーだと思っています。

・Aggregation Policies GA

コメント


SnowflakeSummit What's Newセッションより
アナリスト、サイエンティスト、データエンジニア
サマリ

  • いわゆるSQLの”選択”で一部の行を抽出するときのセキュリティを守る
  • 最小の行数以上のレコードのものでないと抽出できないようになるので、Where句でNameがTaroのレコードだけを抽出したりできなくなる。営業部のレコード分を件数抽出する。

・Entity Level Privacy for Aggregation Policies GA

コメント


SnowflakeSummit What's Newセッションより
アナリスト、サイエンティスト、データエンジニア
サマリ

  • 行数だけでなく、特定の列の値の数がいくつ以上といった最小値の設定ができるようになる。
  • 4行以上に設定していたときに、そこから特定の人物の平均利用金額値等が出せてしまうので、それを防止する。

・Differential Privacy Policy PuPrSoon

コメント


SnowflakeSummit What's Newセッションより
アナリスト、サイエンティスト、データエンジニア
サマリ

  • NOISE:プライバシー攻撃から守るために機微データにノイズを加えて推測できないようにする
  • PrivacyBudget:機微データにアクセスする前に大量のクエリが発行されたらクエリをカットされる

こちらも昨年冬頃からでているものではありますが、DCRの画面で設定する機能のイメージでした。社外との共有等では特にうれしい機能かと。

■検証用データ作成

・Synthetic Data Generation PrPrSoon

コメント


SnowflakeSummit What's Newセッションより
アナリスト、サイエンティスト、データエンジニア

  • 元テーブルと類似の分布、相関、結合キーのダミーテーブルをコピーで作成できる
  • 業務データを使ったテストができないときにとても便利

製品検証やサンドボックス環境上での検証で、ダミーデータの用意に苦労していたので、めちゃめちゃうれしい機能でした。とても便利になるし、パートナー製品も試しやすくなる気がします。

■DCR

Snowflake Data CleanRooms GA

コメント


SnowflakeSummit What's Newセッションより
アナリスト、サイエンティスト、データエンジニア
サマリ

  • Marketplaceからcleanroomを選択したら作成できる
  • NativeAppで簡単にDCRを構成できる
  • ざっくりデータなら見せていいよというデータを共有できる

という雑なサマリをしましたが、去年から話題になっているDCRがついにきたというやつですね。
DCRって何なの?の説明が分かりやすいのはSnowVillageの以下を参照頂くのがいいのかなと思います。
・DCRを触ってみた
https://www.youtube.com/live/BGXm2dACwUk?si=W5HnomIQy5B3n2WI
・DCRユーザーグループ会
https://www.youtube.com/live/T-SY9tOLTWc?si=wCy2D6ADaQkvuiI2

⑤INTEROPERABILITY(2機能)

・IcebergTable GA

・Integration with PolarisCatalog PuPr soon

コメント


SnowflakeSummit What's Newセッションより
ガバナンス&スチュワード アナリスト、サイエンティスト、データエンジニア

  • SnowflakeHorizonのガバナンスは企業のデータカタログ、ガバナンス、セキュリティパートナーと、より統合された世界へ。PolarisCatalogとも統合する予定。
  • マスキングポリシーや行アクセスポリシーもIcebergTableに付与することができる

今年はこのIcebergTableとPolarisCatalog周りがとてもアツい発表でした。Summitを通じて特にホットになったトピックな印象です。
IcebergTableって何なの?等の説明はKevinさんのブログが分かりやすいのでそちらに飛ばさせていただきます。
https://zenn.dev/kevinrobot34/articles/snowflake-iceberg-introduction

感想&おわりに

まとめてみると、特に追加が多かった機能群等の観点で、Horizon機能の注力ポイントやメッセージが個人的には把握しやすくなりました。
(特にACCESSを便利にする機能と、共有を促進するためにデータを保護するPRIVACY系の機能が多かった)

また、世界標準ではこれらの背景となった課題が突きあがってくるくらい、データ連携やMesh構成が組まれていっているのだということがよく分かりました。
SnowflakeHorizonだけでなく、Atlanのようなカタログ製品や、Coalesceのようなデータ変換ツール等それぞれのパートナー製品でも、DataProductやドメインという概念が取り入れられており、思想としては既に分散管理は大前提になっていることが伝わってきました。

一方で、これらの機能が使いこなせるほどのコラボレーションが身の回りではまだ進んでいないような肌感と悔しさも少し感じたので、もっと頑張りたいと思います。

余談として、DataMeshについて勉強したときに4つの原則のうちの1つの「SelfServicePlatform」が難しいなと思っていましたが、
https://x.com/msgw_data/status/1786773531659055364

デフォルトでSnowflakeや各パートナー製品がこういった機能を提供してくれるのはめちゃめちゃありがたい世界だと思いました。

最後に、SnowflakeTrailというObservability周りの機能についてもキーワードとしてSnowflakeHorizonと絡んでくるかと思いますが、詳細を追い切れていないので別途まとめたいと思います。

以上、ありがとうございました!

Discussion