MongoDB Connector for Hadoop: MongoDB y Hadoop uniendo fuerzas!

MongoDB Connector for Hadoop es un plugin de Hadoop que permite usar MongoDB como fuente de entrada o como destino de salida.

Como bien sabemos en Sofia2 donde la implementación de referencia de la BDTR (Base Datos Tiempo Real) es MongoDB y de la BDH (Base Datos Histórica) es Hadoop usar MongoDB+Hadoop es una combinación muy potente ya que nos permite usarlos juntos para hacer procesamiento de datos y analíticas sobre datos almacenados en MongoDB.

Este conector funciona con prácticamente todas las versiones de Hadoop (incluidas CDH4 y CDH5), para usarlo basta con compilar el conector que está en GitHub para la distribución correspondiente.

Los diversos ejemplos de uso, como este ejemplo MapReduce que descarga el cuerpo de los mails y los importa en MongoDB dan una idea de cómo se usan

A un conjunto de mails con este formato:

Le aplicamos el proceso map:

Que extrae el campo headers de cada documento, parsea el campo From y el campo To para construir un objeto MailPair emitiendo el valor 1 para cada clave.

Luego con el reduce:

Sumamos el número de ocurrencias para cada par From-To

Son muchos los casos de uso típicos en los que MongoDB y Hadoop pueden formar un stack Big data típico.

En estos MongoDB actúa como el datastore en tiempo-real/operacional t Hadoop como el datastore offline para procesamiento y análisis.

Agregación Batch

En muchos escenarios la funcionalidad de agregación incluida en MongoDB es suficiente para analizar los datos, cuando es necesario un análisis más complejo Hadoop nos provee un framework muy potente para análisis complejos:

En este escenario los datos se extraen de MongoDB y se procesan en Hadoop con uno o más jbos MapReduce.

La salida de estos Jobs puede ser de nuevo escrita en MongoDB para consultas posteriores.

Data Warehouse

En un escenario típico de producción los datos del sistema pueden estar en diferentes datastores cada uno con su lenguaje de queries,…

Hadoop en este escenario puede usarse como datawarehouse y repositorio centralizado de múltiples fuentes lo que simplifica la complejidad de tratamiento de estos datos.

Pueden usarse Jobs MapReduce periódicos que vuelcan datos de Mongo a Hadoop.

ETL Data:

MongoDB puede ser el datastore operacional de nuestra aplicación pero también puedex existir otros. En este escenario es útil mover datos de un datastore a otro.

Los Jobs MapReduce pueden usarse para extraerse, transformar y cargar datos de un datastore a otro, actuando Hadoop como una ETL.

MongoDB Connector for Hadoop: MongoDB y Hadoop uniendo fuerzas!

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s