← CC3084

Big Data y Hadoop

Semestre 02, 2026

Definición

Big Data

Conjuntos extremadamente grandes y diversos de datos estructurados, no estructurados y semiestructurados que crecen exponencialmente a lo largo del tiempo.

Criterio práctico

La definición no depende de un número. Un conjunto entra en el terreno de Big Data cuando las herramientas tradicionales dejan de servir.

El cambio de escala

Los métodos estadísticos clásicos suponen que los datos caben en memoria y llegan ordenados.
Los datos modernos llegan de sensores, aplicaciones, transacciones y redes sociales, sin pausa y sin esquema fijo.
Una sola máquina ya no los almacena, y una base relacional ya no los consulta en tiempo razonable.
La respuesta no es una computadora más grande, sino muchas computadoras coordinadas.

La idea central


Muchos datos -> Muchas máquinas -> Procesamiento distribuido -> Decisiones
La tensión de fondo

Todo el ecosistema de Big Data existe para resolver un solo problema. Los datos crecen más rápido que la capacidad de una sola máquina.

Las V del Big Data

Las tres originales eran volumen, velocidad y variedad. Con el tiempo la lista creció.

Volumen: la cantidad de datos generados y almacenados, medida en terabytes y petabytes.
Velocidad: el ritmo al que los datos se generan y deben procesarse, a veces en tiempo real.
Variedad: la diversidad de formatos, de tablas a imágenes, audio, texto libre y bitácoras.
Veracidad: la confiabilidad de los datos, afectada por ruido, sesgo, duplicados y faltantes.

Las V de aprovechamiento

Viabilidad: la capacidad real de una organización de usar los datos que recopila.
Visualización: la necesidad de presentar resultados de forma comprensible para quien decide.
Valor: el beneficio concreto que se extrae de los datos, la razón última del esfuerzo.
Sin valor, las demás V son solo costo de infraestructura.

Las V de calidad y riesgo

Validez: la precisión y exactitud de los datos con respecto al uso previsto.
Volatilidad: el tiempo durante el cual un dato sigue siendo relevante.
Variabilidad: cómo cambia el significado o la estructura de los datos a lo largo del tiempo.
Vulnerabilidad: las medidas de seguridad para procesar los datos conforme a la ley y al cliente.

Volumen y validez no son lo mismo

Advertencia

Un conjunto enorme puede ser inútil. Tener más filas no corrige un instrumento mal calibrado ni un formulario mal diseñado.

Consecuencia

La escala amplifica tanto la señal como el error, y un sesgo pequeño repetido millones de veces sigue siendo un sesgo.

Fuentes de Big Data

Reconocer la fuente anticipa el formato, la velocidad y la calidad de los datos.

Redes sociales: publicaciones, reacciones, comentarios y grafos de seguidores.
Transacciones: compras, pagos, reservas y movimientos bancarios.
Máquinas y sensores: internet de las cosas, telemetría, GPS y cámaras.
Registros de sistemas: bitácoras de servidores, clics y sesiones de usuario.
Documentos y multimedia: correos, contratos, imágenes, audio y video.
Datos abiertos: censos, clima, indicadores públicos y datos gubernamentales.

Estructura de los datos

TipoDescripciónEjemplo
EstructuradoEsquema fijo, filas y columnasTabla de ventas
SemiestructuradoEtiquetas o jerarquía, sin esquema rígidoJSON, XML, bitácoras
No estructuradoSin esquema algunoTexto libre, imágenes, audio
Dónde está el volumen

La mayor parte de lo que producen las organizaciones cae en las dos últimas categorías, y ahí es donde fallan las herramientas tradicionales.

Desafíos

Cada V se convierte en un problema de ingeniería concreto.

1Volumen de datos
  • Dónde almacenarlos cuando ya no caben en un disco.
  • Cómo procesarlos cuando una sola CPU tardaría semanas.
  • Cómo analizarlos cuando el algoritmo clásico supone que todo cabe en memoria.
2Velocidad de generación
  • Cómo procesar y analizar a la misma velocidad a la que llegan los datos.
  • Cómo obtener información válida para decidir antes de que pierda vigencia.
  • Qué hacer cuando el flujo supera la capacidad de procesamiento.

Privacidad y seguridad

3Proteger lo que se recopila
  • Cómo proteger datos repartidos en cientos de nodos.
  • Cómo asegurar la privacidad de las personas detrás de esos registros.
  • Cómo cumplir con la legislación aplicable sin bloquear el análisis.
4Calidad y talento
  • Los datos llegan sucios, duplicados y con huecos.
  • Integrar fuentes heterogéneas exige acordar identificadores, unidades y significados.
  • El costo de infraestructura y de personal capacitado sigue siendo una barrera real.

Tipos de Big Data

Una distinción práctica los separa por la función que cumplen en la organización.

Operacional

Los datos cotidianos que el negocio genera al funcionar. Alto volumen de escrituras, operaciones pequeñas y disponibilidad constante.

Analítica

Los datos que se procesan para apoyar decisiones. Consultas complejas sobre grandes históricos y agregaciones de muchas fuentes.


Operacional -> ingestión -> Analítica -> Decisión -> Operacional

Ejemplos de cada tipo

Operacional
Reservas en línea de boletos de tren, avión o cine.
Compras en tiendas de comercio electrónico.
Actividad en aplicaciones y redes sociales.
Analítica
Comercialización de acciones en mercados financieros.
Pronóstico del tiempo.
Monitoreo del estado de salud de un paciente.

Principales tecnologías

CapaFunciónHerramientas
AlmacenamientoGuardar datos distribuidosHDFS, S3, Cassandra
RecursosRepartir CPU y memoria del clústerYARN, Mesos, Kubernetes
ProcesamientoEjecutar el cómputo distribuidoMapReduce, Spark, Flink
ConsultaAnalizar con lenguajes conocidosHive, Spark SQL, Presto
IngestaMover datos entre sistemasKafka, Sqoop, Flume
PlataformaIntegrar todo el ciclo de vidaDatabricks, BigQuery

Apache Hadoop

Hadoop

Framework de código abierto para almacenar y procesar grandes volúmenes de datos en clústeres de computadoras comunes.

Premisa

El hardware falla, y el software debe asumirlo desde el diseño en lugar de tratarlo como una excepción.

Principios de diseño

  • Cada nodo del clúster tiene su propio disco, memoria, ancho de banda y procesamiento.
  • Los datos entrantes se dividen en bloques individuales que se guardan en la capa de almacenamiento distribuido.
  • El sistema asume que ninguna unidad de disco ni nodo esclavo es confiable.
  • Cada conjunto de datos se replica en varios nodos del clúster.
  • El nodo maestro conserva los metadatos de cada bloque y de todas sus réplicas.

Las tres capas de Hadoop


┌─────────────────────────────────────────────────────┐
│  Aplicaciones     Hive · Spark · Sqoop · MapReduce  │
├─────────────────────────────────────────────────────┤
│  Cómputo          YARN, reparte los recursos        │
├─────────────────────────────────────────────────────┤
│  Almacenamiento   HDFS, guarda los bloques          │
├─────────────────────────────────────────────────────┤
│  Hardware         nodos con RAM + CPU + disco       │
└─────────────────────────────────────────────────────┘
Por qué importa

Separar almacenamiento, recursos y procesamiento permite que cada capa evolucione por su cuenta, y explica por qué Spark pudo reemplazar a MapReduce sin tocar HDFS.

Mover el cómputo, no los datos

Copiar un petabyte por la red es carísimo y lento.
Enviar un programa de unos kilobytes a la máquina donde ya vive el dato es barato.
Las tareas se distribuyen lo más cerca posible de los servidores que guardan los bloques.
La red deja de ser el cuello de botella del sistema.

HDFS

Hadoop Distributed File System

La capa de almacenamiento distribuido de Hadoop. Toma un archivo enorme, lo corta en bloques y los reparte por el clúster.

  • Un archivo se divide en bloques de tamaño fijo, típicamente 128 MB.
  • Cada bloque se replica, por defecto tres veces, en nodos distintos.
  • Las réplicas se colocan en racks diferentes para sobrevivir a la caída de un rack completo.
  • Los nodos de datos envían una señal periódica al maestro para indicar que siguen vivos.

Componentes de HDFS

ComponenteRol
NameNodeNodo maestro, guarda los metadatos y sabe dónde vive cada bloque
DataNodeNodo esclavo, almacena los bloques reales y reporta su estado
El punto crítico

El NameNode nunca guarda datos de usuario, guarda el mapa. Si se pierde el mapa, los bloques siguen ahí pero nadie sabe cómo reconstruir el archivo.

Tolerancia a fallos

Un DataNode deja de responder y sus bloques dejan de estar disponibles ahí.
El NameNode detecta que esos bloques bajaron de tres réplicas a dos.
Ordena copiarlos a otro nodo para restaurar el factor de replicación.
El usuario nunca se entera. La falla es esperada, no excepcional.

YARN

Yet Another Resource Negotiator

El negociador de recursos del clúster. Su trabajo es que muchas aplicaciones y usuarios compartan los mismos nodos sin estorbarse.

ComponenteRol
ResourceManagerDecide qué aplicación recibe qué recursos y cuándo
NodeManagerVigila los recursos de su nodo y reporta al ResourceManager
ApplicationMasterCoordina una aplicación concreta y pide recursos para ella
ContainerPaquete de memoria y CPU donde corre efectivamente una tarea

Flujo de trabajo, arranque

1Solicitud del cliente
  • Una aplicación cliente envía una solicitud al ResourceManager.
2Nace el ApplicationMaster
  • El ResourceManager le indica a un NodeManager que lo inicie dentro de un contenedor.
3Planificación
  • El ApplicationMaster se registra, consulta al NameNode dónde están los bloques y calcula cuántas tareas hacen falta.

Flujo de trabajo, ejecución

4Cola de recursos
  • El ResourceManager encola la solicitud junto con las de los demás ApplicationMasters y libera recursos conforme se desocupan.
5Creación del contenedor
  • El ApplicationMaster contacta al NodeManager asignado y le pide crear un contenedor con variables, tokens y el comando a ejecutar.
6Supervisión
  • El ApplicationMaster vigila el proceso y lo reinicia si falla. Tras cuatro intentos fallidos, el trabajo completo falla.

MapReduce

MapReduce

Modelo de programación que procesa datos dispersos en el clúster. Los datos se mapean, se barajan y se reducen a un resultado agregado.


Mapa -> Mezcla y clasificación -> Reducción -> HDFS

Fase de mapa

  • El proceso de mapeo toma expresiones lógicas individuales de los datos almacenados en los bloques de HDFS.
  • Esas expresiones pueden abarcar varios bloques y se llaman divisiones de entrada.
  • Las divisiones se entregan al proceso de mapeo como pares clave-valor.
  • Cada tarea produce un conjunto nuevo de pares clave-valor, distinto de la entrada original.

Fase de mezcla y clasificación

  • Los resultados de todas las tareas de mapa se copian a los nodos reductores.
  • Esa copia es el único intercambio de datos entre nodos durante todo el trabajo.
  • Los pares se agrupan por clave y se ordenan, porque el reductor necesita ver juntos todos los valores de una misma clave.
  • La mezcla y el ordenamiento se ejecutan en paralelo, mientras las salidas del mapa se van recuperando.

Fase de reducción

  • Las salidas del mapa llegan mezcladas y ordenadas en un único archivo de entrada dentro del nodo reductor.
  • La función de reducción agrega los valores según su clave.
  • El resultado es un nuevo par clave-valor que se almacena, por defecto, en HDFS.
  • Todas las tareas de reducción corren de forma simultánea e independiente, y la fase es opcional.

Conteo de palabras


Entrada     "el gato y el perro"

Mapa        (el,1) (gato,1) (y,1) (el,1) (perro,1)

Mezcla      (el,[1,1])  (gato,[1])  (y,[1])  (perro,[1])

Reduce      (el,2)  (gato,1)  (y,1)  (perro,1)
Escala

El mismo patrón sirve para contar palabras en un tuit o en el archivo completo de Wikipedia. Lo único que cambia es la cantidad de nodos.

El límite de MapReduce

El costo oculto

Cada trabajo escribe su resultado intermedio en disco antes de que empiece el siguiente. Para un proceso de un paso es aceptable; para un algoritmo iterativo que recorre los mismos datos cincuenta veces, el disco domina el tiempo total.

La salida

Ese límite es exactamente lo que Spark vino a resolver.

Resumen

  • Big Data describe conjuntos que crecen más rápido de lo que una sola máquina puede almacenar o procesar.
  • Las V resumen sus características, desde volumen, velocidad y variedad hasta las de calidad y riesgo.
  • Las fuentes van de redes sociales y sensores a transacciones y bitácoras, y la mayoría produce datos no estructurados.
  • Big Data operacional es lo que el negocio genera al funcionar, y la analítica es lo que se procesa para decidir.

Resumen

  • Hadoop separa almacenamiento en HDFS, recursos en YARN y procesamiento en MapReduce.
  • HDFS parte los archivos en bloques replicados y asume que el hardware va a fallar.
  • YARN reparte contenedores mediante el ResourceManager, los NodeManagers y un ApplicationMaster por trabajo.
  • MapReduce procesa en tres fases, pero paga el costo de escribir a disco entre etapas, y ese límite abre la siguiente lección.