スノーフレイクは4月18日、開発者向けのフレームワーク「Snowpark」に関する説明会を開催した。説明会では、「Snowpark」の技術的な解説と導入事例の紹介が行われた。

データエンジニアリングの課題を解消する「Snowpark」

「Snowpark」を用いることで、Java、Scala、Pythonといったプログラミング言語を用いてデータクラウド「Snowflake」上のデータを操作することが可能になる。シニアプロダクトマーケティングマネージャー兼エヴァンジェリスト KT氏は、「Snowflakeはデータエンジニアリングにおける課題を解決するもの」と説明した。

  • スノーフレイク シニアプロダクトマーケティングマネージャー兼エヴァンジェリスト KT氏

KT氏は、データエンジニアリングの課題として、「サイロ化した多様なデータ」「パイプラインの信頼性と性能」「管理と維持が難しい点」を挙げた。同氏は、これらの課題を従来のアプローチでは複雑になるため解決することは難しいと指摘した。

従来のアプローチでは、「顧客が言語ごとに処理クラスターを実行することが多い」「キャパシティ管理とリソースのサイズ設定が複雑」「データ移動とデータサイロが多い」といった問題があるという。

「Snowflake」は合理化されたアーキテクチャによって、これらの問題を解消している。具体的に「Snowflake」は、「多様な言語をネイティブでサポートする単一のプラットフォーム」「シンプルなキャパシティ管理とリソースのサイズ設定」「同一データでコラボレーション可能」「一貫したガバナンスと セキュリティポリシー」という特徴を備えている。これらを実現する機能の一つが「Snowpark」となる。

「Python、Java、Scala、SQLに対応するSnowparkは言語の柔軟性に対応し、開発者のスキルセットもカバーする。Snowparkは既存のSparkパイプラインを最小限のコード変更で移行するため、パイプラインのスピードアップを実現する。パイプラインが短いと リソースのスペックを落とせるので利用量減り、コストが削減される」(KT氏)

「Snowpark」はJavaとScalaの対応が先行して始まり、2022年に「Snowpark for Python」の一般提供が開始された。「Snowpark for Python」では、3つの方法でデータを扱える。

  • 「Snowpark」の仕組み

「Snowpark for Python」の導入効果は?

この記事は
Members+会員の方のみ御覧いただけます

ログイン/無料会員登録

会員サービスの詳細はこちら