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

Dataphin:Dataphin テーブル品質ルールの作成

最終更新日:Jun 06, 2026

Dataphin では、データテーブルを検証し品質モニタリングを簡素化するための品質ルールを作成できます。このトピックでは、これらのルールの設定方法について説明します。

前提条件

品質ルールを設定するには、まず監視対象を追加します。詳細については、「監視対象の追加」、「」をご参照ください。

権限

  • スーパー管理者、品質管理者、「[品質ルール] - [管理]」権限を持つカスタムグローバルロールのユーザー、およびテーブルを含むプロジェクトで「[プロジェクト品質管理] - [品質ルール管理]」権限を持つカスタムプロジェクトロールのユーザーは、品質ルールのスケジューリング、アラート、例外アーカイブテーブル、スコアリングの重みを設定できます。

  • 品質責任者は、自分が管理するモニタリングオブジェクトの品質ルールのスケジューリング、アラート、例外アーカイブテーブル、スコアリングの重みを設定できます。

  • 品質責任者と標準ユーザーは、Dataphin テーブルの読み取り権限も持つ必要があります。この権限を申請するには、「テーブルの権限の申請、更新、返却」をご参照ください。

  • 利用可能な操作はオブジェクトによって異なります。詳細については、「品質ルールの操作権限」をご参照ください。

品質ルール

品質ルールは、[カスタム構成]と[データ標準を参照したモニタリング]の 2 つの方法で設定できます。後者を使用するには、データ標準モジュールが必要です。

  • [カスタム構成]では、組み込みまたはカスタムの品質ルールテンプレートからルールをすばやく作成できます。また、柔軟なモニタリング用にカスタム SQL もサポートしています。

  • [データ標準を参照したモニタリング]では、現在のアセットオブジェクトにマッピングされているデータ標準の品質ルールを使用します。これにより、標準制約をより効果的に適用できます。

検証ルール

データ品質ルールがデータテーブルを評価する際に、 弱いモニタリングルール がトリガーされると、異常へ迅速に対処できるようアラートを送信します。 強いモニタリングルール がトリガーされると、ダーティデータがダウンストリームに流れるのを防ぐためにタスクを中断し、アラートも送信します。

試行実行と実行の違い

試行実行と実行の違いは、実行方法と結果の表示場所にあります。試行実行 は、品質ルールが期待どおりに機能するかを検証するためのシミュレートされた実行です。その結果は品質レポートに表示されません。実行 は、特定の期間中に品質ルールを評価し、その結果を品質レポートに追加します。

品質ルールの設定

  1. Dataphin ホームページで、上部のナビゲーションバーの [ガバナンス] > [データ品質] をクリックします。

  2. 左側のナビゲーションペインで、[品質ルール] をクリックします。[Dataphin テーブル] ページで、ターゲットオブジェクトの名前をクリックして [品質ルールの詳細] ページを開き、品質ルールを設定します。

    • [カスタム構成]

      1. データテーブルにマウスカーソルを合わせ、[クオリティルールの作成] をポイントして [カスタム設定] を選択するか、[クオリティルールの作成] をクリックして [クオリティルールの作成] ダイアログボックスを開きます。

      2. [品質ルールの作成] ダイアログボックスで、次のパラメーターを設定します。

        パラメーター

        説明

        基本情報

        [ルール名]

        品質ルールに付ける任意の名前です。最大 256 文字まで使用できます。

        [ルール強度]

        [弱ルール] または [強ルール] を選択できます。

        • [弱ルール]: [弱ルール] を選択すると、品質ルールのチェックが失敗した場合、アラートは生成されますが、下流のタスクノードはブロックされません。

        • [強ルール]: [強ルール] を選択した場合、品質ルールチェックが失敗するとアラートがトリガーされます。 下流タスクが存在する場合 (コードチェックのスケジューリングやタスク起動のスケジューリングなど)、汚染データの拡散を防ぐために、それらのタスクもブロックされます。 下流タスクが存在しない場合 (定期的な品質スケジューリングなど) は、アラートのみがトリガーされます。

        [説明]

        品質ルールに関する任意の説明です。最大 128 文字まで使用できます。

        [設定方式]

        • [テンプレートから作成]:汎用的なシステムテンプレートまたはカスタムのビジネステンプレートを使用して、品質ルールを迅速に作成します。

          • [システムテンプレート]:汎用ルールの作成に適しています。テンプレートの組み込みパラメーターを設定できます。

          • [カスタムテンプレート]:通常、ビジネスロジックを含むルールの作成に使用されます。テンプレートには事前に設定されたパラメーターがあります。

        • [カスタム SQL]:SQL を使用して品質モニタリングルールを柔軟に定義します。この方式は複雑なシナリオに適しています。

        [ルールテンプレート]

        ドロップダウンリストからルールテンプレートを選択します。選択肢には、[完全性]、[一意性]、[適時性]、[有効性]、[整合性]、[安定性]、[カスタム SQL] があります。

        • [完全性]: [フィールド NULL 値チェック][フィールド空文字列チェック] が含まれます。

        • [一意性]:[フィールド一意性チェック][フィールドグループ数チェック]、および[フィールド重複値カウントチェック]が含まれます。

        • [適時性]: [時間関数の比較][単一テーブルの時間フィールドの比較]、および[2 つのテーブルの時間フィールドの比較]が含まれます。

        • [妥当性]には、[フィールド形式チェック][フィールド長チェック][フィールド値範囲チェック][コードテーブル参照比較]、および[データ標準コードテーブル参照比較] (データ標準モジュールが必要です) が含まれます。

        • [一貫性]: [単一テーブルのフィールド値の一貫性比較][単一テーブルのフィールド統計値の一貫性比較][単一フィールドのビジネスロジックの一貫性比較][2 つのテーブルのフィールド値の一貫性比較][2 つのテーブルのフィールド統計値の一貫性比較][2 つのテーブルのビジネスロジックの一貫性比較]、および [クロスソースの 2 つのテーブルのフィールド統計値の一貫性比較] が含まれます。

        • [安定性]:[テーブル安定性チェック][テーブル変動性チェック][フィールド安定性チェック][フィールド変動性チェック] が含まれます。

        • [カスタム SQL]:[カスタム統計メトリックチェック][カスタムデータ詳細チェック] が含まれます。

        詳細については、「Template type description」をご参照ください。

        [ルールタイプ]

        ルールタイプはテンプレートに依存しており、その最も基本的な属性です。説明やフィルタリングに使用されます。

        [モニタリング粒度]

        設定方式が [Custom SQL] の場合、モニタリング粒度を設定できます。[Full Table] または特定の [Field] をモニタリングできます。

        [テンプレート設定]

        [テンプレート情報]

        品質ルールテンプレートを選択すると、その設定情報が表示されます。この情報を変更するには、「Quality rule template」をご参照ください。

        ルール設定

        [ルール設定]

        ルール設定は、選択したルールテンプレートによって異なります。詳細については、「Data table parameter configuration」をご参照ください。

        特別な設定:

        • [Filter Verified Table Data]:デフォルトでは無効です。有効にすると、パーティションフィルターや標準データフィルターなど、検証対象テーブルのフィルター条件を設定できます。フィルター条件は検証 SQL に直接追加されます。検証対象テーブルでパーティションフィルターが必要な場合は、スケジュール設定でパーティション式を設定することを推奨します。設定後、検証パーティションは品質レポートを表示するための最も細かい粒度になります。

        • ルールテンプレートが Consistency/Two-table Field Statistical Value Consistency Comparison または Consistency/Cross-source Two-table Field Statistical Value Comparison の場合、[フィルター比較テーブルデータ] を有効にできます。有効にした場合、パーティションや標準データフィルターなど、比較テーブルのフィルター条件を設定できます。これらの条件は、検証 SQL に直接追加されます。

        検証設定

        [ルール検証]

        • システムがデータ品質ルールを検証した後、結果を異常検出設定と比較します。条件が満たされた場合、検証は失敗し、アラートの発行やその他の後続プロセスが起動します。

        • 異常検出で利用可能なメトリクスは、テンプレートとその設定によって異なります。検出は複数の AND/OR 条件をサポートしています。3 つ未満の条件を使用することを推奨します。

        詳細については、「Verification configuration description」をご参照ください。

        [アーカイブ設定]

        [異常アーカイブ]

        この機能は、デフォルトで[オフ]になっています。[オン]にすると、異常データをファイルまたはテーブルにアーカイブできます。品質チェックの後、アーカイブされたデータをダウンロードして分析できます。

        • [アーカイブモード][異常フィールドのみをアーカイブ][レコード全体をアーカイブ] をサポートします。

          • [Archive Anomaly Fields Only]:このモードは、監視対象のフィールドのみを重複排除してアーカイブします。これは、単一のフィールドで異常データを特定できる場合に適しています。

          • [Archive Full Records]:異常データを含むレコード全体をアーカイブします。これは、異常データを特定するために完全なレコードが必要な場合に適しています。

            説明

            レコード全体をアーカイブすると、アーカイブされるデータ量が大幅に増加します。ほとんどの場合、[Archive Anomaly Fields Only] モードを使用することを推奨します。

        • [アーカイブ場所][デフォルトのファイルサーバー][異常データアーカイブテーブル] をサポートしています。 異常アーカイブテーブルが存在しない場合は、[異常アーカイブテーブルの管理] をクリックして作成します。 詳細については、「異常アーカイブテーブルの追加」をご参照ください。

          • [Default File Server]:Dataphin のデプロイ時に設定されたシステムファイルサーバーを指します。[Verification Records] > [Verification Details] ページから異常データをダウンロードするか、デフォルトのファイルサーバーに直接アクセスしてデータを取得できます。デフォルトのファイルサーバーを使用する場合、1 回のチェックで最大 100 件の異常データがアーカイブされるため、データ量が少ないシナリオに適しています。

          • [Anomaly Data Archive Table]:より多くの異常データを保存したり、異なるチェックのデータを統合して後で分析したりする場合は、アーカイブテーブルを指定することを推奨します。各品質ルールは、1 回の実行で最大 10,000 件の異常データを記録できます。[Verification Records] ページから単一のチェックのデータをダウンロードするだけでなく、アーカイブテーブルに直接アクセスしてカスタムのテーブルライフサイクルを定義することで、柔軟性が向上します。

            説明
            • 現在の実行において、すべてのルールによって生成された異常データのサマリーを、最大10,000件までダウンロードできます。より多くのデータを表示するには、指定した異常アーカイブテーブルにアーカイブし、テーブルに直接アクセスすることを推奨します。

            • 異常アーカイブテーブルは、データ書き込みエラーを防ぎ、正しく機能させるために、特定のフォーマット要件を満たす必要があります。詳細については、「Add an anomaly archive table」をご参照ください。

        ビジネス属性設定

        属性情報

        ビジネス属性の入力形式は、品質ルールの属性設定によって異なります。たとえば、管理部門フィールドの値タイプが、ビッグデータ部門、ビジネス部門、技術部門などのオプションを持つ列挙リスト (複数選択) の場合、品質ルールを作成する際に、この属性はそれらのオプションを持つ複数選択のドロップダウンリストとして表示されます。

        ルールオーナーフィールドの値タイプが、フィールド長 256 のカスタム入力である場合、ルール作成時にこの属性に最大 256 文字まで入力できます。

        属性フィールドの入力方式が [Range] の場合は、次のように設定します。

        範囲: 通常、連続した数値または日付の値の範囲に使用されます。次の 4 つの演算子のいずれかを選択できます: [>][>=][<][<=]。属性設定の詳細については、「品質ルールの属性の作成と管理」をご参照ください。

        スケジューリング属性設定

        [スケジューリング方式]

        既存のスケジュールを選択します。スケジューリング方式をまだ決定していない場合は、まず品質ルールを作成し、後で設定することができます。新しいスケジュールを作成するには、「Create a schedule」をご参照ください。

        品質スコア設定

        [スコアリング方式]

        利用可能なスコアリング方式は、品質検証ステータスとデータ適格率の 2 つです。

        • Quality Verification Status:この方式は、ルールの最後の正常な実行の検証ステータスに基づいてスコアを割り当てます。検証が成功した場合は 100 ポイント、失敗した場合は 0 ポイントとなります。

        • Data Qualification Ratio:スコアは、ルールの最後の正常な実行からの有効なデータのパーセンテージです。たとえば、データ形式の有効性が 80% の場合、品質スコアは 80 になります。

        サポートされているスコアリング方式は、ルールテンプレートによって異なります。次のテンプレートは、[Quality Verification Status] 方式のみをサポートしています。

        • 一意性カテゴリの [Field Group Count Check] および [Field Duplicate Value Count Check]。

        • 整合性カテゴリの [Single-table Field Statistical Value Consistency Comparison] および [Cross-source Two-table Field Statistical Value Comparison]。

        • 安定性カテゴリ。

        • カスタム SQL カテゴリの [Custom Statistical Metric Check]。

        [品質スコアの重み]

        ルールのスコアの重みです。監視対象の全体的な品質スコアを計算するために使用されます。1 から 10 までの整数を選択できます。

      3. [OK] をクリックして、カスタムルールの設定を完了します。

        [SQL のプレビュー] をクリックすると、現在の設定と最後に保存したバージョンを比較し、 SQL の変更を確認できます。

        説明
        • 全てのキー情報を入力していない場合、[Preview SQL] 機能は利用できません。

        • 左側のペインには、最後に保存された設定の SQL のプレビューが表示されます。設定を保存していない場合、このペインは空になります。右側のペインには、現在の設定の SQL のプレビューが表示されます。

  • [データ標準を参照したモニタリング]

    1. データテーブルにカーソルを合わせ、[クオリティルールを作成] をポイントし、[モニタリングの参照データ標準] を選択します。

    2. [モニタリング用参照データ標準] ダイアログボックスで、参照するデータ標準ルールを選択します。 テンプレート ([有効性][一意性][完全性]、および [安定性]) 別にルールを絞り込むか、オブジェクト名で検索できます。

      このダイアログボックスでは、ルール名を変更したり、ステータスを有効化または無効化できます。また、標準コードをクリックして標準の詳細を表示したり、[Actions] 列の image アイコンをクリックして品質ルールを表示したりすることもできます。

      説明

      ルールを参照した後は、その詳細な設定を変更することはできません。ただし、スケジュールを設定したり、ルール強度などの設定を変更したりすることはできます。

    3. [選択したルールを追加] をクリックして、データ標準ルールの参照を完了します。

ルール設定リスト

品質ルールが作成されると、ルール設定リストでその表示、編集、ドライラン、実行、削除ができます。

image

エリア

説明

フィルターと検索エリア

オブジェクト名またはルール名で検索できます。

ルールタイプ、ルールテンプレート、ルール強度、ドライランステータス、有効ステータス、ルールソースでフィルタリングできます。

説明

品質ルールのビジネス属性が検索やフィルターの対象として設定され、かつ有効になっている場合、その属性で検索またはフィルタリングができます。

リストエリア

オブジェクトタイプ/名前、ルール名/ID、ドライランステータス、有効ステータス、ルールタイプ、ルールテンプレート、ルール強度、スケジュールタイプ、および関連するナレッジベースドキュメント情報を表示します。[Refresh] ボタンの前にある image アイコンをクリックして、リストに表示する列を選択します。

  • ルールがデータ標準を参照している場合、ルール名の横にある image アイコンをクリックして標準の詳細を表示できます。

  • ルールが開発フィールドの標準制約である場合、ルール名の後に image アイコンが表示されます。

  • [有効ステータス]:ルールを有効にする前にドライランを実行することを推奨します。オンラインタスクをブロックしないように、ドライランが成功した後にのみルールを有効にしてください。

    • ルールを有効にすると、設定されたスケジュールに基づいて自動的に実行されます。

    • ルールを無効にすると、自動的には実行されなくなりますが、手動で実行することはできます。

  • [関連ナレッジベースドキュメント]: [詳細の表示] をクリックすると、ルールに関連付けられたナレッジベース情報を表示できます。 これには、テーブル名、検証対象、ルール、および関連ドキュメントが含まれます。 また、ナレッジベースドキュメントの検索、表示、編集、削除もできます。 詳細については、「ナレッジベースの表示」をご参照ください。

操作エリア

ルールの表示、複製、編集、ドライラン、実行、スケジュール設定、ナレッジベースドキュメントの関連付け、品質スコアの設定、および削除ができます。

  • [表示]:ルールの設定詳細を表示します。

  • [複製]:ルールを迅速に複製します。

  • [編集]:ルールを編集した後、再度ドライランを実行する必要があります。編集可能な情報は、品質ルールの作成方法によって異なります。詳細については、「Quality rule editing instructions」をご参照ください。

  • [ドライラン]: [既存のスケジュール] または [カスタム検証範囲] を使用して、ルールのドライランを実行できます。ドライラン後、image アイコンをクリックして [ドライランログを表示] できます。

  • [実行]: [既存のスケジュール] または [カスタム検証範囲] を使用してルールを実行できます。実行後、[検証記録] で結果を表示できます。

  • [スケジュール設定]:ダイアログボックスで、スケジュールタイプでフィルタリングしたり、スケジュール名で検索したりできます。また、スケジュールを編集することもできます。

  • [ナレッジベースドキュメントの関連付け]:ルールがナレッジドキュメントに関連付けられると、[Quality Rules] と [Governance Workbench] で関連付けられたナレッジを表示できます。関連付けられていないナレッジドキュメントを選択して関連付けを作成できます。新しいドキュメントを作成するには、「Create and manage a knowledge base」をご参照ください。

  • [品質スコア設定]:品質ルールのスコアリング方式と品質スコアの重みを変更します。

    重要

    品質スコアの重みは、監視対象の全体的な品質スコアを計算するために使用されます。これを変更すると、品質スコアの結果に影響します。慎重に操作してください。

  • [削除]:この品質ルールオブジェクトを削除すると、その下の全ての品質ルールも削除されます。この操作は元に戻せません。慎重に操作してください。

バッチ操作エリア

ドライラン、実行、スケジュール設定、有効化、無効化、ビジネス属性の変更、ナレッジベースドキュメントの関連付け、品質スコアの設定、ルールのエクスポート、削除などのバッチ操作を実行できます。

  • [ドライラン]: [既存のスケジュール] または [カスタム検証範囲] を使用して、複数のルールを一括でドライランします。ドライラン後、image アイコンをクリックして [ドライランログを表示] できます。

  • [実行]: [既存のスケジュール] または [カスタム検証範囲] を使用して、複数のルールを一括で実行します。実行後、[検証記録] で結果を表示できます。

    説明

    ルールをバッチで実行する場合は、同じパーティションを持つテーブルを選択することを推奨します。パーティション情報は実行時に直接渡されます。パーティションが異なると、エラーが発生する可能性があります。

  • [スケジュール設定]:複数の品質ルールのスケジュールをバッチで設定します。ダイアログボックスで、スケジュールタイプでフィルタリングしたり、スケジュール名で検索したりできます。また、スケジュールを編集することもできます。「Quality Rules」リストページで編集可能な、選択済みのルールのみが変更されます。

  • [有効化]:複数のルールを有効にすると、設定されたスケジュールに基づいて自動的に実行されます。「Quality Rules」リストページで編集可能な、選択済みのルールのみが有効化されます。

  • [無効化]:複数のルールを無効にすると、自動的には実行されなくなりますが、手動で実行することはできます。「Quality Rules」リストページで編集可能な、選択済みのルールのみが無効化されます。

  • [ビジネス属性の変更]:対応する属性フィールドが単一選択または複数選択タイプの場合、ビジネス属性をバッチで変更できます。

    • 値タイプが複数選択の場合、属性値を追加または変更できます。

    • 値タイプが単一選択の場合、属性値を直接変更できます。

  • [ナレッジベースドキュメントの関連付け]:ルールがナレッジドキュメントに関連付けられると、[Quality Rules] と [Governance Workbench] で関連するナレッジを表示できます。ナレッジドキュメントを監視対象にバッチで関連付けることができます。新しいドキュメントを作成するには、「Create and manage a knowledge base」をご参照ください。

  • [品質スコア設定]:複数のルールのスコアリング方式と品質スコアの重みをバッチで変更できます。

    重要

    品質スコアの重みは、監視対象の全体的な品質スコアを計算するために使用されます。これを変更すると、品質スコアの結果に影響します。慎重に操作してください。

  • [ルールのエクスポート]:表示権限のある、現在の監視対象配下にあるカスタム SQL 品質ルールの中から、選択したものをエクスポートします。

  • [削除]:品質ルールオブジェクトをバッチで削除できます。この操作は元に戻せないため、慎重に操作してください。編集権限のあるルールのみを削除できます。

スケジュールの作成

説明
  • 品質ルールのスケジュールを設定する際は、既存のスケジュールを基にすばやく作成できます。1 つのテーブルにつき、最大 20 件のスケジュールを設定できます。

  • 1 つの品質ルールに設定できるスケジュールは最大 10 件です。

  • 同一の構成を持つスケジュールは自動的に重複排除されます。

  • Hologres のパーティションテーブルの場合は、固定タスクによってトリガーされるスケジュールを使用することを推奨します。

  • チェック範囲は、品質チェック文のフィルタ条件として機能し、チェック対象データを定義します。品質レポートなどのダウンストリームコンポーネントも、チェック範囲を基本の粒度単位として使用します。

  1. [Quality Rule Details] ページで [Scheduling Configuration] タブをクリックし、[Create Schedule] をクリックして [Create Schedule] ダイアログボックスを開きます。

  2. [Create Schedule] ダイアログボックスで、パラメータを設定します。

    パラメータ

    説明

    [スケジュール名]

    スケジュールのカスタム名です。最大 64 文字まで指定できます。

    [スケジュールタイプ]

    [時間ベースのスケジュール]、[データ更新によってトリガーされるスケジュール]、[固定タスクによってトリガーされるスケジュール] をサポートしています。

    • [時間ベースのスケジュール]:設定した時刻に基づいて、定期的に品質チェックを実行します。データが比較的決まった時刻に生成されるシナリオに適しています。

      • [スケジューリング周期]:品質ルールの実行にはコンピューティングリソースを消費します。本番タスクへの影響を避けるため、複数の品質ルールを同時に実行しないようにしてください。スケジューリング周期は、[Day][Week][Month][Hour][Minute] の 5 種類をサポートしています。

        システムのタイムゾーン (ユーザーセンターで設定したタイムゾーン) とスケジュールのタイムゾーン ([Management Center] > [System Settings] > [Basic Settings] で設定したタイムゾーン) が異なる場合、ルールはシステムのタイムゾーンに基づいて実行されます。

      • [Fill in Recommended Time][Fill in Recommended Time] をクリックすると、現在のテーブルを生成するタスクの平均完了時刻に基づいて、システムが推奨時刻を提示します。

    • [データ更新によってトリガーされるスケジュール]:コードベースのタスクが実行されると、システムは、その実行が現在のテーブルのチェック範囲内のデータを更新したかどうかを確認します。このスケジュールタイプは、複数のタスクによって更新されるテーブルに適しています。

      説明

      チェック範囲は、タスクによって更新されるパーティションに設定することを推奨します。非パーティションテーブルの場合、品質チェックはテーブル全体に対して実行されます。変更漏れを防ぐため、システムはすべてのデータ変更を自動的に識別してチェックします。

    • [固定タスクによってトリガーされるスケジュール]:指定したタスクが正常に完了した後、または開始前に、設定した品質ルールを実行します。次のエンジンタイプのタスクを選択してスケジュールをトリガーできます: SQL、オフラインパイプライン、Python、Shell、Virtual、Dlink、Spark_jar、Hive_MR、およびデータベース SQL ノード。これは、テーブルが固定タスクによって更新されるシナリオに適しています。

      説明
      • スケジュールのトリガーに使用できるのは、本番環境のタスクのみです。強ルールを設定し、スケジュールされた品質チェックが失敗した場合、オンラインタスクに影響する可能性があります。業務要件に基づき、慎重に使用してください。

      • サポートされるエンジンタイプ: MaxCompute、E-MapReduce 3.X、E-MapReduce 5.x、CDH 5.X、CDH 6.X、FusionInsight 8.X、AsiaInfo DP 5.3、Cloudera Data Platform 7.x、Lindorm (computing engine)、Transwarp TDH 6.x、Transwarp TDH 9.3.x

      • [トリガーのタイミング]:品質チェックがトリガーされるタイミングを指定します。[すべてのタスクが正常に実行された後にトリガー][各タスクが正常に実行された後にトリガー]、または[各タスクが実行される前にトリガー]を選択できます。

      • [トリガータスク]:次のロールは、本番プロジェクトのタスクノードをトリガータスクとして選択できます。 ノードの出力名で検索するか、「推奨タスク」または「すべてのタスク」のリストから選択できます。

        • 次のロールは、本番プロジェクトのタスクノードを選択できます:Prod/Basic プロジェクトのプロジェクト管理者、Prod プロジェクトの運用システムロール、Basic プロジェクトの開発システムロール、および Prod/Basic プロジェクトで [Project Quality Management]-[Quality Rule Management] 権限を持つカスタムプロジェクトロール。

        • Prod/Basic プロジェクトで [Quality Rule]-[Management] 権限を持つカスタムグローバルロールは、すべての本番プロジェクトのタスクノードを選択できます。

        • [Recommended Tasks]:現在のテーブルを出力とするリネージタスク、およびノードの出力名が plate_name/project_name.table_name の形式に一致するタスクを表示します。これは、Asset Catalog-Asset Details-Output Information に表示されるタスクに対応します。

        • [All Tasks]:現在のユーザーが運用権限を持つすべての本番タスクを表示します。

          説明
          • トリガーのタイミングを「[全タスクの正常実行後にトリガー]」に設定した場合、スケジューリング周期が同じトリガータスクを選択することをお勧めします。これにより、ルール実行の遅延を防ぎ、品質チェックの結果をタイムリーに得ることができます。

          • トリガーのタイミングを [各タスクの実行前にトリガー] に設定した場合、[推奨タスク] リストには、現在のテーブルが入力となっているリネージタスクが表示されます。

    [スケジューリング条件]

    有効にすると、システムはスケジュールを実行する前に、スケジューリング条件を満たしているかどうかを確認します。条件を満たしている場合のみスケジュールが実行され、満たしていない場合は今回の実行がスキップされます。

    • [業務日]/[実行日]: スケジュールタイプが [時間ベースのスケジュール] (実行日はサポートされていません)、[データ更新によってトリガーされるスケジュール]、または [固定タスクによってトリガーされるスケジュール] の場合、日付条件を設定できます。[一般カレンダー] または [カスタムカレンダー] を選択できます。カスタムカレンダーの作成方法については、「パブリックカレンダーの作成」をご参照ください。

      • [General Calendar] を選択した場合、[Month][Day of week]、または [Date] に基づいて条件を設定できます。例:

        image

      • [Custom Calendar] を選択した場合、[Date Type] または [Tag] に基づいて条件を設定できます。例:

        image

    • [インスタンスタイプ]:スケジュールタイプが [データ更新によってトリガーされるスケジュール] または [固定タスクによってトリガーされるスケジュール] の場合、インスタンスタイプを設定できます。オプションは [スケジュールされたインスタンス]、[バックフィルインスタンス]、[手動インスタンス] です。例:

      image

    説明
    • 少なくとも 1 つの条件を設定する必要があります。条件を追加するには、[+Add Rule] ボタンをクリックします。

    • スケジューリング条件は最大 10 個まで設定できます。

    • スケジューリング条件間の論理関係は AND または OR に設定できます。

    チェック範囲

    スケジュールタイプが 時間ベースのスケジュールまたは固定タスクによってトリガーされるスケジュール の場合、[Custom check scope] を選択できます。スケジュールタイプが データ更新によってトリガーされるスケジュール の場合、[Partitions updated by task] または [Custom check scope] を選択できます。

    またはカスタムチェック範囲。

    • [Partitions updated by task]:タスクがパーティションを更新した場合、品質チェックは更新されたパーティションに対して実行されます。

      説明
      • 動的パーティションのシナリオでは、システムがパーティションを解決できず、品質チェックが実行されない場合があります。

      • 変動チェックルール (パーティションサイズ、行数、フィールド統計などのチェック) では、特定のパーティションが必要なため、[Partitions updated by task] のチェック範囲はサポートされません。

      • 非パーティションテーブルの場合、データが更新されるとテーブル全体に対して品質チェックが実行されます。

    • [Custom check scope]:パーティションを解決できないシナリオでは、[Custom check scope] を使用し、ビジネス日付または実行日付に基づいてパーティション式を指定できます。

      • [チェック範囲式]:編集可能なドロップダウンリストです。ds='${yyyyMMdd}' などのチェック範囲を入力できます。また、組み込みのパーティション式を選択して変更し、すばやく設定することもできます。パーティション式の詳細については、「組み込みパーティション式の種類」をご参照ください。

        説明
        • 複数の条件がある場合は、and または or で結合できます。例: province="Zhejiang" and ds<=${yyyyMMdd}.

        • 品質ルールで設定したフィルタ条件は、チェック範囲式と AND で結合されます。品質チェックでは、システムが両方の条件を適用してデータをフィルタリングします。

        • チェック範囲式はフルテーブルスキャンをサポートしています。

          : フルテーブルスキャンは多くのリソースを消費し、すべてのエンジンでサポートされているわけではありません。フルテーブルスキャンを避けるため、パーティション式を設定してください。

      • [チェック範囲プレビュー]:デフォルトでは、現在のビジネス日付に対するプレビューが表示されます。

  3. [OK] をクリックして、スケジューリング設定を完了します。

スケジューリング設定リスト

スケジュールを作成した後は、スケジューリング設定リストで表示、編集、複製、削除できます。

image

領域

説明

フィルタ/検索領域

スケジュール名で検索できます。

[時間ベースのスケジュール]、[データ更新によってトリガーされるスケジュール]、[固定タスクによってトリガーされるスケジュール] でフィルタリングできます。

リスト領域

各スケジューリング設定について、[スケジュール名]、[スケジュールタイプ]、[最終更新者]、[最終更新時刻] が表示されます。

操作領域

スケジュールの編集、複製、削除を行えます。

  • [編集]:設定済みのスケジュール情報を変更します。

    重要

    このスケジュールを編集すると、このスケジュールを使用しているすべての品質ルールに影響します。慎重に実施してください。

  • [複製]:スケジュールをすばやく複製します。

  • [削除]:品質ルールで使用中のスケジュールは削除できません。

アラート設定

ルールごとに異なるアラート設定を構成することで、アラートを区別できます。たとえば、強いルールによる異常には電話アラートを設定し、弱いルールによる異常には SMS アラートを設定できます。ルールが複数のアラート設定に一致する場合は、どれを適用するかを決定するために有効なポリシーを設定できます。

説明

監視対象ごとに、最大 20 件のアラート設定を作成できます。

  1. [Quality Rule Details] ページで [Alert configuration] タブをクリックし、[Create Alert Configuration] をクリックします。[Create Alert Configuration] ダイアログボックスが表示されます。

  2. [Create Alert Configuration] ダイアログボックスで、パラメータを設定します。

    パラメータ

    説明

    [スコープ]

    [All Rules][All Strong Rules][All Weak Rules]、または [Custom] を選択します。

    説明
    • 監視対象ごとに、[All Rules]、[All Strong Rules]、[All Weak Rules] の 3 つのスコープそれぞれに対して、アラート設定を 1 つ作成できます。システムは、ルール強度に基づいて新しいルールを該当するアラート設定に自動的に関連付けます。これらの設定を変更する場合は、既存の設定を編集する必要があります。

    • [Custom] スコープでは、現在の監視対象に設定されている既存のルールを最大 200 件まで選択できます。

    [アラート設定名]

    名前は監視対象ごとに一意である必要があり、256 文字を超えることはできません。

    [アラート受信者]

    アラート受信者と通知方法を設定します。少なくとも 1 つのアラート受信者と 1 つの通知方法を選択する必要があります。

    • [アラート受信者]:アラート受信者のタイプは、[Custom]、[On-call Schedule]、[Quality Owner] の 3 種類から選択できます。

      カスタムのアラート受信者は最大 5 件、オンコールスケジュールは最大 3 件まで設定できます。

    • [通知方法]:電話、メール、SMS、DingTalk、Lark、WeCom、[Custom Channel] をサポートしています。これらの方法は [Channel Settings] で管理できます。

  3. [OK] をクリックして、アラート設定を保存します。

アラート設定リスト

アラート設定を作成した後は、リストから並べ替え、編集、削除できます。

image

番号

説明

① 並べ替え領域

品質ルールが複数のアラート設定に一致する場合に適用する有効なポリシーを設定します:

  • [最初に一致したアラート設定が有効になる]:このポリシーを選択すると、最初に一致したアラート設定のみが適用され、他はすべて無視されます。アラート設定を並べ替えて優先度を設定できます。[Sort Rules] をクリックします。次に、アラート設定名の横にある image.png アイコンをドラッグするか、[Operations] 列のアイコンを使用して移動します。左から順に、[Move to Top] と [Move to Bottom] です。並べ替え後、[Finish Sorting] をクリックして新しい順序を保存します。

    image

  • [すべてのアラート設定が有効になる]:リスト内のすべてのアラート設定が、現在の監視対象の品質ルールに適用されます。

    たとえば、複数の設定があり、このオプションを選択した場合、システムは通知方法、アラート受信者、品質ルールに基づいてアラートをマージします。具体的には、カスタム受信者と品質オーナーが同一人物の場合、アラートのマージポリシーに従ってアラートがマージされます。

    説明

    オンコールスケジュールでは、アラートのマージはサポートされません。

② リスト領域

この領域には、各アラート設定の名前、有効なスコープ、受信者、および対応する通知方法が表示されます。

[有効なスコープ]:カスタムスコープのアラート設定の場合、設定された監視対象とルールの名前を確認できます。ルールを削除すると、名前が表示されなくなります。この場合は、アラート設定を更新してください。

③ 操作領域

アラート設定を編集または削除できます。

  • [編集]:既存のアラート設定の設定を変更します。アラート受信者または通知方法を変更する場合は、業務アラートの見逃しを防ぐため、影響を受ける担当者に通知してください。

  • [削除]:アラート設定を削除すると、関連付けられたルールには適用されなくなります。慎重に実行してください。

例外アーカイブテーブルの追加

例外アーカイブテーブルには、品質ルールに違反したレコードが格納されます。

  1. [品質ルール詳細] ページで、[例外アーカイブ] タブをクリックし、[+ 例外アーカイブテーブルの追加] をクリックして [例外アーカイブテーブルの追加] ダイアログボックスを開きます。

  2. [例外アーカイブテーブルの追加] ダイアログボックスで、パラメーターを設定します。

    [メソッド] には、[テーブルの作成][既存テーブルの選択] の 2 つのオプションがあります。特別な品質チェックフィールドが追加され、アーカイブされた異常データは元のデータテーブルには書き込まれません。

    • [Create Table]:カスタムテーブル名を指定できます。テーブルは、監視対象テーブルと同じプロジェクトまたはワークスペースにある必要があります。デフォルトでは、テーブル名は [current_table_name_exception_data] です。テーブルは同じデータベースまたはデータソースに作成されます。名前には、文字、数字、アンダースコア (_)、ピリオド (.) を使用でき、長さは最大 128 文字です。

      • 監視対象テーブルが物理テーブルの場合、例外アーカイブテーブルは監視対象テーブルと同じプロジェクトに作成されます。

      • 監視対象テーブルがディメンション論理テーブルまたはファクト論理テーブルの場合、例外アーカイブテーブルはデフォルトで同じプロジェクトに作成されます。projectA.table_name のように、監視対象テーブルのワークスペース内のプロジェクトを手動で指定することもできます。

      • 監視対象テーブルがサマリー論理テーブルの場合は、例外アーカイブテーブル用に同じワークスペース内のプロジェクト名を指定します。指定しない場合、システムはテーブルを監視対象テーブルのワークスペース内のプロジェクトに自動的にアーカイブします。

      • 例外アーカイブテーブルには、監視対象テーブルのすべてのフィールドと、必要な品質チェックフィールドを含める必要があります。スクリプトの形式は次のとおりです:

        create table 当前表名_exception_data
         (dataphin_quality_tenant_id      varchar(64)   comment 'テナント ID' , 
          dataphin_quality_rule_id        varchar(64)   comment '品質ルール ID', 
          dataphin_quality_rule_name      varchar(256)  comment '品質ルール名', 
          dataphin_quality_column_name    varchar(1024) comment 'チェックフィールド名', 
          dataphin_quality_watch_task_id  varchar(128)  comment '監視対象タスク ID', 
          dataphin_quality_rule_task_id   varchar(64)   comment 'ルールタスク ID', 
          dataphin_quality_validate_time  varchar(64)   comment '品質チェック時間', 
          dataphin_quality_archive_mode   varchar(32)   comment '例外アーカイブモード、ONLY_ERROR_FIELD/FULL_RECORD', 
          dataphin_quality_error_data     string        comment '例外データ', 
          ljba_id                         bigint        comment  'ljba_プライマリキー', 
          ljb_id                          bigint        comment  'ljb_プライマリキー', 
          col_tinyint                     tinyint       comment 'データ型: TINYINT (小文字)',
          col_tinyint_02                  tinyint       comment '2',
          col_smallint                    smallint      comment 'データ型: SMALLINT (小文字)',
          col_smallint_02                 smallint      comment '4',
          col_int                         int           comment 'データ型: INT (小文字)',
          col_int_02                      int           comment '6',
          col_bigint                      bigint        comment 'データ型: BIGINT (小文字)',
          col_bigint_02                   bigint        comment '8',
          col_float                       float         comment 'データ型: FLOAT (小文字)',
          col_float_02                    float         comment '10',
          col_double                      double        comment 'データ型: DOUBLE (小文字)',
          col_double_02                   double        comment '11',
          col_decimal                     decimal(38,18) comment 'データ型: DECIMAL(38,18) (小文字)',
          col_decimal_02                  decimal(38,18) comment '12',
          col_varchar                     varchar(500)   comment 'データ型: VARCHAR(500) (小文字)',
          col_varchar_02                  varchar(500)   comment '13',
          col_char                        char(10)       comment 'データ型: CHAR(10) (小文字)',
          col_char_02                     char(10)       comment '14',
          col_string                      string         comment 'データ型: STRING (小文字)',
          col_string_02                   string         comment '15',
          col_date                        date           comment 'データ型: DATE (小文字)',
          col_date_02                     date           comment '16',
          col_datetime                    datetime       comment 'データ型: DATETIME (小文字)',
          col_datetime_02                 datetime       comment '17',
          col_timestmap                   timestamp      comment 'データ型: TIMESTAMP (小文字)',
          col_timestmap_02                timestamp      comment '18',
          col_boolean                     boolean        comment 'データ型: BOOLEAN (小文字)',
          col_boolean_02                  boolean        comment '19',
          col_binary                      binary         comment 'データ型: BINARY (小文字)',
          col_binary_02                   binary         comment '20',
          col_array                       array<int>     comment 'データ型: ARRAY (小文字)',
          col_array_02                    array<string>  comment '21',
          col_map                         map<string,string>  comment 'データ型: MAP (小文字)',
          col_map_02                      map<string,int>     comment '22',
          ds                              string              comment '日付パーティション、yyyyMMdd'
         ) 
        partitioned by 
        (dataphin_quality_validate_date string comment 'チェック日 (パーティションフィールド)');
    • [既存のテーブルを選択]: 同じプロジェクトまたはデータソースからテーブルを選択できます。例外アーカイブテーブルには、監視対象テーブルのすべてのフィールドと、必須の品質チェックフィールドが含まれている必要があります。[例外アーカイブテーブルの DDL を表示]をクリックすると、DDL ステートメントを表示できます。スクリプト形式は次のとおりです:

      create table 当前表名_exception_data
       (dataphin_quality_tenant_id      varchar(64)   comment 'テナント ID' , 
        dataphin_quality_rule_id        varchar(64)   comment '品質ルール ID', 
        dataphin_quality_rule_name      varchar(256)  comment '品質ルール名', 
        dataphin_quality_column_name    varchar(1024) comment 'チェックフィールド名', 
        dataphin_quality_watch_task_id  varchar(128)  comment '監視対象タスク ID', 
        dataphin_quality_rule_task_id   varchar(64)   comment 'ルールタスク ID', 
        dataphin_quality_validate_time  varchar(64)   comment '品質チェック時間', 
        dataphin_quality_archive_mode   varchar(32)   comment '例外アーカイブモード、ONLY_ERROR_FIELD/FULL_RECORD', 
        dataphin_quality_error_data     string        comment '例外データ', 
        ljba_id                         bigint        comment  'ljba_プライマリキー', 
        ljb_id                          bigint        comment  'ljb_プライマリキー', 
        col_tinyint                     tinyint       comment 'データ型: TINYINT (小文字)',
        col_tinyint_02                  tinyint       comment '2',
        col_smallint                    smallint      comment 'データ型: SMALLINT (小文字)',
        col_smallint_02                 smallint      comment '4',
        col_int                         int           comment 'データ型: INT (小文字)',
        col_int_02                      int           comment '6',
        col_bigint                      bigint        comment 'データ型: BIGINT (小文字)',
        col_bigint_02                   bigint        comment '8',
        col_float                       float         comment 'データ型: FLOAT (小文字)',
        col_float_02                    float         comment '10',
        col_double                      double        comment 'データ型: DOUBLE (小文字)',
        col_double_02                   double        comment '11',
        col_decimal                     decimal(38,18) comment 'データ型: DECIMAL(38,18) (小文字)',
        col_decimal_02                  decimal(38,18) comment '12',
        col_varchar                     varchar(500)   comment 'データ型: VARCHAR(500) (小文字)',
        col_varchar_02                  varchar(500)   comment '13',
        col_char                        char(10)       comment 'データ型: CHAR(10) (小文字)',
        col_char_02                     char(10)       comment '14',
        col_string                      string         comment 'データ型: STRING (小文字)',
        col_string_02                   string         comment '15',
        col_date                        date           comment 'データ型: DATE (小文字)',
        col_date_02                     date           comment '16',
        col_datetime                    datetime       comment 'データ型: DATETIME (小文字)',
        col_datetime_02                 datetime       comment '17',
        col_timestmap                   timestamp      comment 'データ型: TIMESTAMP (小文字)',
        col_timestmap_02                timestamp      comment '18',
        col_boolean                     boolean        comment 'データ型: BOOLEAN (小文字)',
        col_boolean_02                  boolean        comment '19',
        col_binary                      binary         comment 'データ型: BINARY (小文字)',
        col_binary_02                   binary         comment '20',
        col_array                       array<int>     comment 'データ型: ARRAY (小文字)',
        col_array_02                    array<string>  comment '21',
        col_map                         map<string,string>  comment 'データ型: MAP (小文字)',
        col_map_02                      map<string,int>     comment '22',
        ds                              string              comment '日付パーティション、yyyyMMdd'
       ) 
      partitioned by 
      (dataphin_quality_validate_date string comment 'チェック日 (パーティションフィールド)');
  3. [OK] をクリックして、例外アーカイブテーブルを追加します。

    [作成後にアクティブアーカイブテーブルとして設定] チェックボックスを選択できます。これにより、新しい品質ルールを作成する際に、このテーブルが例外データの保存先として自動的に選択されるようになります。

例外アーカイブテーブルリスト

例外アーカイブテーブルを追加すると、システムはデフォルトでそのテーブルをアクティブアーカイブテーブルとして設定します。例外アーカイブテーブルの名前をクリックすると、そのテーブル構造を表示できます。リスト内の他のテーブルに対して、次の操作を実行することもできます。

  • [Set as active archive table]:テーブルをアクティブアーカイブテーブルとして設定すると、カスタムアーカイブ用に設定された品質ルールは、その例外データをこのテーブルに送信します。

  • [Delete]:この操作は例外アーカイブテーブルへの参照を削除しますが、物理テーブルは削除しません。必要に応じて、後で参照を再度追加できます。

品質レポート

[品質レポート]をクリックして、現在の品質ルールの[ルールチェックの概要][ルールチェックの詳細]を表示します。

  • 異常結果、パーティション時間、またはルール名やオブジェクト名のキーワードを使用することで、ルールチェックの詳細をすばやくフィルタリングできます。

  • ルールチェックの詳細リストで、[操作] 列の image アイコンをクリックして、該当するルールのルールチェックの詳細を表示します。

  • ルールチェックの詳細リストで、[操作] 列の image アイコンをクリックして、該当するルールの実行ログを表示します。

品質ルールの権限管理

  1. [権限管理] をクリックして、[詳細表示] 設定を構成します。この設定では、誰が検証レコード、品質ルール、および品質レポートの詳細を閲覧できるかを制御します。

    [詳細の表示]:[すべてのメンバー] または [現在のオブジェクトの品質管理権限を持つメンバーのみ] を選択できます。

  2. [OK] をクリックして権限管理設定を保存します。

次のステップ

品質ルールを設定した後、 [Dataphin Table Rules] ページで品質ルールを表示できます。詳細については、「監視対象リストの表示」または「」をご参照ください。