Observando duplicados usando sqoop con Oozie

He creado un pograma sqoop para importar datos de MySQL a HDFS utilizando un trabajo sqoop preconstruido:

                sqoop job -fs $driver_path -D mapreduce.map.java.opts=" -Duser.timezone=Europe/Paris"\
            --create job_parquet_table -- import -m $nodes_number\
            --connect jdbc:mysql://$server:$port/$database --username $username --password-file $pass_file\
            --target-dir $destination_dir --table $table --as-parquetfile --append\
            --incremental append --check-column $id_column_names --last-value 1\
            --fields-terminated-by , --escaped-by \\ --enclosed-by '\"'

También he creado un programa de chispa que permite monitorear la importación de sqoop. En esto, he medido el max_id (SELECT Max (ID) de la tabla que se está importando, el sqoop incremental.last.value, el número de registros (SELECT count ()), el número de registros distintos (recuento SELECT (ID distinto)) y el porcentaje de duplicados (definido como recuento SELECT () - cuenta (ID distinta) / cuenta (*) * 100).

Cuando importo los datos manualmente, ejecutando el trabajo sqoop:

sqoop-job --exec job_parquet_$table -- --username edastatnew --password edastatnew

Todo está bien, no tengo duplicados y los datos se importan perfectamente

Sin embargo, cuando uso Oozie para programar el trabajo sqoop, he observado que sqoopincremental.last.value se actualiza incorrectamente, lo que causa duplicados en mis datos. Aquí está mi monitoreo:

Como puede ver, max_ID no coincide con el valor sqoop_last_value en diferentes momentos del experimento. Llegué a la conclusión de que cuando uso Oozie, el valor sqoop incremenatal.last.value se actualiza incorrectamente después de ejecutar un trabajo sqoop. ¿Alguien ha enfrentado este mismo problema? En caso afirmativo, ¿ha encontrado alguna solución?

Gracias,

Respuestas a la pregunta(1)

Su respuesta a la pregunta