EMR - Guía Completa

Amazon EMR es el servicio principal para ejecutar Hadoop, Spark y otros frameworks de big data en AWS a escala.

Amazon EMR - Guia Completa (Claves para el Examen DEA-C01)

Introduccion

Amazon EMR (Elastic MapReduce) aparece tanto en Domain 1: Data Ingestion and Transformation (34%) como en Domain 2: Data Store Management (26%) del examen DEA-C01.

EMR es un servicio completamente administrado que facilita la ejecucion de frameworks de big data como Hadoop y Spark en AWS. El examen evalua con frecuencia la arquitectura del cluster, las opciones de almacenamiento y los tipos de cluster.

Esta guia cubre los conceptos clave que necesitas conocer para preparar el examen.

---

Que es Amazon EMR?

Empecemos con los fundamentos de EMR.

| Aspecto | Detalle | | --- | --- | | Definicion | Servicio de procesamiento de big data completamente administrado basado en Apache Hadoop | | Frameworks soportados | Hadoop, Apache Spark, HBase, Presto, Flink | | Casos de uso principales | Analisis de logs, analisis financiero, trabajos ETL | | Infraestructura | Amazon EC2 + Amazon S3 | | Metodos de acceso | Consola AWS, CLI, SDK, API de EMR, SSH |

EMR se ejecuta sobre EC2 y permite acceso directo al SO mediante SSH. Aunque es completamente administrado, la capacidad de acceder al SO subyacente lo distingue de otros servicios administrados.

---

Arquitectura de nodos del cluster (3 tipos de nodos)

Los clusters de EMR se componen de tres tipos de nodos segun sus roles. Esta estructura aparece en el examen regularmente.

| Tipo de nodo | Rol | Almacenamiento | Computacion | Notas | | --- | --- | --- | --- | --- | | Master Node | Coordina y gestiona todo el cluster | X | X | Asignacion de tareas, recuperacion de fallos, gestion del estado | | Core Node | Almacenamiento + computacion | O | O | Maneja la replicacion de datos, esencial para la operacion | | Task Node | Solo computacion (opcional) | X | O | Puede usar instancias Spot para reducir costos |

Los Task Nodes no almacenan datos y solo realizan computacion. Los escenarios con instancias Spot en Task Nodes para reduccion de costos aparecen frecuentemente en el examen.

!Tipos de nodo de clúster EMR: Master, Core, Task

Comparacion de opciones de almacenamiento (HDFS vs EMRFS vs Local)

La comparacion de opciones de almacenamiento es una pregunta comun en DEA-C01.

| Almacenamiento | Descripcion | Persistencia | Casos de uso principales | | --- | --- | --- | --- | | HDFS | Sistema de archivos distribuido, division en bloques de 128MB y replicacion | Temporal (se elimina al terminar el cluster) | Datos de procesamiento intermedio, almacenamiento temporal | | EMRFS | Usa S3 como sistema de archivos compatible con Hadoop | Persistente (se mantiene tras terminar el cluster) | Datos de entrada/salida, retencion a largo plazo | | Local File System | Disco local de la instancia EC2 | Temporal (se elimina al terminar la instancia) | Cache, datos de procesamiento temporal |

Cuando el examen presenta un escenario sobre "mantener datos despues de terminar el cluster", la respuesta es EMRFS (S3). Los datos de HDFS se pierden cuando el cluster termina.

---

Metastore externo

Por defecto, el metastore de Hive se almacena en una base de datos MySQL local en el Master Node. Cuando el cluster termina, el metastore se pierde junto con el.

Para resolver esto, se utilizan metastores externos.

| Opcion | Caracteristicas | | --- | --- | | AWS Glue Data Catalog | Completamente administrado, se integra con Athena y Redshift | | Amazon RDS / Aurora | Alta disponibilidad y durabilidad, adecuado para gestion de metadatos a gran escala |

Cuando se agregan archivos directamente a HDFS o S3, Hive puede no reconocer las nuevas particiones. El comando MSCK REPAIR TABLE resuelve esto.

Este comando escanea el sistema de archivos en busca de nuevas particiones y las sincroniza con el metastore de Hive.

---

Tipos de cluster: transitorio vs de larga duracion

| Tipo | Cluster transitorio | Cluster de larga duracion | | --- | --- | --- | | Duracion | Se termina automaticamente tras completar el trabajo | Se ejecuta continuamente | | Casos de uso principales | ETL por lotes, trabajos de procesamiento periodico | Analisis interactivo, servicios permanentes | | Costo | Se cobra solo por el tiempo de ejecucion, muy eficiente en costos | Facturacion continua por el tiempo de actividad del cluster |

El procesamiento periodico por lotes usa clusters transitorios, mientras que el acceso permanente requiere clusters de larga duracion.

---

Amazon EMR Serverless

EMR Serverless es una opcion serverless que permite ejecutar aplicaciones Spark o Hive sin aprovisionar ni gestionar clusters.

Caracteristicas principales:

AWS gestiona automaticamente la optimizacion y el escalado de la capacidad del cluster Soporta Apache Spark y Apache Hive Permite enfocarse en cargas de trabajo analiticas sin la sobrecarga de gestion de infraestructura

Cuando el examen presenta un escenario sobre "ejecutar trabajos Spark sin gestionar clusters", la respuesta es EMR Serverless.

---

AWS Graviton2 y sobrecarga de memoria de Spark

Instancias AWS Graviton2

Procesadores personalizados basados en ARM que ofrecen hasta un 40% mejor relacion precio-rendimiento comparado con instancias x86 equivalentes. Particularmente efectivos para cargas de trabajo intensivas en datos como Spark y Hadoop.

Sobrecarga de memoria de Spark

Spark genera aproximadamente un 10% de sobrecarga adicional de memoria sobre la memoria solicitada para el driver y los executors. Esto se utiliza para operaciones internas como tareas de shuffle y ejecucion de tareas. Esta sobrecarga debe considerarse en la configuracion de memoria para prevenir errores OOM (Out-of-Memory).

---

Resumen rapido de referencia

| Palabra clave | Concepto clave | | --- | --- | | EMR + Spark | Procesamiento de big data en memoria | | Master Node | Solo gestion del cluster (sin almacenamiento ni computacion) | | Core Node | Almacenamiento + computacion (requerido) | | Task Node | Solo computacion (opcional, compatible con instancias Spot) | | HDFS | Almacenamiento temporal (se elimina al terminar el cluster) | | EMRFS | Almacenamiento persistente basado en S3 | | MSCK REPAIR TABLE | Sincronizacion de metadatos de particiones de Hive | | Cluster transitorio | ETL por lotes, eficiente en costos | | EMR Serverless | Sin necesidad de gestion de cluster | | Graviton2 | Hasta 40% mejor relacion precio-rendimiento vs x86 |

---

Conclusion

Amazon EMR es un servicio esencial para escenarios de procesamiento de big data en DEA-C01.

Para el examen, es especialmente importante comprender claramente lo siguiente:

Las diferencias de roles entre los tres tipos de nodos La diferencia de persistencia entre HDFS y EMRFS La diferencia de costos entre clusters transitorios y de larga duracion

Dominar estos conceptos te preparara para responder la mayoria de las preguntas sobre procesamiento de big data del DEA-C01.

Volver a la lista del blog