Hadoop en acción  Cluster de bajo perfil para elanálisis de grandes volúmenes de               datos
¿Quién soy yo?● Sergio Navarrete Suárez● Estudiante de Ingeniería de Sistemas de la Universidad  Distrital Francisco José ...
Contenido● ¿Qué es MapReduce?● ¿Qué es HDFS?● ¿Cuándo usar HDFS?● ¿Cuándo NO usar HDFS?● Partes de un HDFS● Optimización p...
Contenido● ¿Cuándo utilizar Hadoop?● Arquitectura de Hadoop● La implementación de Hadoop de MapReduce● Anatomía de un trab...
¿Qué es MapReduce?● Algoritmo desarrollado por Google para procesar pequeñas  cantidades de archivos de gran tamaño.● Muy ...
¿Qué es HDFS?● Sistema de archivos distribuido● Diseñado para trabajar de manera eficiente con  MapReduce● Trabaja con blo...
¿Cuándo usar HDFS?● Archivos muy, muy grandes (GB o más)● Necesidad de particionar archivos● Fallo de nodos sin perder inf...
¿Cuándo NO usar HDFS?● Baja latencia● Muchos archivos pequeños● Multiples "escritores"● Modificaciones arbitrarias a los a...
Partes de un HDFS● Namenode: Mantiene el árbol del sistema de archivos y los  metadatos.   ○ Namespace image   ○ Edit log●...
Optimización por distancia física
¿Qué es Hadoop?● Framework para almacenar y procesar grandes volúmenes  de datos.● Dont make better hardware. Use more har...
Breve historia de Hadoop● Empieza en 2002 con Doug Cutting y Mike Cafarella● Inspirado por los papers de Google en MapRedu...
¿Por qué Hadoop?● Más rápido que un RDBMS para grandes volúmenes de  datos (especialmente datos no organizados)● Más rápid...
¿Cuándo usar Hadoop?● Se tienen grandes archivos (GB para arriba)● No se tiene un RDBMS● Se tiene el hardware● Se van a ha...
Arquitectura - Software                     Fuente: Wikipedia.org
Arquitectura - Hardware
Implementación de Hadoop deMapReduce● Fase "map"   ○ Se toma la entrada, se divide en subproblemas y se     distribuyen a ...
Implementación de Hadoop deMapReduce● Fase "reduce"   ○ El nodo maestro toma los resultados de la fase "map" de     los "w...
Implementación de Hadoop deMapReduce
Anatomia de un trabajo de Hadoop● Datos de entrada, programa MapReduce e información de  configuración● Tareas de mapeo y ...
Ejemplo en hadoop● Construir el cluster   ○ Instalar software de virtualización   ○ Copiar la máquina virtual con Hadoop  ...
Ejemplo en hadoop● Descargar e instalar Hadoop● Crear usuario hadoop● Instalar los paquetes adicionales● Configurar el sis...
¿Qué sigue?● Análisis de datos astronómicos (Gamma-ray bursts) en el  Centro de Computación de Alto Desempeño (CECAD)● Cla...
Recursos fuente1. White, Tom. Hadoop, the definitive guide. OReilly - Yahoo!   Press. 2nd Edition2. Project Gutenberg www....
Conclusiones
Preguntas
Agradecimientos especiales
Upcoming SlideShare
Loading in …5
×

Hadoop en accion

2,367 views
2,166 views

Published on

Published in: Technology
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
2,367
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
88
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

Hadoop en accion

  1. 1. Hadoop en acción Cluster de bajo perfil para elanálisis de grandes volúmenes de datos
  2. 2. ¿Quién soy yo?● Sergio Navarrete Suárez● Estudiante de Ingeniería de Sistemas de la Universidad Distrital Francisco José de Caldas● Usuario de Linux desde hace tres años aproximadamente● Coordinador General Grupo GNU/Linux Universidad Distrital Francisco José de Caldas● Equipo Webmaster - Red de Datos Universidad Distrital
  3. 3. Contenido● ¿Qué es MapReduce?● ¿Qué es HDFS?● ¿Cuándo usar HDFS?● ¿Cuándo NO usar HDFS?● Partes de un HDFS● Optimización por distancia física● ¿Qué es Hadoop?● ¿Por qué Hadoop?
  4. 4. Contenido● ¿Cuándo utilizar Hadoop?● Arquitectura de Hadoop● La implementación de Hadoop de MapReduce● Anatomía de un trabajo de Hadoop● Ejemplo en Hadoop● ¿Qué sigue?● Fuentes● Conclusiones● Preguntas● Agradecimientos especiales
  5. 5. ¿Qué es MapReduce?● Algoritmo desarrollado por Google para procesar pequeñas cantidades de archivos de gran tamaño.● Muy rápido comparado con scripts de shell● Implementación rápida, comparado con multiprocesamiento (preparación de los datos)● Hace uso de hardware de bajo perfil
  6. 6. ¿Qué es HDFS?● Sistema de archivos distribuido● Diseñado para trabajar de manera eficiente con MapReduce● Trabaja con bloques (64 MB por defecto)
  7. 7. ¿Cuándo usar HDFS?● Archivos muy, muy grandes (GB o más)● Necesidad de particionar archivos● Fallo de nodos sin perder información● Una escritura, muchas lecturas
  8. 8. ¿Cuándo NO usar HDFS?● Baja latencia● Muchos archivos pequeños● Multiples "escritores"● Modificaciones arbitrarias a los archivos
  9. 9. Partes de un HDFS● Namenode: Mantiene el árbol del sistema de archivos y los metadatos. ○ Namespace image ○ Edit log● Datanodes: Contienen los datos. Reportan al Namenode con la información acerca de los bloques actuales.● Secondary namenode: En el cual se descarga información del edit log para que no se vuelva muy grande en el namenode. ○ Puede funcionar como namenode en caso de que este falle, pero puede haber pérdida de información (no fue diseñado para cumplir esta tarea).
  10. 10. Optimización por distancia física
  11. 11. ¿Qué es Hadoop?● Framework para almacenar y procesar grandes volúmenes de datos.● Dont make better hardware. Use more hardware instead.● Orientado a los datos: se enfoca en el uso de disco y el ancho de banda de la red más que en el procesamiento (aunque esto también puede optimizarse)
  12. 12. Breve historia de Hadoop● Empieza en 2002 con Doug Cutting y Mike Cafarella● Inspirado por los papers de Google en MapReduce y Google File System● Proyecto nombrado a partir de el elefante de peluche amarillo del hijo de Doug (de ahí el logo)● Empieza como parte de la manera de manejar los datos de un motor de búsqueda web (Notch)● Proyecto Apache Hadoop inicia - 2006● Desarrollado y bastante usado en Yahoo!● Usado también en LastFM, Facebook y The New York Times● 1 TB sort benchmark - 209 seg. - 2008● Minute sort - 500 GB en 59 seg. (1400 nodos)● 100 TB sort benchmark - 173 min. (3400 nodos) - 2009
  13. 13. ¿Por qué Hadoop?● Más rápido que un RDBMS para grandes volúmenes de datos (especialmente datos no organizados)● Más rápido que un HPC tradicional, ya que implementa optimizaciones teniendo en cuenta la topología de la red (optimiza el uso de la red)● Evita la pérdida de información a través de replicación● API fácil de aprender● Posibilidad de trabajar con lenguajes diferentes a Java
  14. 14. ¿Cuándo usar Hadoop?● Se tienen grandes archivos (GB para arriba)● No se tiene un RDBMS● Se tiene el hardware● Se van a hacer muchas más lecturas que escrituras● Programas de tipo clave -> valor
  15. 15. Arquitectura - Software Fuente: Wikipedia.org
  16. 16. Arquitectura - Hardware
  17. 17. Implementación de Hadoop deMapReduce● Fase "map" ○ Se toma la entrada, se divide en subproblemas y se distribuyen a los "worker nodes". Estos a su vez pueden hacer lo mismo. ○ Los "worker nodes" procesan los datos y retornan un resultado a su nodo maestro. ○ En algunos casos, esta fase sólo prepara la información para ser procesada por el reductor.
  18. 18. Implementación de Hadoop deMapReduce● Fase "reduce" ○ El nodo maestro toma los resultados de la fase "map" de los "worker nodes" y los combina de alguna manera programada. ○ Si todos los mapeos son independientes entre sí, se puede decir que todos pueden correr en paralelo.
  19. 19. Implementación de Hadoop deMapReduce
  20. 20. Anatomia de un trabajo de Hadoop● Datos de entrada, programa MapReduce e información de configuración● Tareas de mapeo y reducción (pap and reduce tasks)● Jobtracker: Coordina las tareas y las programa para que sean resueltas por los tasktrackers.● Tasktracker: Resuelve tareas y envía el resultado al jobtracker.● Cualquier lenguaje que pueda leer desde stdin y escribir a stdout puede ser utilizado con Hadoop
  21. 21. Ejemplo en hadoop● Construir el cluster ○ Instalar software de virtualización ○ Copiar la máquina virtual con Hadoop ○ Correr la máquina ○ Mirar la configuración de Hadoop ○ Dar las direcciones IP al maestro ○ Añadir llave de ssh a hosts confiables ○ Iniciar los demonios (dfs y mapred) ○ Hacer prueba de verificación
  22. 22. Ejemplo en hadoop● Descargar e instalar Hadoop● Crear usuario hadoop● Instalar los paquetes adicionales● Configurar el sistema de archivos en red (NFS)● Probar la instalación● Guardar los datos en el HDFS● Entender el problema● Correr el programa● Obtener los resultados● Analizar los resultados
  23. 23. ¿Qué sigue?● Análisis de datos astronómicos (Gamma-ray bursts) en el Centro de Computación de Alto Desempeño (CECAD)● Clasificación de correos electrónicos en la Red de Datos (Universidad Distrital FJC).● Análisis de logs con el grupo de seguridad del Grupo GNU/Linux de la Universidad Distrital FJC
  24. 24. Recursos fuente1. White, Tom. Hadoop, the definitive guide. OReilly - Yahoo! Press. 2nd Edition2. Project Gutenberg www.gutenberg.org
  25. 25. Conclusiones
  26. 26. Preguntas
  27. 27. Agradecimientos especiales

×