DevelopersIO 2022 Snowflakeトーク&ディスカッション~Snowflake Summit’22の最新情報を現地参戦できなかった二人のData Superheroと一緒に学ぼう!#devio2022

2022.08.01

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

さがらです。

DevelopersIO 2022 〜技術で心を揺さぶる3日間〜の2日目、2022年7月27日にSnowflakeトーク&ディスカッション~Snowflake Summit'22の最新情報を現地参戦できなかった二人のData Superheroと一緒に学ぼう!というタイトルで、Snowflake社のKTさん、弊社クラスメソッドの甲木、さがら、の3人で登壇しました。

本ブログではこの登壇内容について、紹介のあったSnowflakeの新機能を中心にまとめたいと思います。

登壇概要

概要

Snowflake社の最大のユーザーカンファレンスイベントである「Snowflake Summit」がラスベガスにて2022年6月13~16日の日程で開催されました。本セッションではSnowflake社のKT氏をお招きし、イベントに現地参戦できなかったData Supeheroesであるクラスメソッドの甲木・相樂と共に、Unistoreなどの新機能の発表を中心にイベント内容を振り返っていきます。

登壇者

  • KT 氏
    • Snowflake Senior Product Marketing Manager and Evangelist
  • 甲木洋介
    • クラスメソッド DA事業本部 プリセールスアーキテクト
  • 相樂悟
    • クラスメソッド アライアンス統括部 アナリティクスコンサルタント

Snowflakeのイノベーション

これまでSnowflakeは、ストレージとコンピューティングリソースを分離した独自のアーキテクチャ、社外とのデータ共有が非常に容易に実現可能なデータシェアリングの機能により、「分析」「コラボレーション」における破壊的なイノベーションを起こしてきました。

そして、2022年のSnowfalke Summitでは、アプリ開発における破壊的イノベーションに関する機能を多く発表しました。

新ワークロード CYBER SECURITY

Snowflakeが対応する新しいワークロードとして、「CYBER SECURITY」に対応していくと発表がありました。

セキュリティと聞くとあまりSnowflakeと関係がなさそうに見えますが、実際にセキュリティの異常検知は何を元に行うのかというと、異常値つまりデータを元に行っていることが多いため、実は関連のある分野なのです。

まだ詳細な情報は未定ですが、各種クラウドプラットフォームやアプリケーションとSnowflakeを連携して、Snowflake上でリアルタイム検知やメトリクスの監視などを行えるようになっていきそうですね。

タグベースマスキング

これまで、タグとマスキングポリシーは独立した概念だったため、それぞれを設定していくしかありませんでした。

しかし、今後はタグベースマスキングということで、設定したマスキングポリシーをタグに紐づけることで、そのタグを持つオブジェクト全てに対してマスキングポリシーを行えるようになります。

こちらの機能は、2022年8月1日時点でEnterpriseエディション以上でプレビュー機能として提供されています。

Icebergテーブル

Apache Icebergは、ペタバイト級の大規模なテーブル用に設計されたオープンなテーブルフォーマットです。IcebergはACIDトランザクションにも対応しており、データレイクをデータウェアハウスの様に扱う、レイクハウス的な考え方で使用出来るフォーマットとも言えます。

このIcebergフォーマットに対応した、「Icebergテーブル」という機能の発表がありました。イメージとしては、「Icebergフォーマットを参照するExternal Table」という感じですね。

しかし、通常のExternal Tableとは異なり、Icebergフォーマットに関連するメタデータやデータファイルを外部のS3などのストレージサービスに保持している場合でも、Snowflakeの通常のテーブルと同様のパフォーマンスを発揮することが出来るのが、今回発表されたIcebergテーブルの強みです。

マテリアライズドテーブル

こちらはまだ開発中の機能ですが、「マテリアライズドテーブル」という機能の発表もありました。

詳細はまだ未定ですが、テーブルとして扱うけれど、マテリアライズドビューのように増分データの更新の自動化が行える機能となるようです。

これまで、Snowflake上で増分更新を行おうとすると、ストリームやタスクを組む必要があったり、結合などに制約のあるマテリアライズドビューを使う、という選択肢しかありませんでした。

この中間に位置する機能ということで、不要なストリームやタスクを組むことなくテーブルの増分更新が実現できるのであれば、管理する処理も少なくなるので嬉しいですよね!個人的にも楽しみな機能です。

Snowflakeでの機械学習

今後、Snowflake上で一気通貫で機械学習のパイプラインを構築するための機能の発表もありました。

まずはSnowpark for Pythonですね。こちらは2021年に発表された機能ですが、2022年8月1日時点ではパブリックプレビューの機能となっています!

とてもざっくりSnowpark for Pythonを説明すると、Snowflake上のデータに対してSnowflakeのコンピューティングリソースを用いてPythonの処理を行える機能です。

これまではPythonコネクタを用いてSnowflake上のデータを一度取得しSnowflake外でPythonの処理を行う必要があったのですが、Snowpark for Pythonならばデータの処理をSnowflakeの外で担う必要がなくなるため、大容量のデータであってもスムーズに対応できるようになります。

Snowpark for Pythonに関する詳細な説明は、ぜひこちらの動画をご覧ください!

また、機械学習の処理を担おうとすると、どうしても大容量のRAMやGPUが必要になってくるものです。そういった処理にも対応できるよう、ラージメモリインスタンスという新しい種類のインスタンスも提供予定とのことです。

更に、SQLを用いた機械学習の機能も発表もありました。SQLを用いて、構築したモデルを用いた予測結果を得る、等のことが出来るようになる予定です。

Snowflake上でのアプリケーション開発&リリース

Snowflakeをブラウザから操作する際のUIであるSnowsightから、直接Pythonをコーディングして実行できる機能の発表がありました。

環境構築などの類があまり好きでない自分にとって、これは本当にありがたい機能です。笑

そして、まだ開発中ではありますが、このワークシート上ではStreamlitを用いた開発ができるようになるため、データアプリケーションの開発がSnowflake上で完結させることが出来るようになります。

さらに!開発したアプリケーションをSnowflakeマーケットプレイス上で公開して、かつマネタイズもSnowflakeの機能を用いて実現可能です。

Snowflakeだけでアプリを開発して外部に公開してマネタイズする「Snowflaker」が出てくる世も遠くないのでは…!?

新ワークロード UNISTORE

前述しましたアプリケーション開発をSnowflakeで担おうとすると、どうしてもトランザクション処理が必要となってくることがあります。

トランザクション処理は従来のDWHのアーキテクチャがあまり得意とする分野ではなく、別のRDBを立てて対応をすることがこれまでの常識でした。

しかし、そのトランザクション処理もSnowflakeで担うために「UNISTORE」の発表がありました。

「ハイブリッドテーブル」という新しい形式のテーブルで、OLTP(Online Transaction Processing)・OLAP(Online Analytical Processing)、どちらにも対応できるようです。面白いのは、ユニークキーやインデックスといった機能もサポートしていることですね。

このアプローチは本当に革新的で、これまでDWHに業務アプリケーション上のデータを連携して分析をしようとすると、アプリケーション用途のRDBからSnowflakeなどのDWHに該当するサービスにELT/ETL処理をしないといけませんでした。

しかし、このUNISTOREのアプローチならば、ELT/ETL処理自体が不要となる可能性があるのです。従来のデータを保持する考え方が覆されるかもしれない、そんな機能なのです。

余談:データ基盤の未来予想

少し話を広げますが、このOLTPとOLAPどちらにも対応するアプローチはHTAP(Hybrid Transaction/Analytical Processing)と呼ばれているのですが、他社も様々な方法でアプローチしています。

そして、このHTAPのアプローチが実現できれば、下図のように1つの基盤上に全てのデータが集約される未来が待っているのかもしれません。

上の3枚のスライドは、本セッションにも登壇した甲木のビデオセッションからの引用です。ぜひこちらもご覧ください!

最後に

Snowflake Summitの振り返りセッションの内容をまとめてみました。

Summitに現地参戦できなかった私はTwitter上で現地参戦組の情報を追っていたので、今回のこの場をもって、改めて各機能の詳細を文字通りお勉強させていただきました。笑

子供みたいな感想ですが、Snowflakeの新機能の発表はワクワクさせてくれる機能が多いんですよね!「そんなこと出来るようになるの!?」と思わせてくれる機能が多いので、今回発表のあった各機能の一般公開が本当に楽しみです。

ブログネタも大量に出てきましたので、頑張らないと…笑

最後に改めて、ご登壇頂いたSnowflake社のKTさんにこの場を借りて御礼申し上げます。ありがとうございました!!