Procesamiento masivo de datos en MongoDB

Post on 29-Jun-2015

166 views 0 download

description

Charla de Ricardo Crespo (Stratio) sobre procesamiento masivo de datos en MongoDB.

Transcript of Procesamiento masivo de datos en MongoDB

Procesamiento masivo de datos en MongoDB

Quijote 1

Caballero 2

Caballero 1

Quijote 1

Quijote 2

4Quijote

Hidalgo 5

Hidalgo 6

Quijote 8

Hidalgo 1

Caballero 3

Procesamiento masivo de datos en MongoDB

Madrid María

Valencia Pedro

Valencia Oscar

Madrid Miguel

Madrid Iván

DavidMadrid

Bilbao Juan

Bilbao 2

Madrid 4

Bilbao Alberto

Valencia 2

Procesamiento masivo de datos en MongoDB

Mucho más flexible que el framework de agregación

Procesos de ETL

Localidad de datos

Fuente de datos limitada

Lento en comparación con los métodos $group y $aggregation propios de

MongoDB

Procesamiento masivo de datos en MongoDB

Ejemplo: Map

var mapFunction = function() {

var key = this.ciudad;

var value = {

nombre: this.nombre,

count: 1

};

emit( key, value );

};

Procesamiento masivo de datos en MongoDB

Ejemplo: Reduce

var reduceFunction = function(key, values) {

var reducedObject = {

ciudad: key,

nombres: "",

count:0

};

values.forEach( function(value) {

reducedObject.nombres += "|"+value.nombre;

reducedObject.count += value.count;

}

);

return reducedObject;

};;

Procesamiento masivo de datos en MongoDB

Procesamiento masivo de datos en MongoDB

Características principales

Fuente de datos mucho más amplia

Combinación de diferentes fuentes de datos (¡¡¡joins!!!)

Procesos ETL

Ampliable el número de nodos de computación

Completamente integrado con Hive y Pig

Dificultad de programación

Posible pérdida de localidad de datos

Se añade un retardo en conversión de datos y serialización

Obliga a tener un esquema

Procesamiento masivo de datos en MongoDB