El MongoDB Connector for Hadoop es un plugin de Hadoop que permite usar MongoDB como fuente de entrada o como destino de salida.
Poder 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.
El 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:
Y copiar el JAR generado (mongo-hadoop-core-X.X.jar) y el driver de MongoDB para Java a la instalación de Hadoop, algo como:

(leer instrucciones en https://github.com/mongodb/mongo-hadoop )
En GitHub hay diversos ejemplos de uso, por ejemplo este ejemplo MapReduce que descarga el cuerpo de los mails y los importa en MongoDB.
A un conjunto de 517425 mails con este formato, cada uno con un mail diferente:
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
Mañana más sobre este interesante plugin!!!





Deja un comentario