Uso de trabajo MapReduce de Filter

  1. Cree una instancia de AdvanceMatchFactory con su método estático getInstance().
  2. Proporcione los detalles de entrada y salida del trabajo Filter mediante la creación de una instancia de FilterDetail que especifique el ProcessType. La instancia debe usar el tipo MRProcessType.
    1. Especifique la columna con la cual se agruparán los registros creando una instancia de GroupbyOption.
      Utilice una instancia de GroupbyMROption para especificar la columna por grupo y la cantidad de reductores que se necesitan.
    2. Genere las reglas de la consolidación para el trabajo creando una instancia de FilterConfiguration. Dentro de esta instancia, defina las condiciones de consolidación mediante el uso de las instancias de ConsolidationCondition y la conexión de las condiciones con el uso de operadores lógicos.
      Cada instancia deConsolidationCondition se define con el uso de una instancia ConsolidationRule y su instancia ConsolidationAction correspondiente.
      Nota: Cada instancia deConsolidationRule puede definirse con el uso de una instancia única de SimpleRule o con el uso de una jerarquía de instancias secundarias SimpleRule y de instancias anidadasConjoinedRule unidas con los operadores lógicos. Consulte Enum JoinType y Enum Operation.
    3. Cree una instancia de FilterDetail pasando una instancia del tipo JobConfig, la instancia GroupbyOption creada y la instancia FilterConfiguration creada anteriormente como los argumentos para su constructor.
      El parámetro JobConfig debe ser una instancia de tipo MRJobConfig.
    4. Establezca los detalles del archivo de entrada mediante el campo inputPath de la instancia FilterDetail.
      Para un archivo de entrada de texto, cree una instancia de FilePath con los detalles relevantes del archivo de entrada mediante la invocación del constructor apropiado. Para un archivo de entrada ORC, cree una instancia de OrcFilePath con la ruta del archivo de entrada ORC como argumento.
    5. Establezca los detalles del archivo de salida mediante el campo outputPath de la instancia FilterDetail.
      For a text output file, create an instance ofFilePath with the relevant details of the output file by invoking the appropriate constructor. For an ORC output file, create an instance of OrcFilePath with the path of the ORC output file as the argument.
    6. Establezca el nombre del trabajo mediante el campo jobName de la instancia FilterDetail.
    7. Establezca la bandera compressOutput de la instancia FilterDetail en verdadero para comprimir la salida del trabajo.
  3. Cree el trabajo usando la instancia anteriormente creada de AdvanceMatchFactory para invocar su método createJob(). Aquí, pase la instancia anterior de FilterDetail como un argumento.
    El método createJob() devuelve una List de instancias de ControlledJob.
  4. Ejecute el trabajo creado con el uso de una instancia de JobControl.
  5. Para mostrar que los contadores de informes publican una ejecución de trabajo MapReduce exitosa, use la instancia creada anteriormente AdvanceMatchFactory para invocar su método getCounters(), mediante el paso de un trabajo creado como un argumento.