製品 & テクノロジー

一般提供開始されたSnowflakeのASOF JOINで時系列分析を加速

一般提供開始されたSnowflakeのASOF JOINで時系列分析を加速

時系列データはどこにでもあります。システム、動作、プロセスが時間の経過とともにどのように変化するかを把握します。モノのインターネット(IoT)、金融サービス、製造などのさまざまな業界の企業が、このデータを利用してビジネスや経営上の意思決定を行っています。 

時系列データを使用してアナリティクスを実行し、意思決定を促進する場合、多くの場合、複数のデータセットを結合する必要があります。たとえば、IoT企業の開発者が予知保全アプリケーションを構築する場合、過去の保全データのコンテキストに基づいて設備の健全性の時系列データを分析し、パターンを導き出す必要があります。同様に、金融データアナリストは、監査のために日中のオプション取引データと優勢な市場価格データを関連付ける必要があります。 

このような結合を実行する際の一般的な課題は、異なる時系列テーブルのタイムスタンプが正確に一致しないことが多く、そのような結合を実行するために複雑で面倒なクエリを記述する必要があるということです。

Snowflakeでは、お客様がシンプルかつ迅速にデータから有意義なインサイトを得られるよう取り組んでいます。そこで今回、ASOF JOINの一般提供(GA)を発表します。ASOF JOINは、タイムスタンプが正確に一致しない時系列データセットを結合する、使いやすく高性能な専用時系列機能です。

ASOF JOIN機能とは

ASOF JOINは、2つのテーブルから近い(通常は時間的)レコードをペアにする結合の一種です。結合の左側の各行について、右側から最も一致する値を検索します。 

SQL構文は次のとおりです。

対応するSnowpark構文は次のとおりです。

この構文はどのように使用できますか?たとえば、金融アナリストが、監査または規制のために、各証券取引の前に最も近い株価を見つけるタスクを任されているとしましょう。以下は、仮想データのスニペットです。  

これを行うには、次のようにASOF JOINを使用します。 

Snowparkで同じことを実行すると、コードスニペットは次のようになります。 

結果は次のようになります。

ASOF JOINの仕組み

ASOF JOINのネイティブサポートがない場合、カスタマーは通常、複数のサブクエリ、ウィンドウ関数、範囲結合などを伴う複雑な回避策を使用する必要があります。その結果、多くの場合、長く複雑なクエリが実行され、メンテナンスが難しく、パフォーマンスが最適化されません。 

これに対処するため、Snowflakeの専用ASOF JOIN機能は、望ましい結果を明確に示す簡潔な構文を提供し、手間のかかる作業はクエリエンジンに任せます。Snowflakeは、ASOF JOIN演算子を、結合キーとタイムスタンプ式に基づいて行を左右に揃え、パーティションを認識するソートを適用し、クエリに基づいて最も近い前後の値を検索する一連の操作に変換します。 

ASOF JOINの使用から得られるパフォーマンスのサンプルを示すため、株価と株式取引(3,900万のコメントと220万の取引)のサンプルデータセットを使用し、各取引の前に最も近い株価を見つけるクエリを実行しました。比較したのは、ASOF JOIN(下図の水色)と LEFT OUTER JOIN(濃い青)の2つのクエリタイプです。ASOF JOINクエリは 回避策の12倍の速さでしたその後、両方のデータセットのサイズを10倍に増やしました。データ量が大きいため、ASOF JOINの速度は回避策の16倍でした。   

SnowflakeのネイティブなASOF JOINを使用することで、顧客は複雑な対策を立てることなく、時系列データセットを高性能で整合させるシンプルな分析クエリの構築に集中できます。 

ZeroNorth社によるASOF JOINの使用方法

クリーンテクノロジー企業であるZeroNorth社は、世界の海運業界が最適な商業的パフォーマンスを達成し、排出量を削減するのを支援します。同社の技術チームは、毎時報告される船舶の速度などのデータと、船舶の読み取り前後の最も近い衛星位置を結合するために、ASOF JOINを使用しました。利用された2つのASOF JOINは、船舶軌道追跡やETA推定などのインサイトを提供するのに役立ちました。

ZeroNorth社の主任データエンジニアであるDimo Boyadzhiev氏は次のように述べています。「ASOF JOINのパフォーマンスは非常に優れています。この構文により、働き方がより明確でスピーディーになりました。」

Panasonic Connect社によるASOF JOINの利用

パナソニックグループのB2Bソリューション成長の中核を担うパナソニックコネクト社は、ワークロードをSparkからSnowparkに移行する際にASOF JOINを使用しました。ASOF JOINは、特定の期間における各船舶の関連データを見つけるなどのアナリティクスを簡単かつ効率的に実行するために役立ちました。

具体的には、ASOF JOINが大量のデータを結合する際に非常に有用であることが実証され、以前のソリューションより99%パフォーマンスが向上したことが挙げられます。

Snowflakeのお客様が今すぐASOF JOINを使用する方法:

  • ウェアラブルテクノロジー企業は、ユーザーの触覚インタラクションデータ(クリック、ダブルクリック)とバッテリーレベルの情報を組み合わせて、特定のユーザーインタラクションがデバイスのバッテリーレベルにどのような影響を与えるかを判断しています。 
  • 金融サービス企業は、取引監視などのアプリケーションのために、過去の株式取引データと相場データをリンクさせています。 
  • クラウドセキュリティ企業は、潜在的な脅威を検出するために、アプリケーションプロセスの詳細とネットワーク接続の詳細を統合しようとしています。
  • 設計会社は、ASOF JOINを使用して、特定の機能(トリミングなど)を持つユーザーのインタラクションをユーザーの次のアクションデータに関連付けて分析しています。 
  • あるデジタル分析企業は、ユーザーの行動データとイベントデータやその他の関連データセットを組み合わせて、ユーザーエンゲージメントとファネル分析を行っています。 
  • クレジットカード会社は、広告のクリックデータに基づいてクレジットカードの申し込みを分析し、マーケティングキャンペーンの有効性を評価しています。

詳しくはこちら

すべてのお客様がSnowflakeアカウントでASOF JOINを利用できるようになりました。詳細については、Snowflakeドキュメントをお読みください。Snowflakeでの時系列データの操作について詳しくは、時系列ユーザーガイドも参照してください。

記事をシェアする

Subscribe to our blog newsletter

Get the best, coolest and latest delivered to your inbox each week

Start your 30-DayFree Trial

Try Snowflake free for 30 days and experience the AI Data Cloud that helps eliminate the complexity, cost and constraints inherent with other solutions.