時系列データに基づいてアラートを設定する

クエリベースまたは Look にリンクされたダッシュボード タイルの結果が、指定したしきい値に達したか、上回った場合にメールまたは Slack 通知を送信するアラートを作成できます。時系列データに基づくアラートの設定は、他のデータ型に基づくアラートの設定とは異なります。

時系列データの場合、アラート条件は、完全な結果セットではなく、時系列内の特定の行の比較に基づきます。時系列データでこのように処理することで、ユーザーは [changes by]、[increases by]、[decreases by] などの他のタイプのデータでは利用できない追加のアラート条件オプションを使用する時系列内の 2 行からデータを比較する追加オペレーションを実行できます。

アラート条件をこれらの比較条件を時系列データとともに使用すると、最新のデータ行とその前の行を比較します。時系列内の現在の場所を追跡し、アラートクエリが以前に実行されていたものではない情報のみに基づいてアラート条件をトリガーできるように、Looker では。アラートクエリを実行するたびに最新の時系列データの値を保持する必要があります。

このページでは、時系列データを使用するアラート条件を選択するときに考慮すべき 2 つの重要なケースについて説明します。

  1. アラート条件を指定すると、データが更新されるよりも低い頻度でデータを定期的にチェックするように Looker に指示します。
    • たとえば、時系列の間隔は 1 時間ごと(データは 1 時間ごとに集計される)ですが、アラートは 1 日に 1 回の頻度に設定されます。
  2. アラート条件を指定すると、データが更新されるよりも高い頻度で更新データを確認すように Looker に指示します。
    • たとえば、時系列の間隔は 1 日ごと(データは 1 日ごとに集計される)ですが、アラートは 1 時間に 1 回の頻度に設定されます。
どちらのケースも、時系列行間の最短間隔(時系列間隔)とアラートクエリの実行頻度(頻度)の関係によって決まります。頻度は、スケジュールされたアラートクエリ間の時間で、アラート作成者によって設定されます。

時系列の間隔と頻度は同じであるのが理想的です。ただし、例外もあります。ETL ジョブが毎晩 1時間ごとにデータを読み込むように構成されている場合や、なんらかの理由でクエリが失敗した場合は、間隔が同期されていないときにアラートクエリがどのように機能するかを理解することが重要です。

アラート チェック

アラートクエリは、時系列データの最新の行を調べて、次のいずれかに該当するかどうかを判断します。

  • 現在の時系列値が、前のアラート チェックでの最新の時系列値よりも新しい場合
  • 現在の時系列値が、以前のアラート チェックと同じ時系列値を持つ場合でも、時系列内の最新の時系列値である場合

アラートクエリを初めて実行すると、Looker は結果セット全体を評価しなくなります。代わりに、Looker はそれらの結果を履歴データと見なし、アラートが作成されて最初のアラートクエリを実行した後に発生した変更のみを探します。

ケース 1: 時系列の間隔が頻度よりも短い

この例では、ユーザーが 1 時間ごとの売り上げが目標を上回っているかどうかを毎日確認したいと考えています。

時系列の間隔 = 毎時の頻度 = 1 日に 1 回

このアプローチでは、1 時間を超える頻度で 1 時間ごとにデータをチェックします。アラートは、前のアラート間隔でチェックされなかった新しい時系列行をすべてチェックします。1 時間ごとのデータがあり、1 日に 1 回アラート チェックを行う場合、アラートは毎日 24 行をチェックします。指定したアラート条件に照らして各行がチェックされ、条件を満たす行があればメールが送信されます。

2019 年 5 月 25 日午前 9 時に実行

時系列の値 価値の測定  
2019 年 5 月 25 日午前 8 時 200 < アラート チェック
2019 年 5 月 25 日午前 9 時 250 < アラート チェック

2019 年 5 月 25 日午前 11 時 00 分に実行

時系列の値 価値の測定  
2019 年 5 月 25 日午前 8 時 200  
2019 年 5 月 25 日午前 9 時 250 < 前のアラート
2019 年 5 月 25 日午前 10 時 300 < アラート チェック
2019 年 5 月 25 日午前 11 時 300 < アラート チェック

2019 年 5 月 25 日午後 12 時に実行(新しいデータなし)

時系列の値 価値の測定  
2019 年 5 月 25 日午前 8 時 200  
2019 年 5 月 25 日午前 9 時 250  
2019 年 5 月 25 日午前 10 時 300 < 前のアラート
2019 年 5 月 25 日午前 11 時 300 < アラート チェック

ケース 2: 時系列の間隔が頻度よりも長い

この例では、ユーザーが今日の累積売り上げが目標を上回っているかどうかを 1 時間ごとに確認したいと考えています。

時系列の間隔 = 1 日 1 回の頻度 = 毎時

このアプローチでは、1 日を通して日付ごとに集計されたデータをチェックします。1 日あたりの売上合計が 200 以上になる場合に通知するようにアラートを設定したとします。販売合計額が 1 日を通して累積され、各アラート チェック中に増加するため、Looker は最新の時系列値を前回アラートをトリガーした値に対して継続的にチェックします。

2019 年 5 月 25 日午前 9 時に実行

時系列の値 価値の測定  
5/24/19 200 < 前のアラート
5/25/19 50 < アラート チェック(通知なし)

2019 年 5 月 25 日午前 10 時 00 分に実行

時系列の値 価値の測定  
5/24/19 200 < 前のアラート
5/25/19 100 < アラート チェック(通知なし)

2019 年 5 月 25 日午前 11 時 00 分に実行

時系列の値 価値の測定  
5/24/19 200 < 前のアラート
5/25/19 150 < アラート チェック(通知なし)