Aula virtual apache_hadoop_v3 1

of 67 /67
Centros de Competencia - BA Introducción a Apache Hadoop

Embed Size (px)

Transcript of Aula virtual apache_hadoop_v3 1

  • Centros de Competencia - BA Introduccin a Apache Hadoop

  • Introduccin a Apache Spark

    | 2

    OBJETIVOS

    Obtener una visin general de Apache Hadoop y su amplio y complejo ecosistema

  • Introduccin a Apache Spark

    | 3

    AGENDA

    Big Data Apache Hadoop Ecosistema de Hadoop Hadoop 2.0

  • Introduccin a Apache Spark

    | 4

    CARACTERSTICAS - VOLUMEN

    Capacidad de almacenar una gran cantidad de datos El volumen de datos se incrementa exponencialmente: (44x de 2009 a 2020)

    Big Data

  • Introduccin a Apache Spark

    | 5

    CARACTERSTICAS - VOLUMEN

    Capacidad de almacenar una gran cantidad de datos El volumen de datos se incrementa exponencialmente: (44x de 2009 a 2020)

    Big Data

  • Introduccin a Apache Spark

    | 6

    CARACTERSTICAS - VARIEDAD

    Capacidad de combinar datos en los diferentes formatos que se generan (textos, imgenes, vdeos, audios, logs, json, xml, pdf, bbdd, emails, etc.)

    Big Data

  • Introduccin a Apache Spark

    | 7

    CARACTERSTICAS - VARIEDAD

    Capacidad de combinar datos en los diferentes formatos que se generan (textos, imgenes, vdeos, audios, logs, json, xml, pdf, bbdd, emails, etc.)

    Big Data

  • Introduccin a Apache Spark

    | 8

    CARACTERSTICAS - VARIEDAD

    Capacidad de combinar datos en los diferentes formatos que se generan (textos, imgenes, vdeos, audios, logs, json, xml, pdf, bbdd, emails, etc.)

    Big Data

    http://www.slideshare.net/dellenterprise/maximizing-return-on-information

  • Introduccin a Apache Spark

    | 9

    CARACTERSTICAS - VARIEDAD

    Big Data

    http://www.slideshare.net/franmod/tendencias-storage

  • Introduccin a Apache Spark

    | 10

    CARACTERSTICAS - VELOCIDAD

    Capacidad para poder capturar, almacenar y analizar los datos a la mayor velocidad posible

    Big Data

  • Introduccin a Apache Spark

    | 11

    CARACTERSTICAS - VERACIDAD

    Capacidad para tratar con datos desfasados, inconsistentes, incompletos, inciertos o ambiguos

    Big Data

    http://www.tylervigen.com/spurious-correlations

  • Introduccin a Apache Spark

    | 12

    CARACTERSTICAS - VALOR

    Big Data

  • Introduccin a Apache Spark

    | 13

    Problema

  • Introduccin a Apache Spark

    | 14

    SOLUCION TRADICIONAL La meta es tener una mquina cada vez ms poderosa (memoria,

    procesador, etc.)

    Big Data

  • Introduccin a Apache Spark

    | 15

    SOLUCION TRADICIONAL La meta es tener una mquina cada vez ms poderosa (memoria,

    procesador, etc.) Escalabilidad limitada Alto coste

    Big Data

  • Introduccin a Apache Spark

    | 16

    COMPUTACIN DISTRIBUIDA TRADICIONAL La meta es que muchas mquinas se puedan encargar de realizar un

    solo proceso

    Big Data

  • Introduccin a Apache Spark

    | 17

    COMPUTACIN DISTRIBUIDA TRADICIONAL La meta es que muchas mquinas se puedan encargar de realizar un

    solo proceso Hardware muy caro tolerante a fallos Programacin compleja Escalabilidad limitada

    Big Data

  • Introduccin a Apache Spark

    | 18

    AGENDA

    Big Data Apache Hadoop Ecosistema de Hadoop Hadoop 2.0

  • Introduccin a Apache Spark

    | 19

    HISTORIA DE HADOOP

    Hadoop y su ecosistema

    2002 2003 2004 2005 2006 2007 2008 2009 2010

    Dog Cutting y Mike Carafella empiezan a trabajar en Nutch

    Google publica detalles sobre GFS y MapReduce

    Doug Cutting aade DFS y MapReduce a Nutch

    Yahoo! Contrata a Doug Hadoop se sale de Nutch

    Facebook crea Hive el soporte SQL para Hadoop

    Ordenacin ms rpida de 1 TB 3:30 minutos sobre 910 nodos

    Ordenacin ms rpida de 1 TB 62 segundos sobre 1460 nodos

  • Introduccin a Apache Spark

    | 20

    QU ES HADOOP?

    Hadoop es un sistema para el almacenamiento y el procesamiento distribuido de datos a gran escala

    Hadoop proporciona dos componentes:

    Almacenamiento de datos: HDFS Procesamiento de datos: MapReduce

    Hadoop y su ecosistema

  • Introduccin a Apache Spark

    | 21

    HDFS

    HDFS es el sistema de archivos distribuido de Hadoop que se encarga de almacenar los datos

    Hadoop y su ecosistema

  • Introduccin a Apache Spark

    | 22

    HDFS

    HDFS es el sistema de archivos distribuido de Hadoop que se encarga de almacenar los datos

    Hadoop y su ecosistema

    Nodo 1

    Nodo 2

    Nodo 3

    Nodo 4

    Nodo servidor

    Driver

  • Introduccin a Apache Spark

    | 23

    HDFS

    HDFS es el sistema de archivos distribuido de Hadoop que se encarga de almacenar los datos

    Hadoop y su ecosistema

    Nodo 1

    Nodo 2

    Nodo 3

    Nodo 4

    Datos.txt: B1, B2

    Nodo servidor

    Driver

    Datos.txt

    B1

    B2

  • Introduccin a Apache Spark

    | 24

    HDFS

    HDFS es el sistema de archivos distribuido de Hadoop que se encarga de almacenar los datos

    Hadoop y su ecosistema

    Nodo 1

    Nodo 2

    Nodo 3

    Nodo 4

    Datos.txt: B1, B2 B1: Nodo 1 B2: Nodo 3

    Nodo servidor

    Driver

    Datos.txt

    B1

    B2 B1 B2

  • Introduccin a Apache Spark

    | 25

    HDFS

    HDFS es el sistema de archivos distribuido de Hadoop que se encarga de almacenar los datos

    Hadoop y su ecosistema

    Nodo 1

    Nodo 2

    Nodo 3

    Nodo 4

    Datos.txt: B1, B2 B1: Nodo 1, Nodo 2 B2: Nodo 3, Nodo 4

    Nodo servidor

    Driver

    Datos.txt

    B1

    B2 B1 B2 B1 B2

  • Introduccin a Apache Spark

    | 26

    MAPREDUCE

    MapReduce es el sistema que utiliza Hadoop para procesar los datos en un clster

    Hadoop y su ecosistema

  • Introduccin a Apache Spark

    | 27

    MAPREDUCE - EJEMPLO

    Cmo cuento el nmero de ocurrencias de cada palabra en un documento?

    Hadoop y su ecosistema

    Me llamo Lola Me llamo Claudia Me llamo Aimar Pilar me llamo Te gustan los perros?

    {Me: 4, llamo: 4, Lola: 1, Claudia: 1, Aimar: 1, Pilar: 1, }

  • Introduccin a Apache Spark

    | 28

    MAPREDUCE - EJEMPLO

    Primera aproximacin: Uso de una coleccin de claves / valores

    Hadoop y su ecosistema

    Coleccin Clave / Valor

  • Introduccin a Apache Spark

    | 29

    MAPREDUCE - EJEMPLO

    Primera aproximacin: Uso de una coleccin de claves / valores

    Hadoop y su ecosistema

    Me llamo Lola Me llamo Claudia Me llamo Aimar Pilar me llamo Te gustan los perros?

    {}

  • Introduccin a Apache Spark

    | 30

    MAPREDUCE - EJEMPLO

    Primera aproximacin: Uso de una coleccin de claves / valores

    Hadoop y su ecosistema

    Me llamo Lola Me llamo Claudia Me llamo Aimar Pilar me llamo Te gustan los perros?

    {Me: 1}

  • Introduccin a Apache Spark

    | 31

    MAPREDUCE - EJEMPLO

    Primera aproximacin: Uso de una coleccin de claves / valores

    Hadoop y su ecosistema

    Me llamo Lola Me llamo Claudia Me llamo Aimar Pilar me llamo Te gustan los perros?

    {Me: 1, llamo: 1}

  • Introduccin a Apache Spark

    | 32

    MAPREDUCE - EJEMPLO

    Primera aproximacin: Uso de una hashtable

    Hadoop y su ecosistema

    Me llamo Lola Me llamo Claudia Me llamo Aimar Pilar me llamo Te gustan los perros?

    {Me: 1, llamo: 1, Lola: 1}

  • Introduccin a Apache Spark

    | 33

    MAPREDUCE - EJEMPLO

    Primera aproximacin: Uso de una hashtable

    Hadoop y su ecosistema

    Me llamo Lola Me llamo Claudia Me llamo Aimar Pilar me llamo Te gustan los perros?

    {Me: 2, llamo: 1, Lola: 1}

  • Introduccin a Apache Spark

    | 34

    MAPREDUCE - EJEMPLO

    Pero .. qu ocurre si el documento es realmente GRANDE?

    Hadoop y su ecosistema

    Me llamo Lola Me llamo Claudia Me llamo Aimar Pilar me llamo Te gustan los perros? Y los caballos? A m me gustan mucho los perros Sobre todos los caballitos de mar Y a ti?

    {Me: 3, Llamo:3, Lola: 3

    {Pilar:1, Me: 1, }

    {Y:1, }

    {Sobre: 1, }

    {Me: 5, Llamo:3, Lola: 3, Pilar: 1

    Mquinas 1-4

    Mquina 5

  • Introduccin a Apache Spark

    | 35

    MAPREDUCE - EJEMPLO

    Pero .. qu ocurre si el documento es realmente GRANDE?

    Hadoop y su ecosistema

    Me llamo Lola Me llamo Claudia Me llamo Aimar Pilar me llamo Te gustan los perros? Y los caballos? A m me gustan mucho los perros Sobre todos los caballitos de mar Y a ti?

    {Me: 3, Llamo:3, Lola: 3

    {Pilar:1, Me: 1, }

    {Y:1, }

    {Sobre: 1, }

    {Me: 5, Llamo:3, Lola: 3, Pilar: 1

    Mquinas 1-4

    Mquina 5

    Los resultados tienen que caber en una sola mquina

  • Introduccin a Apache Spark

    | 36

    MAPREDUCE - EJEMPLO

    Pero .. qu ocurre si el documento es realmente GRANDE?

    Hadoop y su ecosistema

    Me llamo Lola Me llamo Claudia Me llamo Aimar Pilar me llamo Te gustan los perros? Y los caballitos? A m me gustan mucho los perros Sobre todos los caballitos de mar Y a ti?

    {Me: 3, Llamo:3, Lola: 3

    {Pilar:1, Me: 1, }

    {Y:1, }

    {Sobre: 1, }

    {A : 2, Aimar : 1, Claudia: 1}

    Mquinas 1-4 Mquina 1-4

  • Introduccin a Apache Spark

    | 37

    MAPREDUCE - EJEMPLO

    Pero .. qu ocurre si el documento es realmente GRANDE?

    Hadoop y su ecosistema

    Me llamo Lola Me llamo Claudia Me llamo Aimar Pilar me llamo Te gustan los perros? Y los caballitos? A m me gustan mucho los perros Sobre todos los caballitos de mar Y a ti?

    {Me: 3, Llamo:3, Lola: 3

    {Pilar:1, Me: 1, }

    {Y:1, }

    {Sobre: 1, }

    {A : 2, Aimar : 1, Claudia: 1}

    {Pilar: 1, Sobre: 1, }

    {Lola: 1, Los: 4,}

    {mucho: 1, mi: 1, }

    Mquinas 1-4 Mquina 1-4

  • Introduccin a Apache Spark

    | 38

    MAPREDUCE - EJEMPLO

    Pero .. qu ocurre si el documento es realmente GRANDE?

    Hadoop y su ecosistema

    Me llamo Lola Me llamo Claudia Me llamo Aimar Pilar me llamo Te gustan los perros? Y los caballitos? A m me gustan mucho los perros Sobre todos los caballitos de mar Y a ti?

    {Me: 3, Llamo:3, Lola: 3

    {Pilar:1, Me: 1, }

    {Y:1, }

    {Sobre: 1, }

    {A : 2, Aimar : 1, Claudia: 1}

    {Pilar: 1, Sobre: 1, }

    {Lola: 1, Los: 4,}

    {mucho: 1, mi: 1, }

    Mquinas 1-4 Mquina 1-4

    MAP REDUCE

  • Introduccin a Apache Spark

    | 39

    MAPREDUCE

    Hadoop y su ecosistema

  • Introduccin a Apache Spark

    | 40

    MAPREDUCE

    Hadoop y su ecosistema

    Nodo 1

    Nodo 2

    Nodo 3

    Nodo 4

    Nodo servidor

    Driver

    B1

    Map

    B2

    Map Red.

  • Introduccin a Apache Spark

    | 41

    CARACTERSTICAS

    Hadoop y su ecosistema

    Caracterstica Descripcin

    Automtico Un trabajo se realiza completamente sin que sea necesaria una intervencin manual

    Transparente Las tareas asignadas a un nodo que falla son retomadas por otras tareas

    Grcil Los fallos slo representan una perdida proporcional en la capacidad de proceso

    Recuperable Esta capacidad se recupera cuando el componente es reemplazado ms tarde

    Consistente El fallo no produce corrupcin o resultados invlidos

  • Introduccin a Apache Spark

    | 42

    HADOOP / BASE DE DATOS TRADICIONAL

    Hadoop y su ecosistema

    BD Tradicional Hadoop Tamao Gigabytes Petabytes

    Acceso Interactivo y Batch Batch

    Actualizacin de la informacin

    Escritura/Lectura (muchas veces)

    Escritura - 1 vez / Lectura

    Estructura Esttica Dinmica

    Integridad Alta (ACID) Baja

    Escalado Vertical Horizontal

    Tiempo de respuesta Prcticamente inmediato

    Tiene latencia (proceso Batch)

    Acceso a la informacin Partes de informacin Toda la informacin

  • Introduccin a Apache Spark

    | 43

    AGENDA

    Big Data Apache Hadoop Ecosistema de Hadoop Evolucin

    Framework de procesamiento distribuido

    Sistema de ficheros distribuido de Hadoop

  • Introduccin a Apache Spark

    | 44

    SQOOP

    Hadoop y su ecosistema

    PROCESO HDFS HDFS

    SCOOP

    DB

  • Introduccin a Apache Spark

    | 45

    FLUME

    Hadoop y su ecosistema

    PROCESO HDFS HDFS

    FLUME

  • Introduccin a Apache Spark

    | 46

    HIVE

    Hadoop y su ecosistema

  • Introduccin a Apache Spark

    | 47

    HIVE

    Hadoop y su ecosistema

  • Introduccin a Apache Spark

    | 48

    ECOSISTEMA DE HADOOP

    Hadoop y su ecosistema

    Framework de procesamiento distribuido

    Sistema de ficheros distribuido de Hadoop

    Querys SQL

    ODBC

  • Introduccin a Apache Spark

    | 49

    PIG

    Hadoop y su ecosistema

    PROCESO ENTRADA SALIDA

  • Introduccin a Apache Spark

    | 50

    OZZIE

    Hadoop y su ecosistema

    PROCESO 1 PROCESO 2

  • Introduccin a Apache Spark

    | 51

    MAHOUT

    Hadoop y su ecosistema

  • Introduccin a Apache Spark

    | 52

    MAHOUT

    Hadoop y su ecosistema

  • Introduccin a Apache Spark

    | 53

    HBASE

    Hadoop y su ecosistema

    Framework de procesamiento distribuido

    Sistema de ficheros distribuido de Hadoop

  • Introduccin a Apache Spark

    | 54

    HBASE

    Hadoop y su ecosistema

    Framework de procesamiento distribuido

    Sistema de ficheros distribuido de Hadoop

    Base de datos NoSQL De tipo columnar

  • Introduccin a Apache Spark

    | 55

    HUE

    Hadoop y su ecosistema

  • Introduccin a Apache Spark

    | 56

    HUE

    Hadoop y su ecosistema

  • Introduccin a Apache Spark

    | 57

    AMBARI

    Hadoop y su ecosistema

  • Introduccin a Apache Spark

    | 58

    ZOOKEEPER

    Hadoop y su ecosistema

    Nodo 1

    Nodo 2

    Nodo 3

    Nodo 4

    Nodo servidor

  • Introduccin a Apache Spark

    | 59

    ZOOKEEPER

    Hadoop y su ecosistema

    Nodo 1

    Nodo 2

    Nodo 3

    Nodo 4

    Nodo servidor Nodo servidor

    ZooKeeper Servidor Servidor Servidor

  • Introduccin a Apache Spark

    | 60

    ECOSISTEMA DE HADOOP

    Hadoop y su ecosistema

    https://hadoopecosystemtable.github.io/

  • Introduccin a Apache Spark

    | 61

    DISTRIBUCIONES DE HADOOP

    Hadoop y su ecosistema

  • Introduccin a Apache Spark

    | 62

    AGENDA

    Big Data Apache Hadoop Ecosistema de Hadoop Hadoop 2.0

  • Introduccin a Apache Spark

    | 63

    EVOLUCIN DE HADOOP Hadoop y su ecosistema

    Hadoop 1 - Proceso Batch - Un nico motor de procesamiento

    HDFS (Sistema de ficheros de Hadoop)

    MapReduce (Gestor de Recursos del Clster / Procesamiento de datos Batch)

    Hadoop 2 con YARN - Proceso Batch

    HDFS (Sistema de ficheros de Hadoop)

    YARN (Gestor de Recursos del Clster)

  • Introduccin a Apache Spark

    | 64

    EVOLUCIN DE HADOOP Hadoop y su ecosistema

    Hadoop 1 - Proceso Batch - Un nico motor de procesamiento

    HDFS (Sistema de ficheros de Hadoop)

    MapReduce (Gestor de Recursos del Clster / Procesamiento de datos Batch)

    Hadoop 2 con YARN - Proceso Batch, Interactivo - Muchos motores

    HDFS (Sistema de ficheros de Hadoop)

    YARN (Gestor de Recursos del Clster)

  • Introduccin a Apache Spark

    | 65

    EVOLUCIN DE HADOOP Hadoop y su ecosistema

    Hadoop 1 - Proceso Batch - Un nico motor de procesamiento

    HDFS (Sistema de ficheros de Hadoop)

    MapReduce (Gestor de Recursos del Clster / Procesamiento de datos Batch)

    Hadoop 2 con YARN - Batch, Interactivo, Tiempo Real - Muchos motores

    HDFS (Sistema de ficheros de Hadoop)

    YARN (Gestor de Recursos del Clster)

  • Introduccin a Apache Spark

    | 66

    EVOLUCIN DE HADOOP Hadoop y su ecosistema

    Hadoop 1 - Proceso Batch - Un nico motor de procesamiento

    HDFS (Sistema de ficheros de Hadoop)

    MapReduce (Gestor de Recursos del Clster / Procesamiento de datos Batch)

    Hadoop 2 con YARN - Batch, Interactivo, Tiempo Real - Muchos motores

    HDFS (Sistema de ficheros de Hadoop)

    YARN (Gestor de Recursos del Clster)

  • Muchas gracias

    Centros de Competencia / Business Analytics Daniel Villanueva Jimnez [email protected] Avda. de Bruselas 35 28108 Alcobendas, Madrid Espaa T +34 91 480 50 00 F +34 91 480 50 80 www.indracompany.com

    mailto:[email protected]

    Centros de Competencia - BAIntroduccin a Apache HadoopObjetivosAGENDACaractersticas - volumenCaractersticas - volumenCaractersticas - variedadCaractersticas - variedadCaractersticas - variedadCaractersticas - variedadCaractersticas - velocidadCaractersticas - veracidadCaractersticas - valorNmero de diapositiva 13SOLUCION TRADICIONALSOLUCION TRADICIONALComputacin distribuida tradicionalComputacin distribuida tradicionalAGENDAHistoria de hadoopQu es hadoop?HDFSHDFSHDFSHDFSHDFSmapreduceMapreduce - ejemploMapreduce - ejemploMapreduce - ejemploMapreduce - ejemploMapreduce - ejemploMapreduce - ejemploMapreduce - ejemploMapreduce - ejemploMapreduce - ejemploMapreduce - ejemploMapreduce - ejemploMapreduce - ejemplomapreducemapreduceCaractersticashadoop / Base de datos TRADICIONALAGENDASqoopFlumehivehiveEcosistema de hadoopPigOZZIEmahoutmahouthbasehbasehuehueAmbarizookeeperzookeeperEcosistema de hadoopdistribuciones de hadoopAGENDAEvolucin de hadoopEvolucin de hadoopEvolucin de hadoopEvolucin de hadoopNmero de diapositiva 67