Intraflow Match Spark ジョブの使用

  1. AdvanceMatchFactoryのインスタンスを、その静的メソッド getInstance() を使用して作成します。
  2. Intraflow Match ジョブの入力と出力の詳細を指定します。以下の手順に従って、ProcessType を指定する IntraMatchDetail のインスタンスを作成することによって、これを行います。このインスタンスは、SparkProcessType タイプを使用する必要があります。
    1. GroupbyOption のインスタンスを作成することによって、レコードのグループ化に使用する列を指定します。
      GroupbySparkOption のインスタンスを使用して、Group-By 列を指定します。
    2. MatchRuleのインスタンスを作成することによって、ジョブのマッチング ルールを生成します。
    3. IntraMatchDetail のインスタンスを作成します。JobConfig タイプのインスタンスと、上で作成した GroupbyOption インスタンスおよび MatchRule インスタンスを、コンストラクタの引数として渡します。
      JobConfig パラメータは、SparkJobConfig タイプのインスタンスである必要があります。
    4. inputPathインスタンスの IntraMatchDetail フィールドを使用して、入力ファイルの詳細を設定します。
      テキスト入力ファイルの場合は、適切なコンストラクタを呼び出して、関連する詳細な入力ファイル情報を指定してFilePathのインスタンスを作成します。ORC 入力ファイルの場合、ORC 入力ファイルのパスを引数に指定して OrcFilePathのインスタンスを作成します。
    5. outputPathインスタンスの IntraMatchDetail フィールドを使用して、出力ファイルの詳細を設定します。
      テキスト出力ファイルの場合は、適切なコンストラクタを呼び出して、関連する詳細な出力ファイル情報を指定してFilePathのインスタンスを作成します。ORC 出力ファイルの場合、ORC 出力ファイルのパスを引数に指定して OrcFilePathのインスタンスを作成します。
    6. jobNameインスタンスの IntraMatchDetail フィールドを使用して、ジョブの名前を設定します。
    7. 必要に応じて、expressMatchColumnインスタンスの IntraMatchDetail フィールドを使用して、Express マッチ列を設定します。
    8. ユニーク レコードにコレクション番号 0 (ゼロ) を割り当てる場合は、collectionNumberZerotoUniqueRecordsインスタンスの IntraMatchDetail フラグに true を設定します。デフォルトは true です。
      ユニーク レコードにコレクション番号 0 を割り当てたくない場合は、このフラグに false を設定します。
    9. compressOutputインスタンスの IntraMatchDetail フラグに true を設定して、ジョブの出力を圧縮します。
    10. 入力データにマッチ キーがない場合は、マッチ キー設定を指定して、Intraflow Match ジョブを実行する前にまず、Match Key Generator ジョブを実行してマッチ キーを生成する必要があります。
      入力データのマッチ キーを生成するには、MatchKeySettingsのインスタンスを作成および設定することによってマッチ キー設定を指定し、Intraflow マッチングを実行する前にマッチ キーを生成します。matchKeySettingsインスタンスの IntraMatchDetail フィールドを使用して、このインスタンスを設定します。
      注: マッチ キー設定方法については、コード サンプルを参照してください。
  3. Spark ジョブを作成して実行するには、先ほど作成した AdvanceMatchFactory のインスタンスを使用してそのメソッド runSparkJob() を呼び出します。ここで、上の IntraMatchDetail のインスタンスを引数として渡します。
    runSparkJob() メソッドはジョブを実行し、ジョブのレポート カウンタの Map を返します。
  4. カウンタを表示することにより、ジョブに対する統計レポートを表示します。