この度、Snowflakeでの非構造化データ管理機能の一般提供を開始いたしました。2021年に本機能のパブリックプレビュー提供を開始して以来、様々の業界の幅広いユースケースに採用いただいており、例えばコールセンターの音声録音データの保存およびセキュリティ保護、Snowflakeデータマーケットプレイスでの安全なPDFドキュメント共有、医療関連画像の保存およびデータ抽出など、数多くのユースケースにご利用いただいております。

非構造化データ向けパートナーエコシステムも成長を続けており、Clarifai、Impira、Labelbox、Semantic Health、VeritoneなどのMLパートナー事業者のご協力により、これらの事業者の非構造化データから取得した価値あるインサイトをユーザー様に提供しております。またHammerspaceなど追加データ管理機能を提供するパートナー事業者とも連携しております。

非構造化データのためのSnowparkをパブリックプレビュー版で提供中

複数のタイプのデータを格納し管理する一元化されたレポジトリを必要とするユーザーの場合、Snowflake内で非構造化データを保存および管理できるだけでなく、エクスターナルファンクションを用いて、あるいはSnowparkおよび現在パブリックプレビュー中のJavaサポートを用いてネイティブ処理することもできます。

SnowparkはSnowflakeの新しいデベロッパーフレームワークです。Scala、Java、Python(プレビュー中)のネイティブサポートとライブラリの完全制御を提供しているため、個別の処理エンジンの実装が不要となります。それぞれのチームが単一のプラットフォーム上で同じデータを用いてコラボレーションできることにより、ユーザー企業はアーキテクチャを合理化して広範な新しいユースケースを実現できます。

「当社は、テキストアナリティクスを大量の添付ファイル付きメールデータに適用するプロジェクトを運用しています。従来はメールの本文と添付ファイルを別々に保存し、添付ファイルはデータベース内にバイナリデータとして保存していましたが、複数の課題が存在していました。添付ファイルは列ストレージ上限を超えることがあり、また元のメールデータは後でアクセスできるようディスクに保存する必要がありました。現在はSnowflakeの非構造化データのサポートにより、全てのデータを1か所で処理し、様々なユースケースの機械学習向けに充実したデータセットを構築できるようになりました。メールファイルを元の形式でSnowflake管理下のステージに保存し、Snowflakeのエンジンを利用してJava UDFで処理しています。」

— 大手ソフトウェア企業のデータサイエンス担当VP、Eranga氏

Snowparkを用いた非構造化データの処理

「ストリームおよびタスク」ディレクトリテーブルの利用により、ユーザーは継続的なデータパイプラインを構築して非構造化データを処理することができます。実際のファイル処理は、Snowflakeのコンピュートリソース上でJava関数とSnowparkを用いて行います。

データエンジニア、データサイテンティスト、デベロッパーは、Javaユーザー定義関数の作成により以下を行うことができます。

  • ドキュメントからのテキスト抽出。
  • メール処理とメタデータ抽出、および添付ファイルの抽出。
  • 医療関連画像の処理による患者情報の抽出。

例えば医療機関で医師の作成した記録をPDFもしくは画像ファイルで保存しており、それらのファイルからフィールドデータを抽出して構造化テーブルに出力しなければならない場合、Snowflakeを利用すれば、PDFや画像ファイルからデータを抽出するJava関数を作成してSQLクエリもしくはパイプラインに呼び出し、Snowflakeのエンジンで継続的に処理することができます。

そのようなアーキテクチャの例がこちらです。

今すぐ始めるには

今回ご紹介したSnowflakeで非構造化データを格納、管理、処理、共有する各種新機能の操作方法はこちらのクイックスタートで詳しく説明しておりますので、ぜひ実際にお試しください。こちらの製品ドキュメンテーションも併せて参照ください。Snowflakeでは常に製品やサービスの改善に努めており、Snowparkについてのフィードバックもお待ちしております。こちらの専用ディスカッションフォーラムにてぜひフィードバックを共有してください。