Qué es EMR y cuándo usarlo
Clase 29 de 52 • Curso de Big Data en AWS
Contenido del curso
Arquitecturas
Extracción de información
- 9

Cómo mover datos a cloud con SDK y CLI
02:21 min - 10

Python y boto3 para listar buckets S3
10:16 min - 11

Boto3: inicializar clients de AWS en Python
03:56 min - 12

API Gateway como puerta de big data
03:40 min - 13

Storage Gateway: puerta entre on-premise y S3
03:13 min - 14

AWS Kinesis: streaming masivo de datos
05:53 min - 15

Cómo crear Kinesis Data Stream en AWS
06:50 min - 16

Despliegue automatizado de Kinesis con CloudFormation
10:42 min - 17

Cómo Kinesis Firehose entrega datos en tiempo real
03:27 min - 18

Configuración de Kinesis Firehose en AWS
05:45 min - 19
Configuración Básica de Amazon Kinesis Firehose en AWS
02:53 min - 20

MSK vs Kinesis: cuál elegir en AWS
03:42 min - 21

Creación de clúster AWS MSK desde la consola
07:21 min
Transformación de Información
- 22

Cómo AWS Glue transforma datos en la nube
06:33 min - 23

Instalación de Apache Zeppelin paso a paso
04:49 min - 24

Configurar developer endpoint de AWS Glue con Zeppelin
05:38 min - 25

Conexión de Apache Zeppelin con AWS
08:29 min - 26

Configurar AWS Glue Crawler para poblar catálogo
08:15 min - 27

Configuración de Developer Endpoint en AWS Glue
08:00 min - 28

Cómo configurar AWS Glue ETL desde S3 a Parquet
10:23 min - 29

Qué es EMR y cuándo usarlo
Viendo ahora - 30

Crear tu primer cluster de AWS EMR
09:01 min - 31

Conectar Apache Zeppelin a EMR
03:18 min - 32

EMR automatizado con CloudFormation
06:32 min - 33

AWS Lambda para proyectos de big data
07:02 min - 34

Lambdas en big data: real time y batch
04:54 min - 35

Configuración de AWS Lambda para Big Data
07:16 min
Carga de Información
Consumo de información
Seguridad, Orquestación y Automatización
Clase pública
¿Buscas ejecutar cargas de trabajo muy grandes con flexibilidad y control? EMR, Elastic Map Reduce, permite lanzar clusters basados en Hadoop para procesar datos a escala, integrarse con servicios de AWS y orquestar tareas complejas con herramientas abiertas como Spark.
¿Qué es EMR y qué cargas de trabajo soporta?
EMR es un servicio para crear clusters con instancias S2 basados en Hadoop. Al ser cluster, ofrece instancias dedicadas, mayor administración y alta flexibilidad para escalar.
- Ejecuta cargas de trabajo muy grandes con motores de código abierto.
- Soporta múltiples frameworks: Map Reduce, Spark, Peak, Presto, Hive, Impala, Flink, Tensorflow, Zeppelin, Ganglia, USI.
- Integra con servicios de AWS: S3, Redshift, DynamoDB y Kinesis.
- Permite correr ETL de Glue en EMR usando Spark. En Glue se usan Dynamic Frames; en EMR, Data Frames de Spark. Cambia la configuración y el modelo de datos.
- Conexión a notebooks para consultar y explorar datos desde EMR.
Esta sección implica dominar conceptos como clusters, frameworks de procesamiento y diferencias entre Dynamic Frames y Data Frames para adaptar ETL sin fricción.
¿Cómo se configura y orquesta un cluster EMR?
Al lanzar el cluster puedes definir acciones iniciales y el orden de ejecución de tareas. Esto mejora la reproducibilidad y el control operativo.
- Bootstrap Actions: scripts y configuraciones que corren al inicio del lanzamiento. Útiles para cargar notebooks desde S3, cambiar puertos o aplicar parámetros personalizados. Se ejecutan antes de que el cluster quede productivo.
- Steps: pasos que organizan ETL y scripts de Python con dependencias. Se encadenan usando el parámetro depends_on para que una tarea inicie solo cuando termine la anterior.
¿Qué componentes tiene el cluster?
- Master node: orquesta y coordina los demás nodos.
- Core nodes: distribuyen la información cuando se usa HDFS (sistema de archivos distribuido).
- Task nodes: se enfocan en procesamiento de tareas.
Estas piezas permiten separar responsabilidades: coordinación, almacenamiento distribuido y cómputo, optimizando el rendimiento del cluster.
¿Qué prácticas reducen costos y aseguran continuidad?
El diseño de instancias impacta costo y resiliencia. Elegir bien los tipos y el escalado evita interrupciones costosas.
- Usa instancias tipo spot para nodos core y task: precio más bajo por subasta.
- No uses spot para el nodo maestro: si hay un bid más alto, se podría caer el cluster.
- Configura fallback a instancias por demanda si no hay spot: sube el precio, pero la carga no se afecta.
- Activa autoscaling: a medida que crece el trabajo, aumenta la cantidad de nodos automáticamente.
¿Cuándo elegir EMR frente a Glue?
- Si en Glue hay límite de 100 DPUs y el job es grande: divide el job en partes más pequeñas.
- O usa EMR para más capacidad: ganarás escala, pero aumentan la carga de información y la administración del entorno.
¿Quieres compartir cómo organizas tus steps o qué configuraciones incluyes en tus Bootstrap Actions? Comenta tus experiencias y dudas para ayudar a otros a optimizar EMR.