La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Autor: Carlos Gómez Martínez Directores: Nicolás Padilla Soriano

Presentaciones similares


Presentación del tema: "Autor: Carlos Gómez Martínez Directores: Nicolás Padilla Soriano"— Transcripción de la presentación:

1 procesamiento de grandes volúmenes de datos en entornos cloud computing utilizando hadoop mapreduce
Autor: Carlos Gómez Martínez Directores: Nicolás Padilla Soriano Julio Gómez López UNIVERSIDAD DE ALMERÍA Ingeniero en Informática

2 Índice Introducción. Entorno de trabajo. Programación MapReduce.
Cloud Computing, Configuración de una Nube OpenStack. Computación Distribuida Apache Hadoop. Hadoop Distributed File System. Integración Cloud Computing – Apache Hadoop. Programación MapReduce. Librería Hadoop Image Processing Interface. Pruebas de Rendimiento y Ejemplo de Aplicación HIPI. Conclusiones y Trabajo Futuro. Explicar todo el índice y en los puntos que tienen subapartados, explicar el apartado y destacar el subapartado. 1

3 Introducción Aumento de velocidad y del volumen de tráfico soportado
Mejora en las comunicaciones de Red Sistema de Computación Distribuido de Alto Rendimiento en un entorno Cloud Computing Aparición del Paradigma de Computación Cloud Computing Desarrollo de los Sistemas de Computación Distribuidos Progreso general del proyecto ¿Es posible Integrarlos? Nace Apache Hadoop 3

4 Índice Introducción. Entorno de trabajo. Programación MapReduce.
Cloud Computing, Configuración de una Nube OpenStack. Computación Distribuida Apache Hadoop. Hadoop Distributed File System. Integración Cloud Computing – Apache Hadoop. Programación MapReduce. Librería Hadoop Image Processing Interface. Pruebas de Rendimiento y Ejemplo de Aplicación HIPI. Conclusiones y Trabajo Futuro. 4

5 Cloud Computing Ofrecer los recursos de un sistema sin que los usuarios tengan conocimientos sobre el mismo, su configuración, mantenimiento o administración. Virtualización de Servidores. Convertir un sistema en una infraestructura de servicios escalable, dinámica y automatizable en la que se paga por los servicios que utilizas. Migrar servicios entre servidores y adaptar el sistema a la demanda de los usuarios. Tipos de nubes: privadas, públicas, híbridas, combinadas y comunitarias. 5

6 Cloud Computing Ventajas y Desventajas
Abstracción e Independencia del Hardware Fiabilidad Escalabilidad Alto Rendimiento Agilidad Ahorro de Costes Recuperación ante Desastres Degradación del Servicio Alta Disponibilidad Dependencia Conexión a Internet Dependencia Proveedores de Servicios Tecnología Prematura en Desarrollo Sentimiento de Inseguridad o Vulnerabilidad 6

7 Cloud Computing Comparativa
Explicar las diferencias. Nubes que aportan IaaS, PaaS o Saas

8 Cloud Computing OpenStack
DUAL NODE Nodo Controlador Red Pública Red de Gestión Nodo(s) de Procesamiento 7

9 Índice Introducción. Entorno de trabajo. Programación MapReduce.
Cloud Computing, Configuración de una Nube OpenStack. Computación Distribuida Apache Hadoop. Hadoop Distributed File System. Integración Cloud Computing – Apache Hadoop. Programación MapReduce. Librería Hadoop Image Processing Interface. Pruebas de Rendimiento y Ejemplo de Aplicación HIPI. Conclusiones y Trabajo Futuro. 8

10 Cloud Computing Computación Distribuida Apache Hadoop
Entorno de computación distribuida de licencia libre creado por Doug Cutting y promovido por Apache Software Foundation. Sistemas con miles de nodos. Aplicaciones sobre grandes volúmenes de datos de manera distribuida. Alta flexiblidad y escalabilidad. Clústeres con distintas topologías. 9

11 Cloud Computing Computación Distribuida Apache Hadoop
MAESTRO ESCLAVO(S) TASKTRACKER TASKTRACKER JOBTRACKER Capa MapReduce Capa HDFS NAMENODE DATANODE DATANODE 10

12 Cloud Computing Hadoop Distributed File System
Diseño específico para Apache Hadoop No posee Alta Disponibilidad Posibilidad de Réplica de Nodos Tolerancia a Fallos Hay que decir aquí que obviamente mantiene las características de Hadoop de Flexibilidad, Adaptabilidad, grandes volúmenes de datos y Miles de Nodos. Mínimas Escrituras – Múltiples Lecturas No indicado para sistemas con múltiples archivos de poco tamaño Posibilidad de agrupar los datos en contenedores 11

13 Cloud Computing Hadoop Distributed File System
Op. Sincronización Op. Datos NAME NODE NAMENODE SECUNDARIO Red de Sincronización Op. sobre Bloque DATANODE DATANODE Réplica de Datos 12

14 Índice Introducción. Entorno de trabajo. Programación MapReduce.
Cloud Computing, Configuración de una Nube OpenStack. Computación Distribuida Apache Hadoop. Hadoop Distributed File System. Integración Cloud Computing – Apache Hadoop. Programación MapReduce. Librería Hadoop Image Processing Interface. Pruebas de Rendimiento y Ejemplo de Aplicación HIPI. Conclusiones y Trabajo Futuro. 13

15 Integración Cloud Computing – apache hadoop
Creamos una instancia virtual en nuestra nube OpenStack Hadoop es adaptable a cualquier tipo de máquinas Incluso Virtuales Instalamos Hadoop SingleNode en ella. Configuramos Hadoop Multinode Almacenamos la instancia como patrón Desplegamos tantas instancias como nuestros recursos nos permitan 14

16 Integración Cloud Computing – apache hadoop
Seleccionamos un tipo de instancia. Utilizamos una máquina virtual Ubuntu. 15

17 Integración Cloud Computing – apache hadoop
Nos conectamos vía SSH a la instancia. Configuramos Hadoop SingleNode. 16

18 Integración Cloud Computing – apache hadoop
Almacenamos esta máquina virtual configurada con Hadoop SingleNode como patrón de instancias. Desplegamos tantas instancias como los recursos hardware de nuestro sistema Cloud Computing permitan. 17

19 Integración Cloud Computing – apache hadoop
Primero el HDFS. Configuramos Hadoop Multinode. Finalmente la capa MapReduce. Iniciamos los servicios del entorno distribuido. 18

20 Índice Introducción. Entorno de trabajo. Programación MapReduce.
Cloud Computing, Configuración de una Nube OpenStack. Computación Distribuida Apache Hadoop. Hadoop Distributed File System. Integración Cloud Computing – Apache Hadoop. Programación MapReduce. Librería Hadoop Image Processing Interface. Pruebas de Rendimiento y Ejemplo de Aplicación HIPI. Conclusiones y Trabajo Futuro. 19

21 Programación MapReduce
Programación Paralela Programación Funcional (Map – Reduce) Balanceado de Carga Licencia Libre Amplio Soporte Control de Errores en Nodos. Tolerancia a Fallos Orientado a Grandes Cantidades de Datos 20

22 Programación MapReduce Funcionamiento
21

23 Programación MapReduce Funcionamiento
Los elementos principales de un programa MapReduce son: JobConf Mapper Reducer Formato de Entrada Formato de Salida No hay un ningún tipo de archivo para trabajar con Imágenes 22

24 Índice Introducción. Entorno de trabajo. Programación MapReduce.
Cloud Computing, Configuración de una Nube OpenStack. Computación Distribuida Apache Hadoop. Hadoop Distributed File System. Integración Cloud Computing – Apache Hadoop. Programación MapReduce. Librería Hadoop Image Processing Interface. Pruebas de Rendimiento y Ejemplo de Aplicación HIPI. Conclusiones y Trabajo Futuro. 23

25 Programación MapReduce Librería HIPI
Librería creada por la University of Virginia que aporta una API para el procesamiento de imágenes HipiImageBundle HipiJob FloatImage CullMapper 24

26 Programación MapReduce Librería HIPI
25

27 Índice Introducción. Entorno de trabajo. Programación MapReduce.
Cloud Computing, Configuración de una Nube OpenStack. Computación Distribuida Apache Hadoop. Hadoop Distributed File System. Integración Cloud Computing – Apache Hadoop. Programación MapReduce. Librería Hadoop Image Processing Interface. Pruebas de Rendimiento y Ejemplo de Aplicación HIPI. Conclusiones y Trabajo Futuro. 26

28 Pruebas de Rendimiento y Ejemplos de Aplicación HIPI
Prueba de Rendimiento WordCount Batería de pruebas aumentando el número de libros Carga de Archivos en el Sistema Ejecución MapReduce 27

29 Pruebas de Rendimiento y Ejemplos de Aplicación HIPI
Resultados obtenidos: Test WordCount (Libros) Incluir Archivos en HDFS (mm:ss,d) Ejecución (mm:ss,d) 10 00:03,2 00:45,3 50 00:13,1 01:12,4 100 00:25,2 01:41,0 150 00:42,6 02:18,8 200 01:04,6 03:02,9 300 01:50,8 03:58,1 400 02:25,5 05:04,7 500 02:53,8 05:54,7 600 02:59,8 06:46,5 700 03:21,6 07:43,7 800 03:27,1 08:18,0 900 03:48,3 09:44,7 1000 04:12,4 10:29,9 28

30 Pruebas de Rendimiento y Ejemplos de Aplicación HIPI
Cuanto mayores son los conjuntos de entrada, mejor el comportamiento Las diferencias en los grandes conjuntos son menos significativas 29

31 Pruebas de Rendimiento y Ejemplos de Aplicación HIPI
El aumento en el tiempo de ejecución es lineal, por lo que el incremento en la biblioteca de entrada afecta de forma normal. 30

32 Pruebas de Rendimiento y Ejemplos de Aplicación HIPI
Libros Segundos Totales Segundos por Libro 10 45” 4,5” 50 72” 1,44” 100 101” 1,01” 150 139” 0,93” 200 183” 0,91” 300 238” 0,79” 400 305” 0,76” 500 355” 0,71” 600 407” 0,68” 700 464” 0,66” 800 498” 0,62” 900 585” 0,65” 1000 630” 0,63” 31

33 Pruebas de Rendimiento y Ejemplos de Aplicación HIPI
CONCLUSIONES PRUEBAS DE RENDIMIENTO Un clúster Hadoop junto con la programación MapReduce obtiene mejor rendimiento cuanto mayor son los conjuntos de datos de entrada. Para grandes volúmenes de datos el funcionamiento del HDFS es mucho más eficiente. El framework Apache Hadoop está diseñado para sistemas en los que los datos se carguen una vez y sobre ellos se realicen múltiples trabajos. 32

34 Pruebas de Rendimiento y Ejemplos de Aplicación HIPI
Ejemplo de Aplicación HIPI Descarga de imágenes de la red social Flickr Ejecución sobre el contenedor Generación de contenedor HIB 33

35 Pruebas de Rendimiento y Ejemplos de Aplicación HIPI
Ejecución Downloader 34

36 Pruebas de Rendimiento y Ejemplos de Aplicación HIPI
Ejecución DumpHIB 35

37 Índice Introducción. Entorno de trabajo. Programación MapReduce.
Cloud Computing, Configuración de una Nube OpenStack. Computación Distribuida Apache Hadoop. Hadoop Distributed File System. Integración Cloud Computing – Apache Hadoop. Programación MapReduce. Librería Hadoop Image Processing Interface. Pruebas de Rendimiento y Ejemplo de Aplicación HIPI. Conclusiones y Trabajo Futuro. 36

38 Integrar Cloud Computing y Apache Hadoop.
Conclusiones Se ha cumplido el objetivo principal del proyecto Integrar Cloud Computing y Apache Hadoop. OpenStack junto con StackOps proporciona una forma de configurar sistemas Cloud Computing de manera sencilla. Apache Hadoop ha demostrado ser un sistema de computación distribuido adaptable a cualquier tipo de sistema, incluso virtuales. Queda probado que el entornos Apache Hadoop, el HDFS y la programación MapReduce alcanzan su mayor rendimiento procesando grandes conjuntos de datos La librería Hadoop Image Processing Interface proporciona una API que permite trabajar directamente sobre imágenes en Apache Hadoop 37

39 Integrar un Sistema de Gestión de Bases de Datos en este entorno.
Trabajo Futuro Crear un programa que incluya la librería HIPI que tome imágenes (por ejemplo de satélite) y detecte figuras o patrones incluidos en ellas. Crear un clúster para analizar los datos de una red social o sistema de gestión de una organización pública o privada utilizando al máximo los recursos del clúster: se refiere a crear instancias virtuales de distintas características y utilizando el nodo controlador sólo como controlador. Integrar un Sistema de Gestión de Bases de Datos en este entorno. Optimizar el entorno de computación Apache Hadoop implantando alta disponibilidad y utilizando al máximo los recursos del clúster. 39

40 Gracias por su atención
procesamiento de grandes volúmenes de datos en entornos cloud computing utilizando hadoop mapreduce Gracias por su atención Autor: Carlos Gómez Martínez Directores: Nicolás Padilla Soriano Julio Gómez López UNIVERSIDAD DE ALMERÍA Ingeniero en Informática


Descargar ppt "Autor: Carlos Gómez Martínez Directores: Nicolás Padilla Soriano"

Presentaciones similares


Anuncios Google