0% encontró este documento útil (0 votos)
12 vistas15 páginas

PRII01 Bid Data Stack

Cargado por

qymerial
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
12 vistas15 páginas

PRII01 Bid Data Stack

Cargado por

qymerial
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

Big Data Stack

Proyectos II: Tendencias de la Ingeniería del Software

Pablo Ramos Criado


Proyectos II / Big Data Stack 2

Big Data Stack | Hadoop Stack

Almacena la Cluster
información
con HDFS

Procesa la
información
con MapReduce
Proyectos II / Big Data Stack 3

Big Data Stack | Hadoop Stack

§ Hadoop es una plataforma de código libre para el


almacenamiento y procesado distribuido de grandes volúmenes
información en clústeres de cientos de nodos.
§ HDFS (Hadoop Distributed File System) para almacenamiento
de información. Basado en Google File System.
§ MapReduce para el procesado. Basado en MapReduce de
Google

§ Además de estas dos herramientas, implementa otras


utilidades que:
§ Trabajan sobre MapReduce
§ Trabajan sobre HDFS
Proyectos II / Big Data Stack 4

Big Data Stack | Hadoop Stack


Proyectos II / Big Data Stack 5

HDFS: Hadoop Distributed File System

§ Para mejor manejo de los datos y mejorar la integridad de


los datos, dividimos el archivo en sub-bloques.

blk_1 ¿Cómo
distribuimos
blk_2 los datos en el
cluster?
blk_3
Proyectos II / Big Data Stack 6

HDFS: Hadoop Distributed File System

§ 3 réplicas de cada bloque.

blk_1 blk_3
blk_3 blk_2 blk_2 blk_1
blk_2 blk_3
blk_1

blk_2
NameNode blk_1
blk_3 (activo)
NameNode
(en espera)
Proyectos II / Big Data Stack 7

HDFS: Hadoop Distributed File System

§ HDFS tiene una arquitectura maestro/esclavo.


§ Un cluster HDFS está compuesto por:
§ Un NameNode que administra el acceso al sistema de archivos.
Por lo general existe un NameNode activo y otro en modo de
espera por si el primero falla.
§ Un conjunto DataNodes (tantos como nodos tiene el cluster) que
administran el almacenamiento de datos.
§ El sistema de archivos HDFS permite almacenar archivos de
todo tipo. HDFS divide los archivos en sub-bloques de un
tamaño predefinido (64MB) y los distribuye en los DataNodes
según el factor de replicación.
Proyectos II / Big Data Stack 8

Map Reduce

§ MapReduce es una técnica de procesado en paralelo de


grandes cantidades de información en clústeres.
§ Está basado en las funciones de programación funcional
map y reduce.
§ No obstante, el verdadero potencial de esta técnica surge del
uso en paralelo de estas funciones. La ejecución en un solo
hilo de esta técnica no ofrecería ninguna ventaja sustancial.
§ Esta técnica solo es eficiente para procesar grandes
cantidades de información. Para conjuntos de datos
pequeños es más eficiente la ejecución secuencial.
Proyectos II / Big Data Stack 9

Hadoop: Tres pasos

§ Map: Realiza tareas de filtrado y ordenamiento de datos.


§ Cada nodo que almacena parte de la información a procesar,
ejecuta una tarea map sobre sus datos y guarda el resultado
temporalmente.
§ Shuffle & Sort: Reorganiza los resultados.
§ Los resultados son reorganizados para que los resultados
pertenecientes a una misma clave se encuentren localizados
físicamente en un mismo nodo.
§ Reduce: Realiza tareas de agregación de datos.
§ Los resultados agrupados de una misma clave son
procesados por una tarea reduce que obtiene el resultado
final para esa clave.
Proyectos II / Big Data Stack 10

Map Reduce: Proces

Televisor Electrónica 450€ blk_1


Batidora Cocina 60€ put blk_2
… … … blk_1
Balón Deportes 15€

blk_2
Proyectos II / Big Data Stack 11

Map Reduce: Proces

Televisor Electrónica 450€ blk_1


Batidora Cocina 60€ put blk_2
… … … blk_1 map
Balón Deportes 15€ ce
d u map
re
ap
m
mapper.py result
reducer.py
blk_2
Proyectos II / Big Data Stack 12

Map Reduce: Proces

Televisor Electrónica 450€ blk_1


Batidora Cocina 60€ put blk_2
… … … blk_1
Balón Deportes 15€ ce
d u
re
ap
m
shuffle
mapper.py & sort result
reducer.py
blk_2
Proyectos II / Big Data Stack 13

Map Reduce: Proces

Televisor Electrónica 450€ blk_1


Batidora Cocina 60€ put blk_2
… … … blk_1
Balón Deportes 15€ ce
d u
re
ap
m
mapper.py reduce
reducer.py
blk_2
Proyectos II / Big Data Stack 14

Map Reduce: Proces

Televisor Electrónica 450€ blk_1


Batidora Cocina 60€ put blk_2
… … … blk_1
Balón Deportes 15€ ce
d u
re
ap
m
get

mapper.py result
reducer.py
blk_2
Electrónica 33463€
Cocina 63450€
Deportes 11515€
Proyectos II / Big Data Stack 15

Big Data Stack | Hadoop Stack

También podría gustarte