本記事では、検証オブジェクトのマッチングルールに関する背景情報、制限事項、および設定方法について説明します。
背景情報
データ検証タスクを新規作成する際、オブジェクトの指定、CSVファイルのインポート、およびマッチングルールの指定という3つの方法で具体的な検証対象を指定できます。その中でもマッチングルール方式では、ワイルドカードルールを記述して検証オブジェクトを指定できるほか、データ送信元およびデータ送信先のオブジェクトマッピングロジックを設定することも可能です。シンプルで効率的な文字列マッチング機能により、検証オブジェクトのデータ数が多い場合でも設定の難易度を大幅に低減できます。
データ検証でサポートされているワイルドカードルールとその要件は以下のとおりです。
カテゴリ |
サポートされるワイルドカード規則 |
例 |
説明 |
|---|---|---|---|
| データ送信元/データ送信先のデータベース内のテーブル一致 | *.* | kd_test*.person* | データ送信元/データ送信先でkd_testで始まるすべてのデータベース内の person で始まるすべてのテーブルを一対一で照合します。 |
| データ送信元/データ送信先のデータベース内のテーブル一致 | *.<データ送信元のテーブル> | kd_test*.person | データ送信元/データ送信先でkd_testで始まるすべてのデータベース内の person という名前のテーブルを一対一で照合します。 |
| データ送信元/データ送信先のデータベース内のテーブル一致 | <データ送信元のデータベース>.* | kd_test.person* | データ送信元/データ送信先で kd_test という名前のデータベース内のperson で始まるすべてのテーブルを一対一で照合します。 |
| データ送信元/データ送信先のデータベース内のテーブル一致 | <データ送信元のデータベース>.<データ送信元のテーブル> | kd_test.person | データ送信元/データ送信先で kd_test という名前のデータベース内のperson という名前のテーブルを一対一で照合します。 |
| データ送信元/データ送信先のデータベース内のテーブル名の変更 | <データ送信元のデータベース>.<データ送信元のテーブル>=<データ送信先のデータベース>.<データ送信先のテーブル> | kd_test.person=kd_test_new.person_new | データ送信元の kd_test という名前のデータベース内の person という名前のテーブルと、データ送信先の kd_test_new という名前のデータベース内の person_new という名前のテーブルを一対一で照合します。 |
| データ送信元/データ送信先のデータベース内のテーブル名の変更 | <データ送信元のデータベース>.*=<データ送信先のデータベース>.* | kd_test.person*=kd_test_new.person* | データ送信元の kd_test という名前のデータベース内の、person で始まるすべてのテーブルと、データ送信先の kd_test_new という名前のデータベース内のperson で始まるすべてのテーブルを一対一で照合します。 |
| データ送信元/データ送信先のデータベース・テーブル名の変更 | *.<データ送信元のテーブル>=*.<データ送信先のテーブル> | kd_test*.person=kd_test_new*.person_new | データ送信元のkd_test で始まるすべてのデータベース内の person という名前のテーブルと、データ送信先のkd_test_new で始まるすべてのデータベース内の person_new という名前のテーブルを一対一で照合します。 |
| データベース内のテーブルの集約 | <データ送信元のデータベース>.*=<データ送信先のデータベース>.<データ送信先のテーブル> | kd_test.person*=kd_test.person_all | データ送信元の kd_test という名前のデータベース内のperson で始まるすべてのテーブルと、データ送信先の kd_test という名前のデータベース内のperson_all という名前のテーブルをデータ照合します。 |
| データベース内のテーブルの集約 | *.<データ送信元のテーブル>=<データ送信先のデータベース>.<データ送信先のテーブル> | kd_test*.person=kd_test_all.person | データ送信元のkd_test で始まるすべてのデータベース内のperson という名前のテーブルとデータ送信先の kd_test_all データベース内のperson という名前のテーブルをデータ照合します。 |
| データベース内のテーブルの集約 | *.*=<データ送信先のデータベース>.<データ送信先のテーブル> | kd_test*.person*=kd_test_all.person_all | データ送信元のkd_test で始まるすべてのデータベース内のperson という名前で始まるすべてのテーブルと、データ送信先の kd_test_all データベース内のperson_all という名前のテーブルをデータ照合します。 |
| データベース内のテーブルの集約 | *.*=<データ送信先のデータベース>.* | kd_test*.person*=kd_test_all.person* | データ送信元のkd_test で始まるすべてのデータベース内のperson で始まるすべてのテーブルと、データ送信先の kd_test_all という名前のデータベース内のperson で始まるすべてのテーブルをデータ照合します。 |
| データベース内のテーブルの集約 | *.*=*.<データ送信先のテーブル> | kd_test*.person*=kd_test*.person_all | データ送信元のkd_test で始まるすべてのデータベース内のperson で始まるすべてのテーブルと、データ送信先のkd_test で始まるすべてのデータベース内のperson_all という名前のテーブルをデータ照合します。 |
ワイルドカードルールの要件は以下のとおりです:
データ送信先のデータベース名とテーブル名は同時にワイルドカードルールとして指定することはできません。例:
kd_test*.person*=kd_test*.person*。データ送信元のデータベースとデータ送信先のデータベースがどちらもワイルドカードルールの場合、データベースレベルの式は完全に一致している必要があります。
データ送信元のテーブルとデータ送信先のテーブルがどちらもワイルドカードルールの場合、テーブルレベルの式は完全に一致している必要があります。
データ送信先のデータベースがワイルドカードルールの場合、データ送信元のデータベースもワイルドカードルールである必要があります。
データ送信先のテーブルがワイルドカードルールの場合、データ送信元のテーブルもワイルドカードルールである必要があります。
制限事項
データ検証では複数のルールを入力できますが、各ルールは1行に収めてください。また、前後にスペースを含めることはできません。
検証対象ルールは空にすることはできませんが、除外対象ルールは空にすることができます。
ルールマッチングにより検証対象を選択する場合、テーブル名に特殊文字(改行、スペース、および .|"'`()=;/&*?[][!] を含む場合はサポートされません。
データ検証では、複数のマッチングルールを使用して、データ送信元の同一データベース内の異なるテーブルをデータ送信先の異なるデータベースにマッピングすることはできません。例:
a.a* = b.a* & a.b* = c.b*。
注意事項
検証対象ルールと除外対象ルールの設定が完了した後、データ送信元のテーブル名が検証対象ルールと除外対象ルールの差集合に含まれる場合、該当するオブジェクトを選択できます。
説明
差集合とは、与えられた2つの集合について、最初の集合には存在するが2番目の集合には存在しないすべての要素を含む新しい集合を返すことです。
テーブルにリネームマッピングが存在する場合、リネームマッピングが優先されます。例えば、ルール
a.b[0-3]とa.b[3-5]=a.cの両方が存在する場合、テーブルa.b3はa.cにリネームされます。
マッチングルールの設定
データ検証タスクを新規作成し、タイプとオブジェクトの選択 の手順に従って設定します。
詳細については、データ検証タスクの新規作成を参照してください。
タイプとオブジェクトの選択 の手順で、検証タイプと検証対象を選択します。
オブジェクトの指定 と マッチングルール の2つのエントリから検証対象を選択できます。本記事では、マッチングルールの設定方法のみを紹介します。
検証オブジェクト エリアで、マッチングルール を選択します。

オブジェクトの選択 エリアに、検証オブジェクトルール と 除外オブジェクトルール を入力します(オプション)。サポートされているワイルドカードの詳細については、ワイルドカードルールの説明を参照してください。
検証 をクリックします。
マッチング結果を確認する必要がある場合は、検証が成功した後に プレビュー をクリックして確認してください。入力したワイルドカードによる検証対象ルールと除外対象ルールは、テーブルにのみ適用されます。実行結果 には、最終オブジェクト、新規オブジェクト、削除オブジェクトが含まれます。
オブジェクト説明最終オブジェクト 設定されたマッチングルールで最終的に一致した検証オブジェクト。 新規オブジェクト 最終マッチング結果と前回設定のマッチング結果を比較して、新規に追加された検証オブジェクト。 減少オブジェクト 最終マッチング結果と前回設定のマッチング結果を比較して、減少した検証オブジェクト。
プロンプトに従って、後続のタスク設定を完了します。