elastic map reduce
TRANSCRIPT
Big Data on Amazon EC2Elastic Map Reduce
AWS Meetup Ciudad de México
Israel GaytánCTO Vitatronix
[email protected]@isragaytan
“Toto, creo que ya no estamos más en Kansas”
Dorothy
El Mago de Oz
BIG DATA
Infraestructura y servicios AWS
Servicios Big Data
Elastic Map Reduce: Procesamiento con lotes con Apache Hadoop
Kinesis: Procesamiento de flujo de datos para big data.
Data Pipeline: Podemos organizar flujos de trabajos complejos orientados a datos
Machine Learning: Aplicar algoritmos de aprendizaje automático para modelos y predicciones sobre sus datos
¿Qué es Map Reduce?
• Map reduce es el modelo de programación y el corazón de Hadoop
• Toma datos de manera masiva y los divide a través de un número de instancias EC2
• Tiene dos fases la fase Map y la fase Reduce• Se programa en Java y se envía de manera
distribuida al clúster
¿Qué es Map Reduce?
Flujo de Elastic Map Reduce
Flujo de Datos
Road
• Poner los datos en S3• Programar Map Reduce en Java y enviar el jar
(driver) a S3• Programar en Hive o Pig • Devolver los resultados a S3• Hacer visualizaciones de los datos
Log FilesApr 23 20:06:16 hostname.local ./generate-log.sh[22382]: INFO: Login successful for user AliceApr 23 20:06:16 hostname.local ./generate-log.sh[22382]: INFO: Login successful for user BobApr 23 20:06:16 hostname.local ./generate-log.sh[22382]: WARNING: Login failed for user MalloryApr 23 20:06:16 hostname.local ./generate-log.sh[22382]: SEVERE: Received SEGFAULT signal from process EveApr 23 20:06:16 hostname.local ./generate-log.sh[22382]: INFO: Logout occurred for user AliceApr 23 20:06:16 hostname.local ./generate-log.sh[22382]: INFO: User Walter accessed file /var/log/messagesApr 23 20:06:16 hostname.local ./generate-log.sh[22382]: INFO: Login successful for user ChuckApr 23 20:06:16 hostname.local ./generate-log.sh[22382]: INFO: Password updated for user CraigApr 23 20:06:16 hostname.local ./generate-log.sh[22382]: SEVERE: Disk write failureApr 23 20:06:16 hostname.local ./generate-log.sh[22382]: SEVERE: Unable to complete transaction - Out of memoryApr 23 20:06:17 hostname.local ./generate-log.sh[22382]: INFO: Login successful for user AliceApr 23 20:06:17 hostname.local ./generate-log.sh[22382]: INFO: Login successful for user BobApr 23 20:06:17 hostname.local ./generate-log.sh[22382]: WARNING: Login failed for user MalloryApr 23 20:06:17 hostname.local ./generate-log.sh[22382]: SEVERE: Received SEGFAULT signal from process EveApr 23 20:06:17 hostname.local ./generate-log.sh[22382]: INFO: Logout occurred for user AliceApr 23 20:06:17 hostname.local ./generate-log.sh[22382]: INFO: User Walter accessed file /var/log/messagesApr 23 20:06:17 hostname.local ./generate-log.sh[22382]: INFO: Login successful for user ChuckApr 23 20:06:17 hostname.local ./generate-log.sh[22382]: INFO: Password updated for user CraigApr 23 20:06:17 hostname.local ./generate-log.sh[22382]: SEVERE: Disk write failureApr 23 20:06:17 hostname.local ./generate-log.sh[22382]: SEVERE: Unable to complete transaction - Out of memoryApr 23 20:06:17 hostname.local ./generate-log.sh[22382]: INFO: Login successful for user AliceApr 23 20:06:17 hostname.local ./generate-log.sh[22382]: INFO: Login successful for user BobApr 23 20:06:17 hostname.local ./generate-log.sh[22382]: WARNING: Login failed for user Mallory
Mapper y Reducer
Driver
Road
Road
Road
Road
Road
Resultados
Apr 23 20:06:16 50Apr 23 20:06:17 159Apr 23 20:06:18 35Apr 23 20:06:17 160
Hive y Pig
• Hive es un lenguaje parecido a SQL• Pig es un lenguage de flujo especializado para
semi estructurado o no estructurad• Es más fácil Hive y Pig que Map Reduce Nativo
Hive y Pig on EMR
¿ EMR ?
• Levantar clúster• Elegir AMI o sistema operativo• Elegir distribuciones de Hadoop como
Cloudera, HortonWorks, Mapr• Elegir bien infraestructura • ¡Placement groups para baja latencia!• Cuidar los IOPS
Pequeña comparativa herramientas
• EMR = Hadoop cualquier distribución• Data Pipeline = Oozie• Kinesis = Flume, Kafka, Scribe + Storm• Lambda = Kafka + Storm/Spark + NoSQL/SQL• Amazon EMR= Spark MLib
Preguntas y Respuestas
GRACIAS