Logo Studenta

Introdução ao Hadoop

¡Este material tiene más páginas!

Vista previa del material en texto

Universidad de Sonora
Maestría en Ciencia de Datos
Introducción a BIG DATA
Instructor: Dr. Juan Pablo Soto Barrera
juanpablo.soto@unison.mx
Contenido
1. ¿Qué es Hadoop?
2. Definición
3. Características
4. Arquitectura 
5. HDFS
6. MapReduce
Antecedentes
2003 2004 2006
Definición:
“Framework de código abierto utilizado para el almacenamiento y
procesamiento de grandes volúmenes de datos en forma distribuida.”
Link:
https://hadoop.apache.org/
Dong Cutting
https://hadoop.apache.org/
Características
• Procesamiento distribuido
• Eficiente
• Económico
• Fácilmente escalable
• Tolerante a fallos
• Open source
Arquitectura
Arquitectura
La filosofía de Hadoop se basa en DISTRIBUIR
• Se basa en dos componentes principales:
• El Sistema de Archivos distribuido de Hadoop (HDFS), para la parte de
almacenamiento.
• El Servidor MapReduce, para la gestión distribuida de procesamiento.
HDFS
Divide los archivos en bloques, los distribuye entre distintos Data
Nodes que conforman el clúster y los replica.
MapReduce es el componente de 
procesamiento de Hadoop
• Es un modelo de programación que trabaja sobre HDFS y se basa en 
el uso de dos tipos de funciones:
• Map – “Divide y vencerás”
• Reduce – “Combina y reduce la cardinalidad”
Se basa en YARN para planificar y ejecutar el procesamiento en paralelo 
sobre los bloques de archivos distribuidos en el HDFS.
Ecosistema de Hadoop
MAP REDUCE
• Hadoop se base en el paradigma MapReduce para paralelizar los
procesos en dos fases. La primer fase es la de mapeo (map). En esta
se realiza un escaneo de los datos de entrada y se genera una lista de
pares clave-valor. Estos pares son agrupados por clave y pasados a la
función reduce que se encarga de procesarlos y generar un resultado
agrupado de los mismos.
https://es.wikipedia.org/wiki/MapReduce
Un ejemplo de aplicación: contar palabras
¿Cuándo usar Hadoop?
• Cantidades de datos muy grandes.
• Terabyte o petabyte.
• Nuestros datos están en constante crecimiento.
• Fácil escalado.
¿Cuándo no usar Hadoop?
• Análisis de datos en tiempo real
• Los procesos Map Reduce llevan su tiempo.
• Horas, días, semanas. (Según la cantidad).
Solución: Apache Spark
• Para un sistema con Base de Datos relacional
• Modelo de datos muy complejo.
• Join, union, etc.
Solución: Apache Hive
¿Cuándo no usar Hadoop?
• Cuando queremos modificar nuestros datos
• HDFS: Write-once-read-many
• Una vez escrito, solo podemos borrar o añadir al final
• Cuando no se puedan paralelizar los datos
Casos de estudio
• Google: flu trends permitía descubrir cómo ciertos terminos de búsqueda sirven
como buenos indicadores de la actividad de la gripe. Cualquier usuario podía
entrar y ver la evolución de la gripe a través de datos globales de las búsquedas
en google.
https://3dhealthdata.com/google-flu-trends-auge-y-caida-de-un-algoritmo/
https://3dhealthdata.com/google-flu-trends-auge-y-caida-de-un-algoritmo/

Continuar navegando