![[レポート]dbt Projects on SnowflakeをはじめとしたSnowflakeの新機能を活用するデータパイプラインの最新アップデート #SWTTokyo25](https://images.ctfassets.net/ct0aopd36mqt/4c23cKcRWSfL7fbZjZSEYa/9a2f285542f7937bedd49a78ad421a45/eyecatch_snowflakeworldtourtokyo2025_1200x630.png)
[レポート]dbt Projects on SnowflakeをはじめとしたSnowflakeの新機能を活用するデータパイプラインの最新アップデート #SWTTokyo25
かわばたです。
2025年9月11日~2025年9月12日に、「SNOWFLAKE WORLD TOUR 2025 - TOKYO」が開催されました。
本記事はセッション
【dbt Projects on SnowflakeをはじめとしたSnowflakeの新機能を活用するデータパイプラインの最新アップデート】
のレポートブログとなります。
登壇者
Snowflake
第四ソリューションエンジニアリング本部
ソリューションエンジニア
金成 忠樹 氏
データエンジニアが直面する3つの課題
- データエンジニアリングはAI時代の縁の下の力持ち
- ビジネス成果やAIの成果を引き出すためには、適切なコスト感、適切な性能、適切な品質でデータを管理されていることが重要となる
データエンジニアリングにおける3つの課題
- インフラの管理:インフラを構築し、運用し、アップグレード対応まで行う必要がある。
- プラットフォームの複雑化:SQL、Python、Spark、Pandasなど、データエンジニアリングに関わる様々なユーザーがいる中で、監視やオーケストレーションをデータプラットフォームに統合していくことへの課題がある。
- 問題発生時の対応:データパイプラインの遅延、データ品質の問題、ガバナンスやコストの問題などへの対応が、日常茶飯事になってしまっている。
シンプルなデータエンジニアリング
Snowflakeのミッション:「全てのユーザー、全てのワークロードに対して、シンプルなデータエンジニアリングをお届けすること」
以下、Snowflakeを使用してエンドツーエンドのソリューションを実現している事例
- TravelPerk様:インフラをSnowflakeに移行して15%のコストカットを成功させ、Dynamic Tablesを用いてデータ提供の効率性を350%向上。
- Illumina様:オープンなテーブルフォーマットであるIcebergを採用し、相互運用性の高いデータプラットフォームを構築。
- WHOOP様:Snowpark上で財務予測のAIモデルを開発し、推論速度を3倍に高速化。
【関連ドキュメント】
Snowflakeでデータエンジニアリングを効率化
このセッションはパイプラインの領域にフォーカス
dbt project on Snowflake
dbtは、ソフトウェア開発のベストプラクティスをデータパイプライン開発に持ち込むことができるツールです。
dbtユーザーが抱えている課題
- ツールの多様化:様々なシステムやツールを利用するため、新しいチームメンバーのオンボーディングが難しくなっている。
- リソース管理の複雑さ:オーケストレーターやSnowflakeなど、複数のコンピューティングリソースを管理しなければならない。
- 問題追跡の困難さ:問題が発生した際に、ログが複数のシステムに散らばっており、原因究明が重労働になっている。
課題解決のためのdbt project on Snowflake
Snowflakeの中でdbtプロジェクトを構築、テスト、デプロイ、スケジュール設定、そしてモニタリングまで完結可能。
Workspaces
ファイルベースの開発環境で、Git統合も可能なパワフルな環境をWeb UIであるSnowsight上で利用できます。
デモ
デモは割愛します。
以下、ハンズオン形式の記事が参考になると思うのでご確認ください。
Dynamic Tables
Dynamic Tablesのアップデート
Dynamic Tablesはバッチとストリームの両方に対応する宣言型のETL/ELTフレームワークで、依存関係やスケジューリングを自動的に管理してくれます。
4つのアップデート
- Apache Icebergテーブルに対応:オープンテーブルフォーマットであるIcebergを使われているお客様も、データ変換にDynamic Tablesを利用可能に。
- 高頻度更新に対応:15秒間隔でのデータ変換を定期実行可能に。
- パフォーマンス向上:内部で使われる関数のパフォーマンスの向上や、差分更新に使える関数を増やしています。
- 完全性の担保:IMMUTABLE WHEREという新しいSQL拡張を導入し、条件に当てはまる行を更新・削除させないといった制御が可能に。
【公式ドキュメント】
Pandas on SnowflakeとSnowpark
Pandas on Snowflake
昨年、使い慣れたPandas API
を使ってSnowflakeのデータを操作するための「Pandas on Snowflake」を一般提供開始しました。
今年のSummitでは、新機能「ハイブリッド実行」を発表しました。Pandasのコードをローカルで実行するか、パワフルなSnowflakeの計算環境で実行するかをインテリジェントに判断する機能で、開発者は実行環境を意識することなく、効率的にコードを実行できます。
Snowpark
Snowparkは、Python、Java、ScalaといったコードをSnowflakeのパワフルな仮想ウェアハウスの中で直接実行するためのライブラリとコード実行環境です。
最新ロードマップ
先月パブリックプレビュー
Python DB-API:PostgreSQL、Databricks、SQL Server、Oracleなどのデータベースに直接接続し、データをクエリすることがより簡単になります。
オーケストレーション機能
-
「Snowflake Tasks」:安定した長時間実行されるワークロード向けで、ユーザー管理のウェアハウスで実行します。
-
「Serverless Tasks」:アドホックで短時間のクエリに最適で、Snowflakeが管理するウェアハウスで実行されます。
Tasksの新機能
最後に
パイプライン領域にある課題に対しての解決策としてSnowflakeの様々な機能が紹介されたセッションでした。
個人的にはdbt Coreの機能をSnowflake上で利用できるdbt project on Snowflake
が有用だと感じました!
弊社でPoC支援サービスも実施しているので、ご興味のある方は下記をご確認ください。
この記事が何かの参考になれば幸いです。