Uso de un trabajo MapReduce de Transactional Match
-
Cree una instancia de
AdvanceMatchFactory
con su método estáticogetInstance()
. -
Proporcione los detalles de entrada y salida del trabajo Transactional Match mediante la creación de una instancia de
TransactionalMatchDetail
que especifique elProcessType
. La instancia debe usar el tipo MRProcessType.-
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. -
Genere las reglas de cruce para el trabajo creando una instancia de
MatchRule
. -
Cree una instancia de
TransactionalMatchDetail
pasando una instancia del tipoJobConfig
, la instanciaGroupbyOption
creada y la instanciaMatchRule
creada anteriormente como los argumentos para su constructor.El parámetroJobConfig
debe ser una instancia de tipo MRJobConfig. -
Establezca los detalles del archivo de entrada mediante el campo
inputPath
de la instanciaTransactionalMatchDetail
.Para un archivo de entrada de texto, cree una instancia deFilePath
con los detalles relevantes del archivo de entrada mediante la invocación del constructor apropiado. Para un archivo de entrada ORC, cree una instancia deOrcFilePath
con la ruta del archivo de entrada ORC como argumento. -
Establezca los detalles del archivo de salida mediante el campo
outputPath
de la instanciaTransactionalMatchDetail
.Para un archivo de salida de texto, cree una instancia deFilePath
con los detalles relevantes del archivo de salida mediante la invocación del constructor apropiado. Para un archivo de salida ORC, cree una instancia deOrcFilePath
con la ruta del archivo de salida ORC como argumento. -
Establezca el nombre del trabajo mediante el campo
jobName
de la instanciaTransactionalMatchDetail
. -
Establezca la bandera
returnUniqueCandidates
de la instanciaTransactionalMatchDetail
en verdadero para obtener los registros de candidato único en la salida. El valor predeterminado es verdadero. -
Establezca la bandera
compressOutput
de la instanciaTransactionalMatchDetail
en verdadero para comprimir la salida del trabajo. -
Si los datos de entrada no tienen clave de cruce, debe especificar las configuraciones de clave de cruce para ejecutar, en primer lugar, el trabajo de Match Key Generator a fin de generar las claves de cruce antes de ejecutar el trabajo Transactional Match.
Para generar las claves de cruce de los datos de entrada, especifique las configuraciones de clave de cruce mediante la creación y la configuración de una instancia de
MatchKeySettings
para generar una clave de cruce antes de realizar el trabajo Transactional Match. Establezca esta instancia mediante el campomatchKeySettings
de la instanciaTransactionalMatchDetail
.Nota: Para averiguar cómo ajustar la configuración de claves de cruce, consulte las muestras de códigos.
-
Especifique la columna con la cual se agruparán los registros creando una instancia de
-
Para crear un trabajo MapReduce, utilice la instancia anteriormente creada de
AdvanceMatchFactory
para invocar el métodocreateJob()
. Aquí, pase la instancia anterior deTransactionalMatchDetail
como un argumento.El métodocreateJob()
crea un trabajo y devuelve unaList
de las instancias deControlledJob
. -
Ejecute el trabajo creado con el uso de una instancia de
JobControl
. -
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étodogetCounters()
, mediante el paso de un trabajo creado como un argumento.