UNIDAD ZACATENCO DEPARTAMENTO DE ... - Cinvestav
UNIDAD ZACATENCO DEPARTAMENTO DE ... - Cinvestav
UNIDAD ZACATENCO DEPARTAMENTO DE ... - Cinvestav
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
Capítulo 3<br />
Hive<br />
En el Capítulo 2 vimos que Mapreduce no sólo oculta los detalles de la programación<br />
paralela, sino que además lleva a cabo tolerancia a fallas y balance de carga de<br />
manera transparente al usuario. Esta funcionalidad es esencial para procesar grandes<br />
cantidades de datos en un tiempo razonable. La tolerancia a fallas, por ejemplo, evita<br />
que en caso de que uno o más nodos fallen, no se tenga que ejecutar una aplicación<br />
de nuevo desde el principio. A pesar de estos beneficios, el desarrollo de aplicaciones<br />
mapreduce complejas (compuestas de uno o más pares de funciones map y reduce) no<br />
es simple. Esto se debe en parte a que el modelo de programación de mapreduce no<br />
es de uso general todavía, pero también a que no es tan intuitivo como otros modelos<br />
de programación como memoria compartida y paso de mensajes.<br />
Por lo anterior, se han desarrollado otras capas de software sobre mapreduce que<br />
ofrecen un modelo de programación más simple e intuitivo. En particular, existen<br />
esfuerzos para permitir el procesamiento de grandes volúmenes de información por<br />
medio de sentencias SQL (OLAP) en lugar de escribir programas mapreduce.<br />
Un primer enfoque, adaptó al ambiente MapReduce para poder implementar de<br />
manera más sencilla las ideas de una sentencia SQL dentro de un programa mapreduce.<br />
Ejemplos de este enfoque son los proyectos: MapReduce-Merge [19] y Hadoop++ [20].<br />
Pig es un proyecto que toma las ventajas de las sentencias SQL y de un programa<br />
mapreduce. El usuario ya no piensa en términos de funciones map y reduce, sino<br />
29