Agenda ¿Qué es Big Data? ¿Por qué usar Big Data? ¿Quién usa Big Data? Hadoop Arquitectura de Hadoop.
Monta una Infraestructura Big Data para tu Empresa - Sesión I
-
Upload
urko-zurutuza -
Category
Technology
-
view
864 -
download
1
Transcript of Monta una Infraestructura Big Data para tu Empresa - Sesión I
![Page 1: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/1.jpg)
Taller:
“Monta una infraestructura Big Data para tu Empresa”
Urko Zurutuza
Dpto. Electrónica e Informática
Mondragon Goi Eskola Politeknikoa JMA
Mondragon Unibertsitatea
![Page 2: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/2.jpg)
• http://bit.ly/bigdata_sesion1
• bit.ly/bigdatadocs
![Page 3: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/3.jpg)
Agenda
• Día 1: Introducción al Big Data
• Día 2: Instalación de un cluster Cloudera
• Día 3: Ejercicios sobre Cloudera
![Page 4: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/4.jpg)
Índice
1. Introducción
2. Big Data
3. Ecosistema Big Data
4. Distribuciones Big Data
5. Herramientas Big Data
6. Conclusiones
![Page 5: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/5.jpg)
![Page 6: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/6.jpg)
Data
CRECIMIENTO DE DATOS
PARA EL 2020
![Page 7: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/7.jpg)
Big Data
![Page 8: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/8.jpg)
Un poco de historia…
![Page 9: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/9.jpg)
Un poco de historia…
![Page 10: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/10.jpg)
Un poco de historia…
![Page 11: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/11.jpg)
![Page 12: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/12.jpg)
Big Data
“Big Data” hace referencia al conjunto de
información que es demasiado compleja
como para ser procesada mediante TI
tradicionales de manera aceptable
–Min Chen, Shiwen Mao, and Yunhao Liu. Big Data: A Survey. Mobile Networks and
Applications,
19(2):171–209, 2014.
![Page 13: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/13.jpg)
Big Data
“Big Data hace referencia al conjunto de
información que es demasiado compleja
como para ser procesada mediante TI
tradicionales de manera aceptable
–Min Chen, Shiwen Mao, and Yunhao Liu. Big Data: A Survey. Mobile Networks and
Applications,
19(2):171–209, 2014.
![Page 14: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/14.jpg)
Big Data
![Page 15: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/15.jpg)
Big Data
![Page 16: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/16.jpg)
Big Data – Cambio de Paradigma
![Page 17: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/17.jpg)
Big Data – Cambio de Paradigma
![Page 18: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/18.jpg)
Ecosistema Big Data
![Page 19: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/19.jpg)
Ecosistema Hadoop (simplificado)
Apache
Pig:
Scripting
Almacenamient
o redundante y
fiable
YARNGestiona
recursos del
Cluster
Procesamiento
Distribuido de
datosZookee
per:
Coordin
a la
distribuc
ión
Data
Warehous
e
Machine
LearningColector
de datos
Conector
BBDDR-
HDFS
S.
O.
S.
O.
S.
O.
S.
O.
S.
O.
S.
O.
S.
O.
S.
O.
S.
O.
![Page 20: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/20.jpg)
Distribuciones Hadoop
![Page 21: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/21.jpg)
Distribuciones Hadoop
• Cloudera
• HortonWorks
• MapR
• IBM BigInsights
• Amazon EC2
• Microsoft Azure HDInsight
• …
![Page 22: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/22.jpg)
Cloudera CDH
![Page 23: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/23.jpg)
HortonWorks
![Page 24: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/24.jpg)
MapR
![Page 25: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/25.jpg)
IBM BigInsights
![Page 26: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/26.jpg)
Oracle Big Data
![Page 27: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/27.jpg)
Amazon EMR
![Page 28: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/28.jpg)
Microsoft Azure HDInsight
![Page 29: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/29.jpg)
Componentes
![Page 30: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/30.jpg)
Apache Hadoop
• Sistema que permite una computación
– Fiable,
– Escalable, y
– Distribuida
• Un Framework que permite el procesamiento distribuido de grandes conjuntos de datos sobre clusters de ordenadores
![Page 31: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/31.jpg)
Apache Hadoop
• Hadoop common: utilidades comunes que dan soporte al resto de los módulos de Hadoop
• Hadoop Distributed File System (HDFS): sistema de ficheros distribuido.
• Hadoop YARN: sistema para la planificación de trabajos y gestión de recursos del cluster
• Hadoop MapReduce: sistema basado en YARN para procesamiento paralelo de grandes volúmenes de datos
![Page 32: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/32.jpg)
¿Quién usa Hadoop?
• Adobe– We use Apache Hadoop and Apache HBase in
several areas from social services to structureddata storage and processing for internal use.
– We currently have about 30 nodes running HDFS, Hadoop and HBase in clusters ranging from 5 to14 nodes on both production and development. We plan a deployment on an 80 nodes cluster.
– We constantly write data to Apache HBase and run MapReduce jobs to process then store it back to Apache HBase or external systems.
![Page 33: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/33.jpg)
¿Quién usa Hadoop?
• EBay
– 532 nodes cluster (8 * 532 cores, 5.3PB).
– Heavy usage of Java MapReduce, Apache
Pig, Apache Hive, Apache HBase
– Using it for Search optimization and Research.
![Page 34: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/34.jpg)
¿Quién usa Hadoop?
• Facebook– We use Apache Hadoop to store copies of internal log
and dimension data sources and use it as a source for reporting/analytics and machine learning.
– Currently we have 2 major clusters:• A 1100-machine cluster with 8800 cores and about 12 PB raw
storage.
• A 300-machine cluster with 2400 cores and about 3 PB raw storage.
– Each (commodity) node has 8 cores and 12 TB of storage.
– We are heavy users of both streaming as well as the Java APIs. We have built a higher level data warehousing framework using these features called Hive (see the http://hadoop.apache.org/hive/).
![Page 35: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/35.jpg)
¿Quién usa Hadoop?
• Last.fm
– 100 nodes
– Dual quad-core Xeon L5520 @ 2.27GHz & L5630 @ 2.13GHz , 24GB RAM, 8TB(4x2TB)/node storage.
– Used for charts calculation, royalty reporting, log analysis, A/B testing, dataset merging
– Also used for large scale audio feature analysis over millions of tracks
![Page 36: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/36.jpg)
¿Quién usa Hadoop?
• LinkedIn– We have multiple grids divided up based upon purpose.
– Hardware:• ~800 Westmere-based HP SL 170x, with 2x4 cores, 24GB RAM, 6x2TB SATA
• ~1900 Westmere-based SuperMicro X8DTT-H, with 2x6 cores, 24GB RAM, 6x2TB SATA
• ~1400 Sandy Bridge-based SuperMicro with 2x6 cores, 32GB RAM, 6x2TB SATA
– Software:• RHEL 6.3
• Sun JDK 1.6.0_32
• Apache Hadoop 0.20.2+patches and Apache Hadoop 1.0.4+patches
• Pig 0.10 + DataFu
• Azkaban and Azkaban 2 for scheduling
• Apache Hive, Apache Avro, Apache Kafka, and other bits and pieces...
– We use these things for discovering People You May Know and other fun facts.
![Page 37: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/37.jpg)
¿Quién usa Hadoop?
• Spotify
– We use Apache Hadoop for content generation, data aggregation, reporting and analysis
– 690 node cluster = 8280 physical cores, 38TB RAM, 28 PB storage
– +7,500 daily Hadoop jobs (scheduled by Luigi, our home-grown and recently open-sourced job scheduler - code and video)
![Page 38: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/38.jpg)
¿Quién usa Hadoop?
• Twitter– We use Apache Hadoop to store and process tweets,
log files, and many other types of data generated across Twitter. We store all data as compressed LZO files.
– We use both Scala and Java to access Hadoop'sMapReduce APIs
– We use Apache Pig heavily for both scheduled and ad-hoc jobs, due to its ability to accomplish a lot with few statements.
– We employ committers on Apache Pig, Apache Avro, Apache Hive, and Apache Cassandra, and contribute much of our internal Hadoop work to opensource (see hadoop-lzo)
![Page 39: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/39.jpg)
Almacenamiento
![Page 40: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/40.jpg)
Almacenamiento: HDFS
• Diseñado para ejecutarse en Hw común(commodity)
• Tolerante a fallos
• Diseñado para trabajo por lotes (batch)
• Diseñado para manejar ficheros grandes, enfocadoen muchos accesos (throughput), más que en velocidad (latencia)
• Modelo: escribir una vez, leer muchas
• Importancia: es más barato mover la computaciónque los datos
• Portabilidad
![Page 41: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/41.jpg)
Almacenamiento: HDFS
![Page 42: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/42.jpg)
Almacenamiento: NoSQL (Not
Only SQL)
• Base de Datos de nueva generación que
en su mayoría aborda algunas de las
siguientes características:
– no relacional,
– distribuida,
– open-source, y
– horizontalmente escalable
[fuente: http://nosql-database.org/]
![Page 43: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/43.jpg)
Almacenamiento: NoSQL (Not
Only SQL)
Tipo Descripción Ejemplo
Clave-
Valor
Cada elemento tiene una
clave y su valor asociado. emcached
Familias
de
Columnas
Para consultas sobre grandes
conjuntos de datos. Enfoque
en columnas no en filas
Document
os
Empareja una clave con una
estructura de datos o
documento.
Grafos
Guarda nodos y sus
relaciones. RRSS,
estructuras de redes,…
http://db-engines.com/en/ranking/
![Page 44: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/44.jpg)
Almacenamiento: Base de Datos
HBase
• Qué es Hbase?
– En Hbase los datos se almacenan en tablas, lascuales tienen filas y columnas… pero mejor verlocomo un mapa u objeto multidimensional
– Una tabla de Hbase contiene multiples filas.
– Una fila de datos tiene una clave ordenable y un número arbitrario de columnas. La tabla se almacena de forma dispersa, de modo que lasfilas de una misma tabla pueden tener columnastan variadas como se quiera.
![Page 45: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/45.jpg)
Almacenamiento: Base de Datos
HBase
• Map: filas de datos
{
"zzzzz" : "woot",
"xyz" : "hello",
"aaaab" : "world",
"1" : "x",
"aaaaa" : "y"
}
![Page 46: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/46.jpg)
Almacenamiento: Base de Datos
HBase
• Sorted Map: filas ordenadas por la clave
{
"1" : "x",
"aaaaa" : "y",
"aaaab" : "world",
"xyz" : "hello",
"zzzzz" : "woot"
}
![Page 47: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/47.jpg)
Almacenamiento: Base de Datos
HBase
• Multidimensional: familias de columnas por
cada fila{
"1" : {
"A" : "x",
"B" : "z"
},
"aaaaa" : {
"A" : "y",
"B" : "w"
},
"aaaab" : {
"A" : "world",
"B" : "ocean"
},
"xyz" : {
"A" : "hello",
"B" : "there"
},
"zzzzz" : {
"A" : "woot",
"B" : "1337"
}
}
![Page 48: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/48.jpg)
Almacenamiento: Base de Datos
HBase
• Multidimensional: una familia de columnas
puede tener varias columnas, identificadas
por una etiqueta o qualifier{
// ...
"aaaaa" : {
"A" : {
"foo" : "y",
"bar" : "d"
},
"B" : {
"" : "w"
}
},
"aaaab" : {
"A" : {
"foo" : "world",
"bar" : "domination"
},
"B" : {
"" : "ocean"
}
},
// ...
}
![Page 49: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/49.jpg)
Almacenamiento: Base de Datos
HBase
• Multidimensional: timestamp{
// ...
"aaaaa" : {
"A" : {
"foo" : {
15 : "y",
4 : "m"
},
"bar" : {
15 : "d",
}
},
"B" : {
"" : {
6 : "w"
3 : "o"
1 : "w"
}
}
},
// ...
}
![Page 50: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/50.jpg)
Procesamiento de datos
![Page 51: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/51.jpg)
Procesamiento de Datos
• Varios modos de alimentar un sistema
Hadoop:
– Por lotes (batch): tengo todos los datos y los
proceso
– En tiempo real (streaming): según se generan
los eventos los computo
![Page 52: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/52.jpg)
Procesamiento en batch:
MapReduce
• Marco para escribir aplicaciones que procesanenormes cantidades de datos de forma paralela en grandes clusters formados por hardware común.
• MapReduce job– Divide el conjunto de datos de entrada en pedazos
(chunks) que son procesados por tareas “map” de forma paralela.
– Ordena las salidas de los “maps”, que son entrada a las tareas “reduce”.
– Opera sobre pares clave-valor.
– No necesariamente en Java.
![Page 53: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/53.jpg)
Procesamiento en batch:
MapReduce
, 4
, 2
, 4
, 3
, 4
, 2
, 4
, 3
Split MapShuffle
&
Sort
Reduce
Master
assign
sassigns
![Page 54: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/54.jpg)
Procesamiento en batch:
MapReduce
• Ejemplo:
$ bin/hadoop dfs -cat /usr/joe/wordcount/input/file01
Hello World Bye World
$ bin/hadoop dfs -cat /usr/joe/wordcount/input/file02
Hello Hadoop Goodbye Hadoop
![Page 55: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/55.jpg)
Procesamiento en batch:
MapReduce
• Mapper: – procesa cada línea (cada línea un map)
– Divide en tokens separados por espacios (palabras)
– Emite un conjunto de claves-valor, en modo <palabra, 1>
– Map 1:• < Hello, 1>
• < World, 1>
• < Bye, 1>
• < World, 1>
– Map 2:• < Hello, 1>
• < Hadoop, 1>
• < Goodbye, 1>
• < Hadoop, 1>
![Page 56: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/56.jpg)
Procesamiento en batch:
MapReduce
• Combiner:
– Cada map se ordena y genera agregadoslocales:
– Salida del primer Map:• < Bye, 1>
• < Hello, 1>
• < World, 2>
– Salida del segundo Map:• < Goodbye, 1>
• < Hadoop, 2>
• < Hello, 1>
![Page 57: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/57.jpg)
Procesamiento en batch:
MapReduce
• Reducer:
– Suma los valores (ocurrencias de cada clave):• < Bye, 1>
• < Goodbye, 1>
• < Hadoop, 2>
• < Hello, 2>
• < World, 2>
![Page 58: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/58.jpg)
Procesamiento en batch: Apache
Pig
• Plataforma para análisis/tratamiento de datos
• Tiene un compilador que genera lassequencias de MapReduce
• Lenguaje de alto nivel: Pig Latin:
A = LOAD 'student' USING PigStorage() AS (name:chararray, age:int, gpa:float);
X = FOREACH A GENERATE name,$2;
DUMP X;
(John,4.0F)
(Mary,3.8F)
(Bill,3.9F)
(Joe,3.8F)
![Page 59: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/59.jpg)
Procesamiento en streaming:
Storm
• Sistema de computación distribuido en tiempo real
• “El hadoop del tiempo real”
• Lo que en Hadoop son trabajosMapReduce, en Storm son topologías.
– El MapReduce es un trabajo específico,
– Una topología está haciendo el trabajo de forma persistente
• Se pueden crear clusters de Storm
![Page 60: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/60.jpg)
Proceso en streaming: Spark
streaming
• Procesamiento en memoria (vs.
MapReduce)
• Muy rápido
• Java, Scala, Python
![Page 61: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/61.jpg)
Ingestión de datos
![Page 62: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/62.jpg)
Ingestión de Datos
• Varios modos de alimentar un sistema
Hadoop:
– Por lotes (batch): hacer un volcado
– En tiempo real (streaming): según se
generan los eventos
![Page 63: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/63.jpg)
Ingestión de Datos por lotes:
HDFS
• La forma más sencilla, pero debemos tener
los datos en ficheros
$ hadoop fs –put <nombre_fichero>
• Rara vez, pero podría ser…
![Page 64: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/64.jpg)
Ingestión de Datos por lotes:
Apache sqoop
• Transfiere datos entre Hadoop y datos
estructurados como Bases de Datos
Relacionales
$ sqoop import --connect jdbc:mysql://database.example.com/employees
--username aaron --password 12345
• No siempre tenemos los datos
empaquetados en un único fichero
![Page 65: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/65.jpg)
Ingestión de Datos por lotes:
Apache sqoop
tablas tablasFicheros
distribuidos
BBDD
Relacional
BBDD
RelacionalHDFS
Tratamiento
(MapReduce) (MapReduce)
(MapReduce)
![Page 66: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/66.jpg)
Ingestión de Datos en streaming:
Apache Flume
• Servicio distribuido y fiable para recopilar,
agregar y mover grandes volúmenes de datos
(de log) de forma eficiente
• De muchas y variadas fuentes de logs a un
lugar centralizado de almacenamiento de
datos (ej. Hadoop)
• Cuando los datos se generan de forma
continua
• No solo logs, también sirve para p.e. datos de
tráfico de red, datos generados por social
media, emails, …
![Page 67: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/67.jpg)
Ingestión de Datos en streaming:
Apache Flume
• Una fuente externa envía eventos a un
agente Flume, en un formato que Flume
pueda reconocer.
• El evento se guarda en el canal, hasta que
es consumido por el sumidero (Sink)
• El Sink quita el evento del canal y lo pone
en un repositorio externo o en otro origen
de Flume
![Page 68: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/68.jpg)
Ingestión de Datos en streaming:
Apache Flume
![Page 69: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/69.jpg)
Ingestión de Datos en streaming:
Apache Flume
• Origenes Flume:
– Avro
– Thrift
– Exec (el resultado de la ejecución de un comando Unix)
– Un directorio a la espera de nuevos ficheros y sus contenidos
– NetCat
– Syslog
– HTTP
![Page 70: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/70.jpg)
Ingestión de Datos en streaming:
Apache Flume
• Canales Flume:
– Memoria
– JDBC
– Fichero
– …
![Page 71: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/71.jpg)
Ingestión de Datos en streaming:
Apache Flume
• Sinks Flume:
– HDFS
– Avro
– Thrift
– IRC
– Fichero
– Hbase
– …
![Page 72: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/72.jpg)
Ingestión de Datos en streaming:
Apache Flume
• El Sink HDFS crea un fichero, lo abre, mete datos, y cierra el fichero de forma constante
• Se falla el Sink antes de cerrar el fichero, se pierden los datos: falta persistencia
• En contra de la filosofía de Hadoop: ficheros grandes Vs. muchos ficherospequeños
– Sus metadatos se guardan en memoria del NameNode!!
![Page 73: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/73.jpg)
Ingestión de Datos en streaming:
Apache Kafka
• Servicio para registro de logs distribuido y particionado
• Rápido: un Kafka “broker” puede manejarcientos de megabytes de lecturas y escrituras por segundo de miles de clientes
• Escalable: los flujos de datos se puedendividir por el cluster, y así ser consumidosde forma distribuida
• Durable: los mensajes son persistentes (en disco)
![Page 74: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/74.jpg)
Consulta de datos
![Page 75: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/75.jpg)
Consulta: Hive
• Provee un mecanismo para proyectar
estructuras de datos y ser consultadas en
un lenguaje pseudo-SQL: HiveQL
• La consulta genera un conjunto de
MapReduces, donde su resultado se
muestra como una tabla
![Page 76: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/76.jpg)
Consulta: Impala
• Mediante Impala se pueden consultar
datos de HDFS o de Hbase
• Se integra con Apache Hive, para
compartir sus tablas y BBDD.
• No usa MapReduce
• Es de Cloudera (MapR tiene Drill)
![Page 77: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/77.jpg)
Consulta: Search (Solr)
• Indexación de contenidos escalable, fiable
y distribuido
• Capaz de Indexar:
– Texto
– JSON
– XML
– CSV
![Page 78: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/78.jpg)
Análisis de Datos
![Page 79: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/79.jpg)
Análisis de datos
• In-Memory Analytics vs. In-Hadoop Analytics
• El fondo es el mismo, pero ahora: – Distribuido
– Escalable
• Herramientas– R
– Spark (Mllib)
– TODOS: RapidMiner, SAS, Teradata,…
![Page 80: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/80.jpg)
Análisis de datos: Apache Mahout
• Un entorno para generar aplicacionesescalables de machine learning– El entorno mismo
– Algoritmos de Scala + Spark, H2O y Flink
– Algoritmos Mahout para Hadoop MapReduce
• Algoritmos:– Recomendador
– K-Means, Fuzzy K-Means clustering
– Clasificadores Naïve Bayes, Random Forest
– …
![Page 81: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/81.jpg)
Análisis de datos: Apache Spark
• Procesamiento en memoria (vs.
MapReduce)
• Muy rápido
• Java, Scala, Python
![Page 82: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/82.jpg)
Análisis de datos: RHadoop
• R: Software estadístico muy extendido
• RHadoop:
– ravro: lee/escribe ficheros en formato Avro
– rmr: funcionalidad MapReduce en R
– rhdfs: funciones de gestión de ficheros en
HDFS
– rhbase: gestión de base de datos HBase
desde R.
![Page 83: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/83.jpg)
Otros…
![Page 84: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/84.jpg)
Orquestador: ozzie
• Programa flujos de trabajo para gestionar
trabajos Hadoop
• Orquesta trabajos MapReduce, generados
en Java, Pig, Hive, Sqoop,…
![Page 85: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/85.jpg)
El cuidador: Zookeeper
• Servicio de mantenimiento de:
– Información de configuración
– Información de nombres (nodos)
– Sincronización de la distribución
![Page 86: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/86.jpg)
Conclusiones
![Page 87: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/87.jpg)
Ecosistema Hadoop (simplificado)
Apache
Pig:
Scripting
Almacenamient
o redundante y
fiable
YARNGestiona
recursos del
Cluster
Procesamiento
Distribuido de
datosZookee
per:
Coordin
a la
distribuc
ión
Data
Warehous
e
Machine
LearningColector
de datos
Conector
BBDDR-
HDFS
S.
O.
S.
O.
S.
O.
S.
O.
S.
O.
S.
O.
S.
O.
S.
O.
S.
O.
![Page 88: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/88.jpg)
Objetivos: ¿Qué valor añadido quiero
obtener?
• Alinea la necesidad de Big Data con los
objetivos de negocio
• Implementar Big Data es decisión de
negocio, no de TI
• Evalúa los requisitos de los datos (V’s!)
![Page 89: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/89.jpg)
Selecciona la infraestructura
• En casa?
– Hardware (mínimo): 2*6core CPU, 24-64GB RAM, 1-2TB HDD
– Distribuciones Hadoop: Cloudera, MapR, Hortonworks
• En la nube?
– IaaS (Amazon Elastic Compute Cloud, Azure,…)
– PaaS (Amazon Elastic MapReduce, AzureHDInsight,…)
– SaaS (Teradata, sqlstream,…)
![Page 90: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/90.jpg)
Fórmate
• Diferentes perfiles:– Sistemas:
• Administración del cluster, servidores y nodos
– Desarrollo• NoSQL
• Procesamientos (Map/Reduce, Storm, Spark, Pig,…)
• Visual Analytics (d3.js, CartoDB, Gephi, Tableu,…)
– Machine Learning / Data Mining• Conocimiento de Algoritmos y procesos
• Herramientas/Lenguajes (R, SAS, …)
![Page 91: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/91.jpg)
Une las piezas
• ¿Qué preguntas debo responder?
• ¿Cómo recojo los datos?
• ¿Cómo los almaceno?
• ¿Cómo los analizo?
• ¿Cómo muestro los resultados?
![Page 92: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/92.jpg)
Realiza implementaciones ágiles e
iterativas
![Page 93: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/93.jpg)
Empieza con objetivos simples e
integra los resultados
• Según se van obteniendo pequeños
resultados, aparecen nuevas preguntas a
responder.
• Integrar resultados con el Sistema de
Producción/Sistema de Gestión actual
![Page 94: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/94.jpg)
Conclusiones
• Objetivos, estrategia, ROI
• Datos: ¿Estamos preparados?
• Infraestructura Local o en la Nube?
• Big Data está relacionado con:
Análisis de Datos = Data Science
• Analizas tus datos en “Small Data” ahora?
![Page 95: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/95.jpg)
Conclusiones
Las bases de datos tradicionales
y data warehouses siguen
siendo necesarias!
![Page 96: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/96.jpg)
Conclusiones
Hadoop no es bueno en
analítica en tiempo real!!
![Page 97: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/97.jpg)
Conclusiones
Una estrategia única basada en
Hadoop no tiene sentido
![Page 98: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/98.jpg)
![Page 99: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/99.jpg)
![Page 100: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/100.jpg)
Conclusiones
Hadoop es complicado…
![Page 101: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/101.jpg)
Conclusiones
No necesitas el ecosistema
completo
![Page 102: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/102.jpg)
Eskerrik asko
www.mondragon.edu
Urko Zurutuza
Mondragon Unibertsitatea
https://es.linkedin.com/in/uzurutuz
a/
@urkovain
![Page 103: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/103.jpg)
Montando la infraestructura
• VMWare
• Ubuntu Server 14.04:
http://www.ubuntu.com/download/server
![Page 104: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/104.jpg)
Montando la infraestructura
• Atención: Evitar “Easy Install” de VMWare.
![Page 105: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/105.jpg)
Montando la infraestructura
• VMWare, características:
– RAM: 8GB
– 2 Procesadores
– Red en modo “Bridge”
– CD/DVD: usar la imagen .iso de Ubuntu
![Page 106: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/106.jpg)
Montando la infraestructura
• Ubuntu, características:
– Nombres de las máquinas (hostname):
• taldeanodo1, taldeanodo2,…
• taldebnodo1, taldebnodo2,...
• Taldecnodo1, taldecnodo2,...
– Usuario: user
– Password: eskola2016
![Page 107: Monta una Infraestructura Big Data para tu Empresa - Sesión I](https://reader033.fdocuments.mx/reader033/viewer/2022052316/55a70bdd1a28ab210b8b48f4/html5/thumbnails/107.jpg)
Montando la infraestructura
• Ubuntu, características:
– Instalar Open SSH (al final)
– Putty
• A por ello!!