Entiendo que tiene una actualización diaria de una vía de su base de datos de Hortonworks con transacciones de una base de datos de Teradata. En el transcurso de un mes, ambas bases de datos habrán crecido en tamaño, pero solo la base de datos de Teradata habrá recibido actualizaciones adicionales que no aparecen en la base de datos de Hortonworks. Luego, desea calcular el delta entre las dos bases de datos para aislar solo los cambios que se han producido y tomar la decisión de actualizar su base de datos de Hortonworks con estos cambios.
Si esta comprensión es correcta, puede calcular un delta entre tablas en ambas bases de datos de la siguiente manera.
- La base de datos de Teradata deberá importarse en un formulario que pueda compararse con la base de datos de Hortonworks. Esto se puede hacer importando de Teradata a Hive.
- Use Hive para generar una diferencia entre dos tablas (la tabla importada y una de Hortonworks) y exportarla nuevamente a Teradata para su revisión.
- Después de tomar una decisión, los resultados seleccionados se pueden exportar a Hortonworks utilizando el mismo método que usaría para actualizar esa base de datos con nueva información.
A continuación se detallan los pasos 1 y 2 con más detalle.
- ¿Es bueno el programa de maestría en visualización de datos en Parsons School of Design?
- ¿Pueden las herramientas de Big Data ayudar a borrar el ciclo económico?
- ¿Cuál es la diferencia entre un título en Business Analytics y un título en Data Science?
- Soy un estudiante de informática interesado en ciencia de datos. ¿A qué reuniones o conferencias (en India) debo asistir para crecer en el campo?
- ¿Cuáles son las perspectivas de trabajo después de hacer una maestría en ciencia de datos / análisis de datos en Irlanda?
1) Este enlace de Hortonworks (Enriquecimiento de datos de ida y vuelta entre Teradata y Hadoop – Hortonworks) contiene ilustraciones y código para un método automatizado para hacer mucho de lo que queremos. Solo tendrá que hacer hasta el Paso 3 en estas instrucciones, y en este paso, solo hasta el elemento 2 en el flujo de trabajo. Esto llevará a cabo los siguientes pasos:
- Colmena: cree la tabla de Colmena de destino que aceptará la importación desde Teradata (create_hive_target)
- Sqoop: realice la importación de Teradata a Hive (td_to_hive)
2) Vea esta página en StackOverflow (Compare dos tablas en HIVE) para saber cómo generar una tabla con campos poblados con cualquier diferencia existente (no se colocará contenido en campos que sean iguales). El código relevante se reproduce a continuación:
ct = tabla de control con datos conocidos, nt = nueva tabla con datos para verificar, cx = número de columna
SELECCIONE nt.c1,
CASO CUANDO ct.c2 nt.c2 LUEGO ‘-‘ ELSE nt.c2 END,
CASO CUANDO ct.c3 nt.c2 LUEGO ‘-‘ ELSE nt.c3 END
DESDE
New_table nt
ÚNETE Control_table ct ON nt.c1 = ct.c1
DÓNDE
ct.c2 nt.c2 O ct.c3 nt.c3
Guarde esto como un script SQL y luego consulte el elemento 3 en el flujo de trabajo del Paso 3 (populate_hive_results). Usando el script SQL recién guardado, siga las instrucciones en esta sección para exportar la tabla de diferencias a Teradata para su revisión.
El grupo más apropiado para configurar este flujo de trabajo sería Ingeniería de datos, ya que sabrán qué ajustes deben hacerse a estas instrucciones para acomodar su proceso real. La calidad de los datos sería más adecuada para revisar la tabla de diferencias e informar qué cambios deberían aceptarse. También puede decidir que sus científicos de datos echen un vistazo a la tabla de diferencias también. Pueden tener ideas sobre qué cambios afectarían más sus análisis y cuáles son intrascendentes.