APACHE HADOOP: LA BASE DEL BIG DATA
Apache Hadoop es un framework open-source escrito en Java que permite el almacenamiento distribuido y el procesamiento paralelo de conjuntos de datos extremadamente grandes (petabytes e incluso exabytes) en clusters de hardware commodity (servidores baratos y estándar). En lugar de depender de servidores muy potentes y caros, Hadoop distribuye tanto los datos como el procesamiento entre cientos o miles de máquinas, logrando alta escalabilidad, tolerancia a fallos y bajo costo.
Apache Hadoop es uno de los proyectos más importantes del Big Data. Aunque ha evolucionado y ya no es la única herramienta del mercado, sigue siendo la base tecnológica de muchos data lakes.
Apache Hadoop es el framework que democratizó el Big Data. Aunque el ecosistema ha evolucionado hacia herramientas más modernas y fáciles de usar, HDFS y YARN continúan siendo la base de muchos de los data platforms más grandes del mundo. Quien entienda bien Hadoop, entiende los fundamentos del Big Data distribuido.
Componentes Principales de Hadoop
Hadoop está compuesto por cuatro módulos principales:
| Componente | Nombre Completo | Función Principal |
|---|---|---|
| HDFS | Hadoop Distributed File System | Almacenamiento distribuido y tolerante a fallos |
| YARN | Yet Another Resource Negotiator | Gestión de recursos y scheduling |
| MapReduce | MapReduce | Motor de procesamiento batch (original) |
| Hadoop Common | Hadoop Common | Librerías y utilidades compartidas |
HDFS es el componente más utilizado hoy en día. Divide los archivos en bloques (por defecto 128 MB o 256 MB), los replica (por defecto 3 copias) y distribuye los bloques entre los nodos.YARN (introducido en Hadoop 2) separó la gestión de recursos del motor de procesamiento, permitiendo que otros frameworks (como Spark) usen el mismo clúster.
Ventajas de Apache Hadoop
- Escalabilidad lineal — Agrega más nodos = más capacidad.
- Alta disponibilidad y tolerancia a fallos — Diseñado para asumir que los nodos fallan.
- Economía — Funciona en hardware commodity (bajo costo).
- Flexibilidad — Puede almacenar datos estructurados, semi-estructurados y no estructurados sin esquema previo (schema-on-read).
- Ecosistema maduro — Hive, Pig, HBase, Spark, Kafka, etc.
Desventajas de Apache Hadoop
- Complejidad — Configurar y mantener un clúster Hadoop on-premise es complejo.
- Procesamiento batch lento — MapReduce es orientado a disco, por lo que es mucho más lento que Spark.
- Latencia alta — No es adecuado para procesamiento en tiempo real.
- Consumo de recursos — NameNode (el punto central de HDFS) sigue siendo un bottleneck en clusters muy grandes.
- Curva de aprendizaje — Requiere conocimientos profundos de Linux, Java y redes.
Casos de Uso
- Data Lakes empresariales on-premise o en nube.
- Procesamiento batch de grandes volúmenes (logs, transacciones, datos históricos).
- Archivos fríos (cold storage) de datos masivos.
- Entornos donde el costo de almacenamiento es crítico.
- Empresas del sector financiero, telecomunicaciones, retail y gobierno con infraestructuras legacy grandes.