メインコンテンツまでスキップ

異常検知アラート

このページでは、異常検知に関するアラートの設定方法と表示方法について説明します。異常検知の概要については、 「異常検知」を参照してください。

アラートは、古いテーブルや行数の予期せぬ減少など、異常検出によってデータ品質の問題が検出された場合に通知します。アラートは以下の方法で操作できます。

  • データ品質モニタリング UI (ベータ) : ページを離れることなく、データ品質モニタリング UI から直接アラートを作成および表示します。 「データ品質モニタリング UI でのアラートの作成」を参照してください。
  • Databricks SQL: 異常検知出力システムテーブルをクエリしてアラートを設定します。このアプローチは、高度なフィルタリングとカスタム通知テンプレートをサポートします。Databricks SQL でアラートを作成する方法については、こちらをご覧ください。

データ品質モニタリング UI でアラートを表示する

備考

ベータ版

この機能はベータ版であり、デフォルトではすべてのユーザーに表示されます。ワークスペース管理者は、 プレビュー ページからこの機能を有効にする必要はありません。

データ品質モニタリング UI の右上隅にある アラート ボタンを使用すると、ページを離れることなく、異常検出アラートの概要が表示されます。

データ品質モニタリング UI からアラートをすばやく表示します。

アラートを表示するには:

  1. カタログエクスプローラーでスキーマに移動します。このスキーマに対してデータ品質モニタリングを有効にする必要があります

  2. 「詳細」 タブをクリックしてください。 [データ品質モニタリング] の横にある [結果の表示] をクリックします。 これにより、データ品質モニタリング UI が開きます。

  3. ページ右上隅にある 「アラート(ベータ版)」 をクリックしてください。これにより、設定済みのアラートの概要を表示するパネルが開きます。また、クリックすることもできます追加またはプラスアイコン アラートを すぐに新しいアラートを作成します

  4. リスト内のいずれかのアラートをクリックすると、詳細ビューが開きます。

    アラートの詳細を表示します。

アラートの作成

アラートは、Data Quality モニタリング UI またはDatabricks SQLを使用して作成できます。

データ品質モニタリング UI でアラートを作成する

備考

ベータ版

この機能はベータ版であり、デフォルトではすべてのユーザーに表示されます。ワークスペース管理者は、 プレビュー ページからこの機能を有効にする必要はありません。

重要

もちろん、アカウント管理者だけがシステム テーブルにアクセスできますsystem.data_quality_monitoring.table_results 。 他のユーザーがアラートを設定する必要がある場合は、適切なアクセス権を付与してください。

データ品質モニタリング UI でアラートを作成するには、次のステップに従います。

  1. カタログエクスプローラーで、アラートを作成したいスキーマに移動します。このスキーマに対してデータ品質モニタリングを有効にする必要があります

  2. [詳細 ] タブをクリックし、 [データ品質モニタリング] の横にある [結果の表示] をクリックします。 これにより、選択した特定のカタログとスキーマのデータ品質モニタリング UI が開きます。

    カタログ内のすべてのスキーマに対するアラートを作成するには、スキーマのドロップダウンメニューから 「すべてのスキーマ」 を選択します。

  3. 初めてアラートを作成する場合は、右上隅にある 「アラートを作成(ベータ版)」 をクリックしてください。

    データ品質モニタリング UI から最初のアラートを作成します。

    アラートがすでに存在する場合、このボタンは アラート (ベータ) として表示されます。 ボタンをクリックして、設定済みのアラートの概要を表示するパネルを開きます。クリック追加またはプラスアイコン新しいアラートを作成する アラート

    データ品質モニタリング UI から別のアラートを作成します。

  4. アラートを設定してください。アラートには、SQL クエリがあらかじめ入力されています。鉛筆のアイコン。右上隅にある 編集 ボタン。さらに、 [スケジュール] ボタンをクリックしてアラートを評価するための自動スケジュールを設定することも、 [今すぐ実行] をクリックしてアラートを今すぐ評価することもできます。

Databricks SQLでアラートを作成する

重要

もちろん、アカウント管理者だけがシステム テーブルにアクセスできますsystem.data_quality_monitoring.table_results 。 他のユーザーがアラートを設定する必要がある場合は、適切なアクセス権を付与してください。

Databricks SQLを使用して異常検出出力結果テーブルにアラートを作成するには、次のステップに従います。

  1. サイドバーの 「アラート」 をクリックし、 「アラートの作成」を クリックします。

  2. クエリ エディターに次のテキストを入力します。

    SQL
    WITH rounded_data AS (
    SELECT
    DATE_TRUNC('HOUR', event_time) AS evaluated_at,
    CONCAT(catalog_name, '.', schema_name, '.', table_name) AS full_table_name,
    status,
    MAX(downstream_impact.num_queries_on_affected_tables) AS impacted_queries,
    MAX(freshness.commit_freshness.predicted_value) AS commit_expected,
    MAX(freshness.commit_freshness.last_value) AS commit_actual,
    MAX(completeness.daily_row_count.min_predicted_value) AS completeness_expected,
    MAX(completeness.daily_row_count.last_value) AS completeness_actual
    FROM system.data_quality_monitoring.table_results
    GROUP BY ALL
    )
    SELECT
    evaluated_at,
    full_table_name,
    status,
    commit_expected,
    commit_actual,
    completeness_expected,
    completeness_actual,
    impacted_queries
    FROM rounded_data
    WHERE
    evaluated_at >= current_timestamp() - INTERVAL 6 HOURS
    -- enter the minimum number of table violations before the alert is triggered
    AND impacted_queries > :min_tables_affected
    AND status = 'Unhealthy';
注記

従来のベータ ジョブの場合、既存のアラート構成でsystem.data_quality_monitoring.table_results <catalog>.<schema>._quality_monitoring_summaryに置き換える必要があります。

  1. クエリを実行します。

  2. 画面右側のアラート エディターを使用して、アラート条件を設定します。詳細については、 「アラートの作成」を参照してください。

    トリガー条件を設定する

  3. (オプション) E メール テンプレートをカスタマイズするには、画面の右側にある [詳細設定] タブを開き、[テンプレートの カスタマイズ] をオンにしてテンプレート エディターを開きます。

    カスタム電子メール テンプレートの例を以下に示します。 カスタム テンプレートの詳細については、 「詳細設定」を参照してください。

    Html
    <h4>The following tables are failing quality checks in the last hour</h4>

    <table>
    <tr>
    <td>
    <table>
    <tr>
    <th>Table</th>
    <th>Expected Staleness</th>
    <th>Actual Staleness</th>
    <th>Expected Row Volume</th>
    <th>Actual Row Volume</th>
    <th>Impact (queries)</th>
    </tr>

    {<a id='QUERY_RESULT_ROWS'/>}
    <tr>
    <td>{{full_table_name}}</td>
    <td>{{commit_expected}}</td>
    <td>{{commit_actual}}</td>
    <td>{{completeness_expected}}</td>
    <td>{{completeness_actual}}</td>
    <td>{{impacted_queries}}</td>
    </tr>

    {{/QUERY_RESULT_ROWS}}
    </table>
    </td>
    </tr>
    </table>

これで、品質問題の下流への影響に基づいてトリガーされるアラートが作成され、アラートをトリガーしたテーブルをデバッグできるようになります。