Dataphin では、データソースの接続性とテーブル構造の変更をモニタリングできます。品質ルールを使用して、データソースの接続性や構造の変更を定期的にチェックし、例外が発生した場合のアラートを設定できます。これにより、データソースの接続性およびテーブル構造のリアルタイムの状態を把握できます。
前提条件
品質ルールを設定する前に、モニタリングオブジェクトを追加する必要があります。詳細については、「モニタリングオブジェクトの追加」をご参照ください。
制限事項
Dataphin では、任意のデータソースに対して品質ルールを作成できます。接続性テストはすべてのデータソースでサポートされています。ただし、テーブル構造の変更のモニタリングは、一部のデータソースでのみ使用できます。詳細については、「Dataphin でサポートされるデータソース」をご参照ください。
権限
スーパー管理者、品質管理者、データソース所有者、および[品質ルール] - [管理] 権限を含むカスタムグローバルロールを持つユーザーは、品質ルールのスケジュールとアラートを設定できます。
品質所有者および一般ユーザーには、データソースに対する同期読み取り権限が必要です。データソース権限を申請するには、「データソース権限の申請」をご参照ください。
サポートされる操作はオブジェクトによって異なります。詳細については、「品質ルールの操作権限」をご参照ください。
トライアル実行と実行の違い
トライアル実行と通常の実行の違いは、実行方法と結果の表示先です。トライアル実行は、品質ルールの正確性とパフォーマンスを確認するためのシミュレーション実行です。トライアル実行の結果は品質レポートには表示されません。実行は、指定した時刻に品質ルールを実行し、その結果が品質レポートに表示されます。
品質ルールの設定
Dataphin コンソールで、上部のナビゲーションバーから [ガバナンス] > [データ品質] を選択します。
左側のナビゲーションペインで、[クオリティルール] をクリックします。[データソース] タブで、対象のオブジェクトの名前をクリックして [クオリティルールの詳細] ページに移動します。
[クオリティルール詳細] ページで、[クオリティルールを作成] をクリックします。
[品質ルールの作成] ダイアログボックスで、パラメーターを設定します。
パラメータ
説明
基本情報
[ルール名]
品質ルールの名前を任意で入力します。名前は最大 256 文字まで指定できます。
[ルール強度]
有効な値は[弱いルール]と[強いルール]です。
[弱ルール]:[弱ルール] を選択した場合、品質チェックが失敗するとアラートがトリガーされますが、下流タスクノードはブロックされません。
[強いルール]: [強いルール] を選択した場合、品質チェックが失敗するとアラートがトリガーされます。 下流タスク (例: コードチェックやタスクによってトリガーされるスケジュール) がある場合、不正なデータが拡散するのを防ぐために、これらのタスクはブロックされます。 下流タスク (例: 定期的な品質スケジュール) がない場合、アラートのみがトリガーされます。
[説明]
品質ルールの説明を任意で入力します。説明は最大 128 文字まで指定できます。
[ルールテンプレート]
[安定性] のみに対応しています。このテンプレートには[データソース接続性の監視] と [テーブル構造変更の監視] が含まれています。
[接続性のモニタリング]:Dataphin のデータソースへの接続失敗をモニタリングします。失敗はネットワーク変更や認証情報の誤りが原因で発生し、タスクエラーにつながる場合があります。接続性の変更が検出されるとアラートがトリガーされます。
[テーブル構造の変更]:上流テーブルの構造変更 (フィールド名の変更、追加、削除など) をモニタリングします。これらの変更は下流タスクのエラーにつながる可能性があります。テーブル構造の変更が検出されるとアラートがトリガーされます。
[ルールタイプ]
ルールタイプはテンプレートに関連付けられた基本属性で、説明やフィルタリングの目的で使用します。
ルール設定
[チェック対象テーブルの選択]
このパラメーターは、ルールテンプレートに [テーブル構造変更の監視] を選択した場合にのみ有効です。データベースまたはスキーマに基づいて、チェックするデータテーブルを選択します。
ビジネスプロパティ設定
プロパティ情報
ビジネスプロパティの入力要件は、品質ルール属性の設定方法によって異なります。たとえば、管理部門属性が複数の列挙値 (ビッグデータ部門、事業部門、技術部門など) を許可するように設定されている場合、品質ルールの作成時にドロップダウンリストから複数の値を選択できます。
ルール所有者属性が長さ上限 256 文字のカスタム入力に設定されている場合、最大 256 文字まで任意のテキストを入力できます。
属性フィールドが [Range] に設定されている場合は、次のとおり設定します。
範囲: 通常、連続した数値または日付の範囲に使用され、[>]、[>=]、[<]、および [<=] 演算子を使用できます。属性設定の詳細については、「品質ルールの属性を作成および管理する」をご参照ください。
スケジューリング設定
[スケジューリング方法]
既存のスケジュールを選択できます。スケジューリング方法が未定の場合は、品質ルールの作成後に設定できます。新しいスケジュールを作成するには、「スケジュールの作成」をご参照ください。
[OK] をクリックして、ルール設定を保存します。
ルール設定リスト
ルール設定リストでは、設定済みのデータソースルールを確認し、表示、編集、トライアル実行、実行、削除などの操作を実行できます。

エリア | 説明 |
① フィルタ/検索エリア | オブジェクト名またはルール名で素早く検索できます。 ルールタイプ、ルールテンプレート、ルール強度、トライアル実行ステータス、または有効ステータスでフィルタリングできます。 説明 ビジネス属性が検索またはフィルタリング可能として設定されており、かつ有効化されている場合は、その属性を使用してルールを検索またはフィルタリングできます。 |
② リストエリア | オブジェクトタイプ/名前、ルール名/ID、トライアル実行ステータス、有効ステータス、ルールタイプ、ルールテンプレート、ルール強度、スケジューリングタイプ、および関連するナレッジベースドキュメントを表示します。更新ボタンの横にある
|
③ 操作エリア | [View]、[Clone]、[Edit]、[Trial Run]、[Run]、[Scheduling Configuration]、[Associate Knowledge Base Documents]、[Delete] の各操作を実行できます。
|
④ 一括操作エリア | [Trial Run]、[Run]、[Configure Schedule]、[Enable]、[Disable]、[Modify Business Properties]、[Associate Knowledge Base Documents]、[Delete] の各操作を一括で実行できます。
|
スケジュールの作成
ルールのスケジュールを設定する際は、現在のテーブルの既存スケジュールから選択できます。各テーブルでサポートされるスケジュールは最大 20 件です。
1 つのルールに設定できるスケジュールは最大 10 件です。
Dataphin は、同一設定の重複スケジュールを自動的に削除します。
[品質ルールの詳細] ページで [スケジューリング設定] タブをクリックし、次に [スケジュールの作成] をクリックして [スケジュールの作成] ダイアログボックスを開きます。
[Create Schedule] ダイアログボックスで、パラメータを設定します。
パラメータ
説明
スケジュール名
スケジュールの名前を任意で入力します。名前は最大 64 文字まで指定できます。
スケジューリングタイプ
有効な値は[定時スケジューリング] と [固定タスクによるスケジューリング] です。
[時間指定スケジューリング]:設定したスケジュールに基づき、データ品質チェックを定期的に実行します。データが比較的固定の時刻に生成されるシナリオに適しています。
[スケジューリング周期]: 品質ルールの実行はコンピューティングリソースを消費します。本番タスクへの影響を避けるため、複数の品質ルールを同時に実行することは避けてください。有効なスケジューリング周期は[日]、[週]、[月]、[時間]、および[分]です。
システムのタイムゾーン (ユーザーセンターのタイムゾーン) がスケジューリングのタイムゾーン ([Management Center] > [System Settings] > [Basic Settings] で設定) と異なる場合、ルールはシステムのタイムゾーンに基づいて実行されます。
[固定タスクトリガーによるスケジューリング]:指定したタスクが正常に実行される前または後に品質ルールを実行します。ルールをトリガーするタスクとして、SQL、Offline Pipeline、Python、Shell、Virtual、Dlink、Spark_jar、Hive_MR、および Database 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 (compute engine)、Transwarp TDH 6.x、Transwarp TDH 9.3.x です。
[実行タイミング]:品質チェックを実行するタイミングを選択します。有効な値は[すべてのタスクが正常に実行された後にトリガー]、[各タスクが正常に実行されるたびにトリガー]、および[各タスクが実行される前にトリガー]です。
[トリガータスク]:次のロールを持つユーザーは、本番プロジェクトのタスクノードを選択してタスクをトリガーできます。ノード出力名で検索することもできます。
Prod/Basic プロジェクトのプロジェクト管理者、Prod プロジェクトの O&M システムロール、Basic プロジェクトの開発者システムロール、および Prod/Basic プロジェクトで [プロジェクト品質管理] - [品質ルール管理] 権限を持つカスタムプロジェクトロールは、本番プロジェクトでタスクノードを選択できます。
[品質ルール] - [管理] 権限を含むカスタムグローバルロールを持つユーザーは、任意のプロダクションプロジェクトからタスクノードを選択できます。
説明トリガー時刻を [Trigger After All Tasks Run Successfully] に設定する場合は、同じスケジューリングサイクルを持つトリガータスクを選択してください。これにより、ルール実行の遅延を防ぎ、品質チェック結果を適時に取得できます。
[スケジューリング条件]
デフォルトでは無効です。この機能を有効にすると、品質ルールをスケジュールする前にスケジューリング条件が満たされているかどうかをシステムがチェックします。条件が満たされている場合にのみルールが実行され、満たされていない場合は実行がスキップされます。
[業務日]/[実行日]: スケジューリングタイプが [時間ベーススケジューリング] (実行日はサポートされていません)、[コードチェックトリガースケジューリング]、または [固定タスクによるトリガースケジューリング] の場合に日付を設定できます。[一般カレンダー] または [カスタムカレンダー] を選択できます。カスタムカレンダーの作成方法の詳細については、「パブリックカレンダーの作成」をご参照ください。
[一般カレンダー] を選択した場合、[月]、[曜日]、および [日付] に基づいて条件を設定できます。 例:

[カスタムカレンダー] を選択すると、[日付タイプ] と [タグ] に基づいて条件を設定できます。たとえば:

[インスタンスタイプ]: スケジューリングタイプが [コードチェックトリガースケジューリング] または [固定タスクによるスケジューリング] の場合、インスタンスタイプを設定できます。 有効な値は [定時インスタンス]、[補完インスタンス]、および [手動インスタンス] です。 たとえば、

説明少なくとも 1 つのルールを設定する必要があります。ルールを追加するには、[+ルールの追加] をクリックします。
設定できるスケジューリング条件は最大 10 件です。
スケジューリング条件間の関係は AND または OR に設定できます。
[OK] をクリックして、スケジュール設定を保存します。
スケジューリング設定リスト
スケジュールを作成した後は、スケジューリング設定リストで表示、編集、複製、削除できます。

エリア | 説明 |
① フィルタ/検索エリア | スケジュール名で素早く検索できます。 [定時スケジューリング]、[固定タスク]、または [トリガースケジューリング] で絞り込むことができます。 |
② リストエリア | 各ルール設定の[スケジュール名]、[スケジューリングタイプ]、[最終更新者]、[最終更新日時]を表示します。 |
③ 操作エリア | スケジュールを編集、複製、削除できます。
|
アラートの設定
ルールごとに異なるアラート方法を設定できます。たとえば、強いルールの失敗には電話アラートを設定し、弱いルールの失敗には SMS アラートを設定できます。ルールが複数のアラート設定に一致する場合は、どのアラートを有効にするかを決定するポリシーを設定できます。
1 つのモニタリングオブジェクトに対して作成できるアラート設定は最大 20 件です。
[品質ルール詳細] ページで、[アラート設定] タブをクリックし、次に [アラート設定の作成] ボタンをクリックすると、[アラート設定の作成] ダイアログボックスが開きます。
[アラート設定の作成] ダイアログボックスで、パラメーターを設定します。
パラメータ
説明
[有効範囲]
有効な値は[すべてのルール]、[すべての強力なルール]、[すべての弱いルール]、および[カスタム]です。
説明1 つのモニタリングオブジェクトに対して、[All Rules]、[All strong rules]、[All weak rules] の各有効範囲ごとに 1 件のアラート設定を作成できます。新しいルールは、ルール強度に基づいて対応するアラートに自動的に一致します。これらのアラート設定を変更するには、既存の設定を編集する必要があります。
[Custom] の有効範囲では、現在のモニタリングオブジェクトに設定済みのルールから最大 200 件を選択できます。
[アラート設定名]
アラート設定名は、1 つのモニタリングオブジェクト内で一意である必要があります。名前は最大 256 文字まで指定できます。
[アラート受信者]
アラート受信者とアラート方法を設定します。少なくとも 1 人のアラート受信者と 1 つのアラート方法を選択する必要があります。
[アラート受信者]:カスタム、当番スケジュール、品質所有者の 3 種類のアラート受信者をサポートします。
カスタムのアラート受信者は最大 5 人、当番スケジュールは最大 3 件まで設定できます。
[アラート方法]:Phone、Email、SMS、DingTalk、Feishu、WeCom、custom channels を選択できます。これらのチャネルは channel configuration settings で管理できます。
[OK] をクリックしてアラート設定を保存します。
アラート設定リスト
アラートを設定した後は、アラート設定リストで並べ替え、編集、削除できます。

エリア | 説明 |
① 並べ替えエリア | 品質ルールが複数のアラート設定に一致する場合に適用するポリシーを設定します:
|
② リストエリア | アラート設定名、有効範囲、およびアラートタイプごとの受信者と方法を表示します。 [有効範囲]:有効範囲列でルールの横にある [View] アイコンをクリックすると、その範囲を確認できます。[Custom] アラートでは、オブジェクト名とルール名のみ表示できます。ルールが削除された場合、オブジェクト名は表示できません。この場合はアラート設定を更新してください。 |
③ 操作エリア | 設定済みのアラートを編集または削除できます。
|
品質レポートの表示
[Quality Report] をクリックすると、現在の品質ルールの [Rule Check Overview] と [Rule Check Details] を確認できます。
例外結果、パーティション時刻、またはルール/オブジェクト名のキーワードでチェック詳細を素早くフィルタリングできます。
ルールチェック詳細リストの Operations 列で
アイコンをクリックすると、品質ルールのチェック詳細を確認できます。ルールチェック詳細リストの Operations 列で
アイコンをクリックすると、品質ルールの実行ログを確認できます。
権限管理
[権限管理] をクリックして [表示可能な詳細] を設定します。この設定では、どのメンバーがチェックレコードの詳細、品質ルールの詳細、および品質レポートを表示できるかを制御します。
[表示範囲]: [すべてのメンバー] または [現在のオブジェクトの品質管理権限を持つメンバーのみ] を選択できます。
[OK] をクリックして権限管理設定を保存します。
次のステップ
品質ルールを設定した後、データソースルールページで確認できます。詳細については、「モニタリングオブジェクトリストの管理」をご参照ください。
