Dataphin では、データテーブルを検証し品質モニタリングを簡素化するための品質ルールを作成できます。このトピックでは、これらのルールの設定方法について説明します。
前提条件
品質ルールを設定するには、まず監視対象を追加します。詳細については、「監視対象の追加」、「」をご参照ください。
権限
スーパー管理者、品質管理者、「[品質ルール] - [管理]」権限を持つカスタムグローバルロールのユーザー、およびテーブルを含むプロジェクトで「[プロジェクト品質管理] - [品質ルール管理]」権限を持つカスタムプロジェクトロールのユーザーは、品質ルールのスケジューリング、アラート、例外アーカイブテーブル、スコアリングの重みを設定できます。
品質責任者は、自分が管理するモニタリングオブジェクトの品質ルールのスケジューリング、アラート、例外アーカイブテーブル、スコアリングの重みを設定できます。
品質責任者と標準ユーザーは、Dataphin テーブルの読み取り権限も持つ必要があります。この権限を申請するには、「テーブルの権限の申請、更新、返却」をご参照ください。
利用可能な操作はオブジェクトによって異なります。詳細については、「品質ルールの操作権限」をご参照ください。
品質ルール
品質ルールは、[カスタム構成]と[データ標準を参照したモニタリング]の 2 つの方法で設定できます。後者を使用するには、データ標準モジュールが必要です。
[カスタム構成]では、組み込みまたはカスタムの品質ルールテンプレートからルールをすばやく作成できます。また、柔軟なモニタリング用にカスタム SQL もサポートしています。
[データ標準を参照したモニタリング]では、現在のアセットオブジェクトにマッピングされているデータ標準の品質ルールを使用します。これにより、標準制約をより効果的に適用できます。
検証ルール
データ品質ルールがデータテーブルを評価する際に、 弱いモニタリングルール がトリガーされると、異常へ迅速に対処できるようアラートを送信します。 強いモニタリングルール がトリガーされると、ダーティデータがダウンストリームに流れるのを防ぐためにタスクを中断し、アラートも送信します。
試行実行と実行の違い
試行実行と実行の違いは、実行方法と結果の表示場所にあります。試行実行 は、品質ルールが期待どおりに機能するかを検証するためのシミュレートされた実行です。その結果は品質レポートに表示されません。実行 は、特定の期間中に品質ルールを評価し、その結果を品質レポートに追加します。
品質ルールの設定
Dataphin ホームページで、上部のナビゲーションバーの [ガバナンス] > [データ品質] をクリックします。
左側のナビゲーションペインで、[品質ルール] をクリックします。[Dataphin テーブル] ページで、ターゲットオブジェクトの名前をクリックして [品質ルールの詳細] ページを開き、品質ルールを設定します。
[カスタム構成]
データテーブルにマウスカーソルを合わせ、[クオリティルールの作成] をポイントして [カスタム設定] を選択するか、[クオリティルールの作成] をクリックして [クオリティルールの作成] ダイアログボックスを開きます。
[品質ルールの作成] ダイアログボックスで、次のパラメーターを設定します。
パラメーター
説明
基本情報
[ルール名]
品質ルールに付ける任意の名前です。最大 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 までの整数を選択できます。
[OK] をクリックして、カスタムルールの設定を完了します。
[SQL のプレビュー] をクリックすると、現在の設定と最後に保存したバージョンを比較し、 SQL の変更を確認できます。
説明全てのキー情報を入力していない場合、[Preview SQL] 機能は利用できません。
左側のペインには、最後に保存された設定の SQL のプレビューが表示されます。設定を保存していない場合、このペインは空になります。右側のペインには、現在の設定の SQL のプレビューが表示されます。
[データ標準を参照したモニタリング]
データテーブルにカーソルを合わせ、[クオリティルールを作成] をポイントし、[モニタリングの参照データ標準] を選択します。
[モニタリング用参照データ標準] ダイアログボックスで、参照するデータ標準ルールを選択します。 テンプレート ([有効性]、[一意性]、[完全性]、および [安定性]) 別にルールを絞り込むか、オブジェクト名で検索できます。
このダイアログボックスでは、ルール名を変更したり、ステータスを有効化または無効化できます。また、標準コードをクリックして標準の詳細を表示したり、[Actions] 列の
アイコンをクリックして品質ルールを表示したりすることもできます。説明ルールを参照した後は、その詳細な設定を変更することはできません。ただし、スケジュールを設定したり、ルール強度などの設定を変更したりすることはできます。
[選択したルールを追加] をクリックして、データ標準ルールの参照を完了します。
ルール設定リスト
品質ルールが作成されると、ルール設定リストでその表示、編集、ドライラン、実行、削除ができます。

エリア | 説明 |
① フィルターと検索エリア | オブジェクト名またはルール名で検索できます。 ルールタイプ、ルールテンプレート、ルール強度、ドライランステータス、有効ステータス、ルールソースでフィルタリングできます。 説明 品質ルールのビジネス属性が検索やフィルターの対象として設定され、かつ有効になっている場合、その属性で検索またはフィルタリングができます。 |
② リストエリア | オブジェクトタイプ/名前、ルール名/ID、ドライランステータス、有効ステータス、ルールタイプ、ルールテンプレート、ルール強度、スケジュールタイプ、および関連するナレッジベースドキュメント情報を表示します。[Refresh] ボタンの前にある
|
③ 操作エリア | ルールの表示、複製、編集、ドライラン、実行、スケジュール設定、ナレッジベースドキュメントの関連付け、品質スコアの設定、および削除ができます。
|
④ バッチ操作エリア | ドライラン、実行、スケジュール設定、有効化、無効化、ビジネス属性の変更、ナレッジベースドキュメントの関連付け、品質スコアの設定、ルールのエクスポート、削除などのバッチ操作を実行できます。
|
スケジュールの作成
品質ルールのスケジュールを設定する際は、既存のスケジュールを基にすばやく作成できます。1 つのテーブルにつき、最大 20 件のスケジュールを設定できます。
1 つの品質ルールに設定できるスケジュールは最大 10 件です。
同一の構成を持つスケジュールは自動的に重複排除されます。
Hologres のパーティションテーブルの場合は、固定タスクによってトリガーされるスケジュールを使用することを推奨します。
チェック範囲は、品質チェック文のフィルタ条件として機能し、チェック対象データを定義します。品質レポートなどのダウンストリームコンポーネントも、チェック範囲を基本の粒度単位として使用します。
[Quality Rule Details] ページで [Scheduling Configuration] タブをクリックし、[Create Schedule] をクリックして [Create Schedule] ダイアログボックスを開きます。
[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] に基づいて条件を設定できます。例:

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

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

説明少なくとも 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 で結合されます。品質チェックでは、システムが両方の条件を適用してデータをフィルタリングします。
チェック範囲式はフルテーブルスキャンをサポートしています。
注: フルテーブルスキャンは多くのリソースを消費し、すべてのエンジンでサポートされているわけではありません。フルテーブルスキャンを避けるため、パーティション式を設定してください。
[チェック範囲プレビュー]:デフォルトでは、現在のビジネス日付に対するプレビューが表示されます。
[OK] をクリックして、スケジューリング設定を完了します。
スケジューリング設定リスト
スケジュールを作成した後は、スケジューリング設定リストで表示、編集、複製、削除できます。

領域 | 説明 |
① フィルタ/検索領域 | スケジュール名で検索できます。 [時間ベースのスケジュール]、[データ更新によってトリガーされるスケジュール]、[固定タスクによってトリガーされるスケジュール] でフィルタリングできます。 |
② リスト領域 | 各スケジューリング設定について、[スケジュール名]、[スケジュールタイプ]、[最終更新者]、[最終更新時刻] が表示されます。 |
③ 操作領域 | スケジュールの編集、複製、削除を行えます。
|
アラート設定
ルールごとに異なるアラート設定を構成することで、アラートを区別できます。たとえば、強いルールによる異常には電話アラートを設定し、弱いルールによる異常には SMS アラートを設定できます。ルールが複数のアラート設定に一致する場合は、どれを適用するかを決定するために有効なポリシーを設定できます。
監視対象ごとに、最大 20 件のアラート設定を作成できます。
[Quality Rule Details] ページで [Alert configuration] タブをクリックし、[Create Alert Configuration] をクリックします。[Create Alert Configuration] ダイアログボックスが表示されます。
[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] で管理できます。
[OK] をクリックして、アラート設定を保存します。
アラート設定リスト
アラート設定を作成した後は、リストから並べ替え、編集、削除できます。

番号 | 説明 |
① 並べ替え領域 | 品質ルールが複数のアラート設定に一致する場合に適用する有効なポリシーを設定します:
|
② リスト領域 | この領域には、各アラート設定の名前、有効なスコープ、受信者、および対応する通知方法が表示されます。 [有効なスコープ]:カスタムスコープのアラート設定の場合、設定された監視対象とルールの名前を確認できます。ルールを削除すると、名前が表示されなくなります。この場合は、アラート設定を更新してください。 |
③ 操作領域 | アラート設定を編集または削除できます。
|
例外アーカイブテーブルの追加
例外アーカイブテーブルには、品質ルールに違反したレコードが格納されます。
[品質ルール詳細] ページで、[例外アーカイブ] タブをクリックし、[+ 例外アーカイブテーブルの追加] をクリックして [例外アーカイブテーブルの追加] ダイアログボックスを開きます。
[例外アーカイブテーブルの追加] ダイアログボックスで、パラメーターを設定します。
[メソッド] には、[テーブルの作成] と [既存テーブルの選択] の 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 'チェック日 (パーティションフィールド)');
[OK] をクリックして、例外アーカイブテーブルを追加します。
[作成後にアクティブアーカイブテーブルとして設定] チェックボックスを選択できます。これにより、新しい品質ルールを作成する際に、このテーブルが例外データの保存先として自動的に選択されるようになります。
例外アーカイブテーブルリスト
例外アーカイブテーブルを追加すると、システムはデフォルトでそのテーブルをアクティブアーカイブテーブルとして設定します。例外アーカイブテーブルの名前をクリックすると、そのテーブル構造を表示できます。リスト内の他のテーブルに対して、次の操作を実行することもできます。
[Set as active archive table]:テーブルをアクティブアーカイブテーブルとして設定すると、カスタムアーカイブ用に設定された品質ルールは、その例外データをこのテーブルに送信します。
[Delete]:この操作は例外アーカイブテーブルへの参照を削除しますが、物理テーブルは削除しません。必要に応じて、後で参照を再度追加できます。
品質レポート
[品質レポート]をクリックして、現在の品質ルールの[ルールチェックの概要]と[ルールチェックの詳細]を表示します。
異常結果、パーティション時間、またはルール名やオブジェクト名のキーワードを使用することで、ルールチェックの詳細をすばやくフィルタリングできます。
ルールチェックの詳細リストで、[操作] 列の
アイコンをクリックして、該当するルールのルールチェックの詳細を表示します。ルールチェックの詳細リストで、[操作] 列の
アイコンをクリックして、該当するルールの実行ログを表示します。
品質ルールの権限管理
[権限管理] をクリックして、[詳細表示] 設定を構成します。この設定では、誰が検証レコード、品質ルール、および品質レポートの詳細を閲覧できるかを制御します。
[詳細の表示]:[すべてのメンバー] または [現在のオブジェクトの品質管理権限を持つメンバーのみ] を選択できます。
[OK] をクリックして権限管理設定を保存します。
次のステップ
品質ルールを設定した後、 [Dataphin Table Rules] ページで品質ルールを表示できます。詳細については、「監視対象リストの表示」または「」をご参照ください。
