再現可能な出力
再現可能なマスキングの出力により、確定的な値が返されます。あるマスキングタスクを何度も実行し、実行のたびに同じマスク値を返す必要がある場合、再現可能なマスキングを使用します。
再現可能な出力は、複数のソーステーブル内に同じ値が存在し、マスクされた値をすべてのターゲットテーブルに返す場合に設定します。ターゲットデータベース内のテーブルは、一貫したマスク値を受け取ります。
例えば、John Smithという顧客に2つのアカウント番号(1234と5678)があり、アカウント番号が複数のテーブルにあるとします。マスキングタスクでは、すべてのテーブルにおいて、John Smithの名前はFrank Martinezに、アカウント番号1234は6549に、アカウント番号5678は3214に常にマスクされます。
再現可能な出力を設定する場合は、シード値を入力します。置換マスキングを使用するときは、置換できるデータ値を含むディクショナリファイルを設定できます。再現可能な出力を設定すると、ソースデータ内に特定の値が出現する場合は常に、マスキングタスクはディクショナリから同じ値を返します。
シード値
マスキング出力に対して再現可能な出力を作成するには、シード値を適用します。シード値は、マスキングされた値を生成する開始ポイントです。
シード値は1から999までの範囲で定義できます。デフォルトのシード値は190です。別のソースデータから同じマスクされたデータ値を返すには、フィールドに同じシード値を適用します。例えば、4つのテーブルに同じCust_IDフィールドが存在し、その4つのテーブルすべてから同じマスク値の出力を生成する場合は、各フィールドをマスクする際に同じシード値を適用します。
シード値をパラメータとして入力できます。シード値パラメータの名前は$$で始まる必要があります。名前にアンダースコア(_)を含めることはできますが、他の特殊文字を含めることはできません。必要なパラメータと値をパラメータファイルに追加し、実行時にパラメータファイル名を指定します。
ソースデータ型がNumericの場合、ランダムおよびカスタムマスキングルールにシード値を使用することはできません。
ディクショナリの使用の最適化
[ディクショナリ出力の最適化]オプションは、マスキングのためのディクショナリ値の使用を増やし、ターゲット内の重複するディクショナリ値を減らします。
置換マスキングまたはカスタム置換マスキングを実行する場合は、ディクショナリの使用を最適化するという選択ができます。ワークフローは、選択したディクショナリの一部の値を使用してソースデータをマスクします。これらのディクショナリ値は、すべてのソースデータがターゲットでマスクされるように、複数のエントリに対して使用される場合があります。ディクショナリの使用を最適化すると、ディクショナリ値が重複して使用される可能性が低減されます。ディクショナリの出力を最適化するには、再現可能な出力のマスキングルールを設定する必要があります。
一意の置換
一意の置換マスキングを設定すると、一意のソース値ごとに一意のディクショナリ値が使用されます。
ソース値を一意のディクショナリ値でマスクするには、一意の置換マスキングを設定します。ソース値が特定のディクショナリ値でマスクされている場合、他のソース値はこのディクショナリ値ではマスクされません。
例えば、ソースデータの[名前]カラムにJohnという複数のエントリが含まれているとします。再現可能なマスキングを設定した場合、Johnというすべてのエントリは、Xyzaなどの同じディクショナリ値を取得します。ただし、他のソース値も同じディクショナリ値でマスクされる可能性があります。つまり、Jackというソースエントリで、ディクショナリ値Xyzaが使用されることもあります。その結果、JohnおよびJackというすべてのエントリで同じディクショナリ値が使用されます。一意の置換マスキングを設定した場合、Johnというすべてのソース値でXyzaというディクショナリ値が使用されると、他のソース値では同じディクショナリ値が使用されなくなります。
一意の置換マスキングには、ストレージテーブルに対するストレージ接続が必要です。ストレージテーブルには、一意の置換マスキングに必要なソースからディクショナリへの値のマッピング情報が含まれています。
注: ソースデータにディクショナリよりも多くの一意の値が含まれている場合、すべてのソースデータをマスクするために必要な一意のディクショナリ値が足りないため、マスキングは失敗します。