すべてのプロダクト
Search
ドキュメントセンター

DataWorks:品質監視

最終更新日:Jun 23, 2026

DataWorks の品質監視ノードを使用すると、ルールを設定してデータソース内のテーブルのデータ品質を監視し、ダーティデータを検出できます。また、スケジューリングポリシーをカスタマイズして、データ検証タスクを定期的に実行することもできます。このトピックでは、品質監視ノードを使用してデータ品質を監視する方法について説明します。

背景情報

DataWorks の Data Quality 機能は、ソースデータの変更を検出し、ETL (Extract, Transformation, and Load) プロセス中に生成されたダーティデータを特定するのに役立ちます。問題のあるタスクを自動的にインターセプトして、ダーティデータが下流に伝播するのを防ぎます。これにより、予期しないデータがビジネス運用を妨げたり、ビジネス上の意思決定に影響を与えたりすることを防ぎます。また、タスクの再実行を防ぐことで、トラブルシューティング時間を大幅に短縮し、リソースを節約します。詳細については、「Data Quality」をご参照ください。

制限事項

  • サポートされているテーブルタイプ:MaxCompute、E-MapReduce、Hologres、CDH Hive、AnalyticDB for PostgreSQL、AnalyticDB for MySQL、および StarRocks。

  • サポートされているテーブルの範囲:

    • 監視できるのは、品質監視ノードが配置されているワークスペースにバインドされているデータソース内のテーブルのみです。

    • 各ノードは 1 つのテーブルしか監視できませんが、複数の監視ルールを設定できます。監視範囲はテーブルタイプによって異なります:

      • 非パーティション化テーブルの場合、デフォルトでテーブル全体が監視されます。

      • パーティションテーブルの場合、パーティションフィルター式を使用して監視するパーティションを指定する必要があります。

      説明

      複数のテーブルを監視するには、複数のノードを作成してください。

  • 操作上の制限:

    • Data Studio で作成された品質監視ルールは、Data Studio 内でのみ実行、変更、デプロイが可能です。これらのルールは Data Quality モジュールで表示できますが、そこからスケジュールに基づいてトリガーしたり、管理したりすることはできません。

    • 品質監視ノードの監視ルールを変更してノードをデプロイすると、以前に生成された監視ルールは置き換えられます。

前提条件

  • 計算エンジンがワークスペースにバインドされており、監視したいテーブルがその中に作成されていること。

    データ品質監視タスクを実行する前に、監視ノードがチェックするテーブルを作成する必要があります。詳細については、「計算エンジンのバインド」および「ノードの開発」をご参照ください。

  • リソースグループが作成されていること。

    品質監視ノードは、サーバーレスリソースグループでのみ実行できます。詳細については、「リソースグループの管理」をご参照ください。

  • (オプション、RAM ユーザー向け) タスク開発用の RAM ユーザーが対応するワークスペースに追加され、Development または スペース管理者 のロールが付与されていること。ワークスペース管理者ロールは広範な権限を持つため、慎重に付与する必要があります。メンバーの追加と権限付与の詳細については、「ワークスペースへのメンバーの追加」をご参照ください。

ステップ 1:品質監視ノードの作成

  1. DataWorks コンソールの [ワークスペース] ページに移動します。上部のナビゲーションバーで、目的のリージョンを選択します。目的のワークスペースを見つけ、[操作] 列で [ショートカット] > [Data Studio] を選択します。

  2. 左側のナビゲーションウィンドウで、image をクリックしてデータ開発に移動します。Project Directory の横にある image をクリックし、New Node > Data Quality > Quality Monitor を選択します。画面の指示に従って、ノードのパスと名前を入力して作成します。

ステップ 2:品質監視ルールの設定

1. 監視対象テーブルの選択

品質監視ノードのエディターページで、Add Table をクリックします。Add Table ダイアログボックスで、監視するテーブルを選択します。More フィルターを使用すると、テーブルをより速く見つけることができます。

説明

テーブルがリストにない場合は、データマップの [マイデータ] に移動してください。

2. 監視データ範囲の設定

  • 非パーティション化テーブル:デフォルトでテーブル全体が監視されます。このステップはスキップできます。

  • パーティションテーブル:監視するパーティションデータを選択する必要があります。スケジューリングパラメーターを使用できます。Preview をクリックして、パーティションフィルター式が正しく解決されることを確認します。

3. データ品質監視ルールの設定

新しいルールを作成するか、既存のルールをインポートできます。設定されたルールはデフォルトで有効になります。

説明
  • 品質監視ノードでルールを作成する際、[DataWorks Copilot ルール推奨] 機能を使用して、テーブル情報に基づいて品質ルールをインテリジェントに生成できます。その後、必要に応じて提案を受け入れるか拒否することができます。

  • DataWorks Copilot は一部のリージョンでパブリックプレビュー中です。ご利用のワークスペースがあるリージョンで利用できない場合は、このトピックで説明されているように、手動でルールを作成またはインポートできます。

  • 新規ルールの作成

    Create Rule をクリックして、テンプレートまたはカスタム SQL に基づいて品質監視ルールを作成します。以下のセクションでは、これらの方法について説明します。

    組み込みテンプレート

    以下の手順に従って、ルールテンプレートから品質監視ルールを迅速に作成できます。

    説明

    左側の組み込みテンプレートリストで必要なルールテンプレートを見つけ、[+ 使用] をクリックして作成することもできます。

    ダイアログボックスの右側にある [+ 組み込みテンプレートルール] タブをクリックします。左側の [組み込みテンプレート] パネルで、[テーブル行数] などのテンプレートカテゴリを展開し、対象のテンプレートを見つけて [+ 使用] をクリックします。右側のフォームでルールパラメーターを設定し、[OK] をクリックします。

    システムルールテンプレートのパラメーター

    パラメーター

    Description

    Rule Name

    ルールのカスタム名を入力します。

    Template

    テーブルに対して実行するルールチェックのタイプを定義します。

    Data Quality は、幅広い組み込みのテーブルレベルおよびフィールドレベルのルールテンプレートを提供します。詳細については、「組み込みルールテンプレートの表示」をご参照ください。

    説明

    平均値、合計値、最小値、最大値は数値フィールドにのみ適用されます。

    Rule Scope

    ルールが適用される範囲。テーブルレベルのルールの場合、範囲はデフォルトで現在のテーブルです。フィールドレベルのルールの場合、特定のフィールドを選択する必要があります。

    Comparison Method

    ルールがテーブルデータを検証する方法を指定します。

    • Manual Settings:比較方法としきい値を手動で設定できます。

      利用可能な比較方法はルールテンプレートによって異なります。UI に表示されるオプションが最終的なものです。

      • Numeric Type の結果の比較をサポートし、通常は固定値 (期待値) と比較します。比較方法には、Greater ThanGreater Than or Equal ToEqual ToUnequal ToLess ThanLess Than or Equal To が含まれます。正常なデータ範囲 (正常しきい値) と異常なデータ範囲 (重大しきい値) をカスタマイズできます。

      • Fluctuation の結果の比較をサポートし、これは通常、範囲比較です。比較方法には、Absolute ValueRaiseDrop が含まれます。正常なデータ範囲 (正常しきい値) をカスタマイズできます。また、逸脱の度合いに基づいて、アノマリーのあるデータの警告範囲 (警告しきい値) と、期待を満たさないデータの重大範囲 (重大しきい値) を定義することもできます。

    • Intelligent Dynamic Threshold:システムはインテリジェントなアルゴリズムを使用して、合理的なしきい値を自動的に決定するため、手動で設定する必要はありません。システムが異常なデータを検出すると、即座にアラートをトリガーするか、関連タスクをブロックします。動的しきい値は、強制ルールと非強制ルールもサポートします。

      説明

      カスタム SQLカスタム範囲、および動的しきい値の品質ルールのみが、インテリジェント動的しきい値の比較方法をサポートします。

    Monitoring Threshold

    • Comparison MethodManual Settings に設定した場合、Normal thresholdError Threshold を指定できます。

      • Normal threshold:データが正常と見なされるためにチェック結果が満たすべき条件。

      • Error Threshold:チェック結果がこの条件を満たした場合、重大な異常データを示し、重大アラートをトリガーする条件。

    • ルールが Fluctuation チェックを実行する場合、Warning Threshold も指定する必要があります。

      • Warning Threshold:チェック結果がこの条件を満たした場合、ビジネス運用に影響しない軽微なアノマリーを示す条件。

    Retain problem data

    この機能が有効で、ルールチェックが失敗した場合、システムは結果として生じた問題データを保存するためのテーブルを自動的に作成します。

    重要
    • MaxCompute および Hologres テーブルに対して問題データの保持機能を設定できます。

    • 一部のデータ品質ルールのみが問題データの保持機能をサポートしています。

    • この機能はルールのステータスの影響を受けます。ルールが Deactivate の場合、システムは問題データを保持しません。

    Status

    ルールのステータス。Enable または Deactivate にできます。これは、ルールが本番環境で実行されるかどうかを制御します。

    重要

    ステータスを Deactivate に設定すると、ルールはテスト実行や関連するスケジューリングタスクによってトリガーされません。

    Degree of importance

    ルールの重大度。

    • 強制ルール:重要なルール。デフォルトでは、重大なアノマリーは関連するスケジューリングタスクをブロックします。

    • 非強制ルール:通常のルール。デフォルトでは、重大なアノマリーは関連するスケジューリングタスクをブロックしません。

    Configuration Source

    ルール設定のソース。この場合、値は Data Quality です。

    Description

    ルールのオプションの説明。

    カスタムテンプレート

    この方法を使用する前に、まず Data Quality > Quality Assets > Rule Template Library でカスタムルールテンプレートを作成する必要があります。その後、そのテンプレートから品質監視ルールを作成できます。詳細については、「カスタムルールテンプレートの作成と管理」をご参照ください。

    以下の手順は、カスタムテンプレートからデータ品質ルールを作成する方法を示しています。

    説明

    左側のカスタムテンプレートリストで必要なルールテンプレートを見つけ、[+ 使用] をクリックして作成することもできます。

    [ルールの作成] ダイアログボックスで、[+ カスタムテンプレートルール] タブをクリックします。[ルール名][ルールテンプレート][品質ディメンション][FLAG パラメーター][SQL][比較方法]、および [監視しきい値] (正常しきい値と重大しきい値を含む) を設定し、[OK] をクリックします。

    カスタムルールテンプレートのパラメーター

    このセクションでは、カスタムルールテンプレートに固有のパラメーターのみを説明します。その他のパラメーターについては、システムルールテンプレートのパラメーターをご参照ください。

    パラメーター

    説明

    FLAG パラメーター

    データ品質チェック SQL が実行される前に実行する SET コマンドを定義します。

    SQL

    SQL 検証ロジック。クエリは単一の数値を返す必要があります。

    カスタム SQL では、角括弧を使用してテーブルのパーティションフィルター式に一致させます。例:

    SELECT count(*) FROM ${tableName} WHERE ds=$[yyyymmdd];
    説明
    • ${tableName} 変数は、監視対象テーブルの名前に動的に置き換えられます。

    • パーティションフィルター式の設定方法の詳細については、「付録 2:組み込みパーティションフィルター式」をご参照ください。

    • テーブルの 品質モニター を作成し、この方法でルールを設定した場合、モニターに指定された Data Scope は無視されます。この SQL の WHERE 句によって、どのパーティションがチェックされるかが決まります。

    カスタム SQL

    この方法では、テーブルのカスタムデータ品質検証ロジックを定義できます。

    上部の [+ カスタム SQL] タブをクリックします。右側のフォームで、[ルール名][ルールテンプレート] (カスタム SQL を選択)、[品質ディメンション][FLAG パラメーター][SQL][比較方法] ([手動設定] または [インテリジェント動的しきい値] を選択)、および [監視しきい値] を設定し、[OK] をクリックします。

    カスタム SQL パラメーター

    このセクションでは、カスタム SQL に固有のパラメーターのみを説明します。その他のパラメーターについては、システムルールテンプレートのパラメーターをご参照ください。

    パラメーター

    説明

    FLAG パラメーター

    データ品質チェック SQL が実行される前に実行する SET コマンドを定義します。

    SQL

    SQL 検証ロジック。クエリは単一の数値を返す必要があります。

    カスタム SQL では、角括弧を使用してテーブルのパーティションフィルター式に一致させます。例:

    SELECT count(*) FROM <table_name> WHERE ds=$[yyyymmdd];
    説明
    • 設定では、<table_name> を実際のテーブル名に置き換える必要があります。この SQL ステートメントによって、どのテーブルが監視されるかが決まります。

    • パーティションフィルター式の設定方法の詳細については、「付録 2:組み込みパーティションフィルター式」をご参照ください。

    • テーブルの 品質モニター を作成し、この方法でルールを設定した場合、モニターに指定された Data Scope は無視されます。この SQL の WHERE 句によって、どのパーティションがチェックされるかが決まります。

  • 既存ルールのインポート

    対象テーブルの監視ルールが Data Quality モジュールに既に存在する場合、それらをインポートしてルールを迅速にクローンできます。ルールが存在しない場合は、まず Data Quality に移動して作成してください。詳細については、「ルールの設定:テーブル別 (単一テーブル)」をご参照ください。

    説明

    この方法は、複数のルールの一括インポートをサポートし、テーブルフィールドレベルでの監視ルールの設定を可能にします。

    Import Rule をクリックします。ルール ID または名前、ルールテンプレート、または関連する範囲 (テーブル全体または特定のフィールド) でインポートするルールを検索して選択できます。

    ルールを選択した後、[OK] をクリックしてインポートを完了します。

説明

品質監視ノードがデプロイされると、それに含まれるルールは Data Quality モジュールで表示できますが、変更や削除などの管理操作はそこでは許可されません。

4. ランタイムリソースの設定

品質ルールチェックのランタイムリソースを選択します。この選択により、品質監視タスクが実行されるデータソースが決まります。デフォルトでは、これは監視対象テーブルが配置されているデータソースです。

説明

別のデータソースを選択した場合は、そのデータソースがテーブルへのアクセス権限を持っていることを確認してください。

ステップ 3:処理ポリシーの設定

ノードエディターページの Handling Policy セクションで、品質監視ルールが検出した例外に対する処理ポリシーと通知サブスクリプションを設定できます。

例外カテゴリ

例外カテゴリ

説明

強制ルール:チェック失敗

  • 強制/非強制:ルールの重要度を示します。

  • Error:チェック結果が重大しきい値に達しました。これは通常、下流の操作に影響を与える可能性のある深刻な問題を示します。

  • Warning:チェック結果が警告しきい値に達しました。これは通常、下流の操作に影響しない可能性のある軽微な問題を示します。

  • Check Failed:品質チェックの実行に失敗しました。例えば、監視対象のパーティションが生成されなかったり、チェック用の SQL クエリが失敗した場合に発生します。

強制ルール:重大な例外

強制ルール:警告の例外

非強制ルール:チェック失敗

非強制ルール:重大な例外

非強制ルール:警告の例外

例外処理ポリシー

ルールチェックによって生成された例外に対する処理ポリシーを設定できます:

  • 無視しない:特定の例外カテゴリが検出された場合 (例えば、強制ルールが重大な例外をトリガーした場合)、システムが現在のノードを停止し、そのステータスを「失敗」に設定するように構成できます。

    説明
    • 現在のノードが失敗すると、下流のノードは実行されません。これにより、本番パイプラインがブロックされ、問題のあるデータの拡散が防がれます。

    • チェックする例外カテゴリを複数追加できます。

    • このポリシーは通常、例外が大きな影響を与え、下流のタスクをブロックする必要がある場合に使用されます。

  • 無視:例外を無視し、下流のノードの実行を続行します。

例外通知方法

例外の通知を受け取る方法 (例えば、メール) を設定できます。例外が発生すると、プラットフォームは指定された方法で通知を送信し、迅速に例外を処理できるようにします。

説明

プラットフォームは複数の通知方法をサポートしており、UI によって異なる場合があります。以下にご注意ください:

  • メール、メールと SMS、および電話による通知は、現在のアカウント下のユーザーにのみ送信できます。受信者のメールアドレスと電話番号が正しく設定されていることを確認してください。詳細については、「アラート連絡先の表示と設定」をご参照ください。

  • その他の方法については、通知を受信するための Webhook URL を入力する必要があります。この URL の取得方法については、「Webhook URL の取得」をご参照ください。

ステップ 4:スケジューリングの設定

ノードタスクを定期的に実行するには、ノードエディターページの右側にある Scheduling Settings をクリックし、ビジネス要件に基づいてスケジューリングプロパティを設定します。詳細については、「ノードのスケジューリング設定」をご参照ください。

ステップ 5:タスクのデバッグ

タスクが期待どおりに実行されるかを確認するために、必要に応じて以下のデバッグ操作を実行します。

  1. (オプション) ランタイムリソースグループを選択し、カスタムパラメーターに値を割り当てます。

    • 品質監視ノードの右側で、Run Configuration をクリックし、デバッグ実行に使用する Resource Group for Scheduling を設定します。

    • タスクがスケジューリングパラメーターを使用している場合、デバッグのために Script Parameters セクションで変数に値を割り当てることができます。パラメーターの割り当てロジックの詳細については、「タスクのデバッグ」をご参照ください。

  2. タスクを保存して実行します。

    上部のツールバーにある image アイコンをクリックしてタスクを保存します。image アイコンをクリックしてタスクを実行します。

    タスクが完了したら、ノードエディターページの下部で実行結果を表示できます。実行が失敗した場合は、エラーメッセージに基づいて問題をトラブルシューティングします。

ステップ 6:タスクのデプロイ

ノードタスクが設定された後、それをデプロイする必要があります。デプロイ後、ノードはスケジューリング設定に従って定期的に実行されます。

説明

品質監視ノードをデプロイすると、その中に設定されている品質ルールもデプロイされます。

  1. 上部のツールバーで、image アイコンをクリックしてノードを保存します。

  2. 上部のツールバーで、image アイコンをクリックしてノードをデプロイします。

ノードのデプロイ方法の詳細については、「ノードとワークフローのデプロイ」をご参照ください。

次のステップ

  • タスク O&M:タスクがデプロイされると、スケジューリング設定に基づいて定期的に実行されます。ノードエディターページの右上隅にある O&M をクリックしてオペレーションセンターに移動し、ノードの実行ステータスやトリガーされたルールの詳細など、タスクのスケジューリングと実行の詳細を表示できます。詳細については、「定期タスクの管理」をご参照ください。

  • Data Quality:品質監視ルールがデプロイされた後、Data Quality モジュールに移動してルールの詳細を表示できます。ただし、そこではルールの変更や削除などの管理操作は実行できません。詳細については、「Data Quality」をご参照ください。