Delta / Carga incremental en colmena

Tengo el caso de uso a continuación:

Mi aplicación tiene una tabla que tienedatos multianuales enRDBMS DB. Hemos usadosqoop para obtener datos en HDFS y cargarlos en una tabla de colmena particionada poraño mes.

Ahora, la aplicación actualiza e inserta nuevos registros en la tabla de tabla RDBMS diariamente también. Estos registros actualizados pueden abarcar varios meses de historia. Los registros actualizados y los nuevos registros de inserción se pueden determinar mediante el campo de marca de tiempo actualizado (tendrá la marca de tiempo del día actual).

Ahora el problema aquí es: cómo hacer una tabla de colmena de carga incremental / delta diariamente usando estos registros actualizados.

-> Sé que hay una funcionalidad sqoop que permite importaciones incrementales. Pero, solo una nueva importación incremental no es suficiente para nosotros.

Porque -

-> No puedo insertar directamente estos registros (usando insertar en) en la tabla de la colmena porque dará como resultado registros duplicados (registros actualizados).

-> De la misma manera, no puedo usar la instrucción de sobrescritura de inserción, ya que solo se trata de actualizar e insertar registros que abarcan varios meses. Insertar sobrescribir eliminará los registros anteriores.

Por supuesto, la opción más fácil es obtener datos completos utilizando sqoop diariamente, pero no queremos hacerlo ya que el volumen de datos es grande.

Entonces, básicamente queremos cargar completamente solo aquellas particiones para las que hemos recibido registros de actualización / inserción.

Estamos abiertos a explorar la opción al final de colmena o sqoop. ¿Puedes decirnos por favor?

Gracias por adelantado.

Respuestas a la pregunta(4)

Su respuesta a la pregunta