tipos - Gestión de datos de la tabla Hive
tipos de tablas en hive (2)
Tengo una mesa Hive. Si tengo un requerimiento de que los datos ingresen a la tabla Hive diariamente. Si la información que entra es un nuevo registro (inserciones), entonces el registro debe insertarse en la tabla de la colmena o si los datos que están entrando ya están en existencia (actualizaciones) en la colmena, entonces el registro debe actualizarse.
¿Alguien puede explicar cómo se logra esto en Hive?
Estaba revisando en línea encontré este artículo. http://hortonworks.com/blog/four-step-strategy-incremental-updates-hive/
Hay varias maneras de hacer esto y depende de:
- Cuáles son sus requisitos exactamente,
- Qué versión de Hive estás usando (ya que 0.14 Hive admite CRUD completo),
- ¿Cuál es el formato de los datos de origen (si es un RDBMS, puede usar la carga incremental de Sqoop )?
- ¿Qué tan grande es la información que tiene que cargar
Creo que el enlace que ha publicado describe el proceso bastante bien, es muy específico sobre las tecnologías utilizadas. Una forma más general de describir esto sería:
- Crear una tabla externa en la fuente de datos
- Anexar nuevos datos a la tabla de destino,
- Elimine los duplicados según la clave exclusiva o la marca de tiempo (fe, usando GROUP BY).
Recomiendo encarecidamente que revises Hive doc y descubras cómo hacer cada paso :)
Aclamaciones,
Karol
"los datos entrarán diariamente en la tabla Hive" - es parte de la Ingestión de Datos. Puede usar Sqoop Incremental Import para el mismo. Dos formas en que se puede codificar.
(1) - Agregar, usar cuando se conoce el último valor entrante o
(2) - Última modificación, use cuando tenga una columna de FECHA que se puede usar para rastrear las inserciones.
Para las actualizaciones, puede usar tablas Externas como se explica en el enlace que compartió.