Hadoop

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 8

Nombre; Jesus Edwardo Martinez Rodriguez.

Matricula; 20210691.

Materia; Programacion Paralela.

Tema; Ecosistema Hadoop.


Índice

1. Introducción

2. Almacenamiento en Hadoop: HDFS

o 2.1. Características principales

o 2.2. Arquitectura básica

3. Procesamiento en Hadoop: MapReduce

o 3.1. Etapas principales

o 3.2. Ventajas

4. Modos de clúster en Hadoop

o 4.1. Modo Local

o 4.2. Modo Pseudo-distribuido

o 4.3. Modo Totalmente Distribuido

o 4.4. Comparativa de los modos

5. Conclusión

6. Bibliografía
Ecosistema Hadoop

Introducción

El ecosistema Hadoop es un conjunto de herramientas y tecnologías diseñadas para almacenar,


procesar y analizar grandes volúmenes de datos distribuidos. Creado por la Apache Software
Foundation, Hadoop se ha convertido en una solución líder para big data gracias a su capacidad
de manejar datos estructurados y no estructurados en entornos distribuidos. En este documento
exploraremos dos de sus componentes clave: HDFS (almacenamiento) y MapReduce
(procesamiento), así como los modos de clúster disponibles para su implementación.

Hadoop, desarrollado por Apache, ofrece una solución escalable y eficiente para enfrentar estos
desafíos. Su arquitectura se basa en dos componentes fundamentales:

1. HDFS (Hadoop Distributed File System): Sistema de archivos distribuido diseñado


para almacenamiento de grandes conjuntos de datos.
2. MapReduce: Modelo de procesamiento distribuido que permite la ejecución paralela de
tareas en un clúster.

El ecosistema Hadoop incluye herramientas complementarias como Hive, Pig y Spark, que
potencian su funcionalidad. Este documento se enfoca en HDFS, MapReduce y los modos de
operación de clúster, ofreciendo un panorama integral del funcionamiento de Hadoop en distintas
etapas y escalas.
1. Almacenamiento en Hadoop: HDFS

HDFS (Hadoop Distributed File System) es el sistema de archivos distribuido que permite
almacenar grandes cantidades de datos en un clúster.

Características principales:

• Distribución de datos: Los archivos se dividen en bloques y se distribuyen entre múltiples


nodos del clúster.

• Alta tolerancia a fallos: Mediante la replicación de datos, garantiza la disponibilidad


incluso si fallan algunos nodos.

• Escalabilidad horizontal: Es posible añadir nodos al clúster para aumentar la capacidad


de almacenamiento.

• Compatibilidad: Diseñado para manejar datos grandes y trabajar junto con las
herramientas del ecosistema Hadoop.

Arquitectura básica:

• NameNode: Gestiona la metadata del sistema de archivos y supervisa el acceso a los


datos.

• DataNode: Almacena los bloques de datos físicos y los replica según las configuraciones.

2. Procesamiento en Hadoop: MapReduce

MapReduce es el motor de procesamiento distribuido que sustenta Hadoop. Su propósito es


dividir las tareas de procesamiento en fragmentos más pequeños, ejecutarlos en paralelo y
combinar los resultados.

3.1. Etapas principales

1. Map:
o Divide los datos de entrada en pares clave-valor.
o Este paso se realiza en paralelo en diferentes nodos del clúster.
2. Shuffle and Sort:
o Redistribuye los pares clave-valor basándose en sus claves, agrupándolos para su
procesamiento.
o Ordena los datos para simplificar la etapa de reducción.
3. Reduce:
o Consolida los resultados agrupados para generar la salida final.
o Los nodos que ejecutan esta tarea reciben los datos procesados del paso anterior.

3.2. Ventajas de MapReduce

• Escalabilidad: Puede manejar conjuntos de datos de tamaño petabyte.


• Eficiencia: Divide las tareas de manera equilibrada en el clúster.
• Tolerancia a fallos: Si un nodo falla, la tarea se reasigna automáticamente a otro nodo.

3.3. Ejemplo práctico

Supongamos que queremos contar el número de ocurrencias de cada palabra en un gran conjunto
de documentos:

• En la etapa Map, cada palabra se mapea como (palabra, 1).


• En la etapa Shuffle and Sort, se agrupan todas las claves iguales (por ejemplo, "Hadoop"
podría agruparse como ("Hadoop", [1, 1, 1])).
• En la etapa Reduce, las claves agrupadas se suman para obtener el total (por ejemplo,
("Hadoop", 3)).

3. Modos de clúster en Hadoop

Hadoop puede operar en tres modos principales. Cada uno está diseñado para atender
necesidades específicas, desde pruebas de desarrollo hasta implementaciones en producción.

4.1. Modo Local

• En este modo, Hadoop se ejecuta completamente en una sola máquina sin necesidad de
un clúster real.
• Características:
o No utiliza HDFS ni múltiples nodos.
o Los archivos se procesan desde el sistema de archivos local de la máquina.
o Ideal para desarrollo y depuración inicial de código.
o Ejecuta MapReduce en un solo hilo.
• Ventajas:
o Configuración rápida y sencilla.
o Fácil de depurar.
• Desventajas:
o No es adecuado para manejar grandes volúmenes de datos.

4.2. Modo Pseudo-distribuido

• En este modo, Hadoop utiliza un solo nodo físico para emular un clúster distribuido.
• Características:
o El mismo nodo actúa como NameNode, DataNode, JobTracker y TaskTracker.
o Usa HDFS para almacenamiento y ejecuta procesos en modo distribuido, pero
todo está en una sola máquina.
o Es útil para pruebas avanzadas o demostraciones antes de implementar en
producción.
• Ventajas:
o Permite familiarizarse con la configuración y operación de un clúster distribuido.
o Menor consumo de recursos que un clúster completo.
• Desventajas:
o Limitado por los recursos de una sola máquina.

4.3. Modo Totalmente Distribuido

• Es el modo de producción en el que Hadoop opera en múltiples nodos interconectados.


• Características:
o Los datos están distribuidos entre varios nodos del clúster.
o Cada nodo tiene roles específicos como NameNode, DataNode,
ResourceManager, etc.
o Garantiza escalabilidad, redundancia y tolerancia a fallos.
• Ventajas:
o Maneja grandes volúmenes de datos de manera eficiente.
o Escalable horizontalmente añadiendo nodos.
o Alta disponibilidad gracias a la replicación de datos en HDFS.
• Desventajas:
o Mayor complejidad en la configuración y administración.
o Requiere más recursos y conocimientos técnicos avanzados.
Conclusión

El ecosistema Hadoop, con su combinación de HDFS para almacenamiento y MapReduce para


procesamiento, es una solución robusta para abordar los retos del big data. Gracias a sus
capacidades distribuidas, tolerancia a fallos y escalabilidad, Hadoop se ha convertido en una
herramienta esencial en sectores que manejan grandes volúmenes de datos. Entender los modos
de clúster permite implementar Hadoop de manera efectiva según las necesidades específicas del
entorno.

La flexibilidad de Hadoop para operar en distintos modos de clúster (local, pseudo-distribuido y


totalmente distribuido) lo hace adaptable para diversas etapas del desarrollo y producción. En un
mundo donde los datos se han convertido en un activo estratégico, Hadoop no solo ayuda a
almacenar y procesar datos, sino que también allana el camino para insights significativos que
impulsan la innovación y la toma de decisiones informadas.
Bibliografía

1. Apache Hadoop - Wikipedia: https://en.wikipedia.org/wiki/Apache_Hadoop

2. Hadoop HDFS Documentation - GitHub: https://github.com/apache/hadoop

3. Apache Hadoop Official Documentation: https://hadoop.apache.org/docs/

4. Hadoop MapReduce Overview - Wikipedia: https://en.wikipedia.org/wiki/MapReduce

5. Hadoop Ecosystem - TutorialsPoint: https://www.tutorialspoint.com/hadoop/

También podría gustarte