2. Big Data
Tecnologías y técnicas para trabajar productivamente con
datos en cualquier escala
Generación
de datos
Captura
&
Almacenamiento
Computación
&
Análsis
Visualización
6. Base de datos NoSQL
Fácil de escalar
Cero administración
Latencia de un único dígito de milisegundo
Amazon
DynamoDB
7. Data Warehouse relacional
MPP – Procesamiento Paralelo Masivo
Escalabilidad en PBs
Completamente administrado
Costo de $1.000 / TB / año
Amazon
Redshift
8. Hadoop como servicio
Hive, Pig, Impala, Hbase, Spark
Fácil de usar, administrado
Uso de On-demand y Spot
Integrable con S3, DynamoDB y Kinesis
Amazon
Elastic
MapReduce
22. Capturar logs en un stream de Amazon Kinesis
Descargar un archivo de log de ejemplo de Apache httpd:
http://elasticmapreduce.s3.amazonaws.com/samples/pig-
apache/input/access_log_1
Ejecutar Amazon Kinesis Log4J Appender:
24. Amazon EMR’s Hive
• Software para ejecutar consultas SQL-like (HiveQL) en Hadoop
• Schema on read: mapea tablas para datos de entrada
• Accede dados en Amazon S3, DynamoDB y Kinesis
• Consultar formatos complejos usando SerDe
• Transformar datos con User Defined Functions (UDF)
25. Configurar Hive para acceder Amazon Kinesis
> hive
hive> SET kinesis.accessKey=IAM-ACCESS-KEY;
hive> SET kinesis.secretKey=IAM-SECRET-KEY;
hive> SET kinesis.nodata.timeout=1;
hive> SET kinesis.endpoint.region=REGION;
hive> SET kinesis.retry.interval=1000;
hive> SET kinesis.retry.maxattempts=3;
29. Test de Amazon EMR leyendo de Amazon
Kinesis
-- return the first row in the stream
hive> SELECT * FROM apachelog_from_kinesis LIMIT 1;
-- return count all items in the Stream
hive> SELECT COUNT(1) FROM apachelog_from_kinesis;
-- return count of all rows with given host
hive> SELECT COUNT(1) FROM apachelog_from_kinesis
WHERE host="66.249.67.3”;
31. Creación de una tabla externa en Amazon S3
hive> CREATE EXTERNAL TABLE apachelog_to_s3 (
request_time STRING, host STRING,
request STRING, status INT,
referrer STRING, agent STRING
)
PARTITIONED BY (hour STRING)
ROW FORMAT DELIMITED FIELDS TERMINATED BY 't'
STORED AS TEXTFILE
LOCATION 's3://BUCKET-NAME/emroutput';
43. Consultar datos en Amazon Redshift
-- mostrar los requests de una determinada dirección IP
SELECT host, request FROM apachelog
WHERE host = '66.249.67.3';
-- contar todos los requests de un determinado dia
SELECT COUNT(1) FROM apachelog
WHERE request_time LIKE '2009-07-21%';
-- mostrar los requests referenciados desde otros sites
SELECT * FROM apachelog
WHERE referrer NOT LIKE '"-"';