データサブセット
ソースからデータのサブセットを抽出し、マスキングタスクのターゲットに移動できます。
マスキングタスクでは、サブセットデータ内のプライマリキーと外部キーのリレーションが維持され、サブセットデータ内のオブジェクトのリレーションが調整されます。
[データフィルタ]ページから次のデータサブセットオプションを設定します。
- データフィルタ
- ソースに適用するデータフィルタです。オブジェクト用に簡単なデータフィルタまたは詳細なデータフィルタを作成できます。タスクの単一オブジェクトにフィルタを適用できます。複数のフィルタを同じオブジェクトに適用することもできます。タスクでは1つの詳細フィルタを追加できます。パラメータファイルのフィルタ値を使用してタスクでファイル名を指定することもできます。
- リレーション動作
- 複数のソースオブジェクトを選択する場合はリレーションを設定できます。データサブセット操作を実行する場合、マスキングタスクでは参照整合性を維持するためにオブジェクトのすべての親レコードを選択します。子オブジェクトを含めるように設定した場合、このタスクは子レコードを選択します。データフィルタを適用した後で子オブジェクトのリレーションを設定できます。データサブセットに含める子オブジェクトを選択できます。ソースオブジェクト間のリレーションをグラフで示すスキーマグラフを表示してダウンロードできます。
サブセット操作を計算するために必要な結合操作の数を表示できます。データサブセットを作成するためにタスクがレコードを選択する順序を表示します。
- サブセットの統計
- 行の合計数、サブセット行の数、各ソースオブジェクトのサブセットサイズなど、サブセットの統計を表示できます。ソースに含まれるデータの量が多く、サブセットを作成するターゲットの容量が十分ではない場合があります。ターゲットサイズを評価するために、データサブセットを推定できます。サブセットを推定した後、マスキングタスクのすべてのページで推定されたターゲットサイズを確認できます。推定されたターゲットサイズが大きい場合、タスクを更新してサブセットを再び推定できます。
複数のソースオブジェクトのデータサブセットサイズを推定できます。
データサブセットのオプション
[スケジュール]ページでデータサブセットのオプションを設定します。複数のソースオブジェクトを選択した場合は、データサブセットのオプションを表示できます。
次のデータサブセットのオプションを設定します。
- ステージング接続
- データサブセット操作を実行するためにタスクが使用する接続です。
- ソースルックアップバッチサイズ
- タスクがターゲットに書き込みを行うときに、1つのSOQLクエリでSalesforceソースから取得するレコード数です。最大レコード数はSalesforceの標準APIの方がBulk APIよりも多いいため、標準APIが使用されます。Salesforceに対するSOQLの最大文字数に基づいて、10 - 200の数を入力します。
- ステージングテーブルの削除
- タスク内にエラー行があっても、ステージングテーブルを削除します。
- データサブセットフィルタを設定してマスキングタスクを実行すると、タスクはステージング、サブセット計算、ターゲットロード、およびステージング削除の各フェーズを進みます。デフォルトでは、エラー行があると、タスクはステージングテーブルを削除しません。その場合は、エラーを修正してタスクを再開できます。タスクは、エラーが発生したフェーズから再開されます。Secure Agentマシンに保存されたステージングデータは、ストレージ領域を使用します。そのため、エラー行があってもステージングテーブルを削除するオプションを選択できます。
自動タスクリカバリ
マスキングタスクでは、サブセットを推定することが出来ます。サブセットを推定してからタスクを実行する場合、タスクは前のステージからリカバリされ、次のステージに進みます。
データサブセットフィルタを設定してマスキングタスクを実行すると、タスクはステージング、サブセットの推定、ターゲットロード、およびステージング削除の各ステージを進みます。
サブセットを推定してターゲットサブセットサイズを評価してからタスクを実行出来ます。[推定]をクリックすると、タスクはレコードをステージングし、サブセットを推定します。サブセットの推定後に[実行]をクリックすると、タスクはターゲットのロードを再開し、続いてステージングテーブルを削除します。
サブセットを推定せずにタスクを保存および実行すると、タスクはすべてのステージを進み、最後にステージングテーブルを削除します。
どのタスクにも、関連付けられたステージングスキーマがあります。タスクは、すべてのステージを進んだ後、エラーがなければステージングテーブルを削除します。ステージングテーブルの削除を選択しなかった場合、タスクはエラー行があるとステージングテーブルを削除しません。数日後に同じタスクを実行すると、タスクは古いデータに対してデータサブセット操作を実行します。更新されたデータを使用してタスクを実行するには、まずタスクをリセットする必要があります。タスクをリセットすると、タスクステータスは開始ステージに戻ります。その後で、サブセットを推定してからタスクを実行するか、または直接タスクを実行出来ます。どちらの場合も、タスクはステージングを進み、推定ステージを実行してから、テーブルをターゲットにロードします。
データフィルタのパラメータファイル
マスキングタスクでは、簡単なデータフィルタと詳細データフィルタでユーザー定義パラメータを使用できます。
フィルタにパラメータを使用する場合、フィルタの先頭にパラメータを指定するようにします。次のように、パラメータに名前を付けるには2つのドル記号を使用します: $$<パラメータ>
パラメータファイルを次のディレクトリにローカルで保存します。
<Secure Agent installation directory>/apps/Data_Integration_Server/data/userparameters
タスクウィザードのスケジュールページでパラメータファイル名を指定できます。パラメータ値はタスクが実行されるときに適用されます。
Example 1. 簡易フィルタの例
フィルタを取引先オブジェクトに適用するとします。作成日が$$paramに等しい必要があるというフィルタ条件を設定します。その後、次の内容でパラメータファイルを作成します。
$$param=('1991-10-03')
次の図は、パラメータを使用した簡易フィルタを示しています。
Example 2. 詳細フィルタの例
フィルタを取引先オブジェクトに適用するとします。[詳細データフィルタ]ダイアログボックスで、[取引先名]フィールドのすべての値を$$paramから取得するようにフィルタ式を指定できます。その後、次の内容でパラメータファイルを作成します。
$$param=('Apple' , 'Microsoft')
次の図は、パラメータを値として使用した詳細フィルタを示しています。
フィルタ式をパラメータとして指定することもできます。フィルタ式として「$$param」と入力します。その後、次の内容でパラメータファイルを作成します。
$$param=Name IN ('Apple' , 'Microsoft')
次の図は、パラメータを式として使用した詳細フィルタを示しています。