elastic map reduce

Post on 15-Aug-2015

257 Views

Category:

Technology

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Big Data on Amazon EC2Elastic Map Reduce

AWS Meetup Ciudad de México

Israel GaytánCTO Vitatronix

Israel.gaytan@vitatronix.net@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

top related