SlideShare una empresa de Scribd logo
1 de 50
Evolución de BigData
@MercadoLibre
2014
Big Data Hoy
● 154 nodos fisicos
● 1.9 PB de espacio disponible
● ~ 7 Tb de RAM
● ~ 3000 cores
Big Data Hoy - Crecimiento Diario
● ~= 4Tb de datos nuevos x Dia
● > 10.000.000.000 Rows nuevas x Dia
Big Data Hoy - En cosas cotidianas
500.000 DVD’s
Big Data Hoy - En cosas cotidianas
1800 Mac Book Pro
Usos de BigData @ MELI
● Mejora de experiencia al Usuario
● Log Mining
● Ad Hoc Análisis
Como empezamos ?
Algo de Historia
Algo de Historia
Algo de Historia
● Año 2011
● 6 Nodos
● 48Tb
● 192 Gb de Ram
● 72 Cpu’s
Algo de Historia
“Con que datos comenzamos?”
Algo de Historia
Almacenamiento de la Plataforma de Traqueo
Old Storage
Filer
Algo de Historia
Almacenamiento de la Plataforma de Traqueo
Old
Storage
Filer
Hadoop Uploader
& Compresor
Algo de Historia
public static class Map extends MapReduceBase implements
Mapper<LongWritable, Text, Text, IntWritable> {
private final static IntWritable one = new IntWritable(1);
private Text word = new Text();
public void map(LongWritable key, Text value, OutputCollector<Text,
IntWritable> output, Reporter reporter) throws IOException {
String line = value.toString();
StringTokenizer tokenizer = new StringTokenizer(line);
while (tokenizer.hasMoreTokens()) {
word.set(tokenizer.nextToken());
output.collect(word, one);
}
}
}
public static class Reduce extends MapReduceBase implements
Reducer<Text, IntWritable, Text, IntWritable> {
public void reduce(Text key, Iterator<IntWritable> values,
OutputCollector<Text, IntWritable> output, Reporter reporter) throws
IOException {
int sum = 0;
while (values.hasNext()) {
sum += values.next().get();
}
output.collect(key, new IntWritable(sum));
}
}
public static void main(String[] args) throws Exception {
JobConf conf = new JobConf(WordCount.class);
conf.setJobName("wordcount");
conf.setOutputKeyClass(Text.class);
conf.setOutputValueClass(IntWritable.class);
conf.setMapperClass(Map.class);
conf.setCombinerClass(Reduce.class);
conf.setReducerClass(Reduce.class);
conf.setInputFormat(TextInputFormat.class);
conf.setOutputFormat(TextOutputFormat.class);
FileInputFormat.setInputPaths(conf, new Path(args[0]));
FileOutputFormat.setOutputPath(conf, new Path(args[1]));
JobClient.runJob(conf);
}
Algo de Historia
Algo de Historia
● Facil de explicar y usar (SQL)
● Soporte de UDFS
● Particionamiento de la información
simple
● JDBC
Algo de Historia
SELECT count(1) FROM tracking
WHERE ds>=’2014-09-16 00:00:00’
AND ds>=’2014-09-16 23:59:59’
AND PAGE_ID=’HOME’
Algo de Historia
Hadoop facil y
disponible para
todos
“Tenemos un entorno sobre el que hacer procesos
batch y discovery. Entonces Manos a la obra.”
Proyectos
Recommendations
Proyectos - Recommendations
Premisa: “Si una serie de usuarios ven productos similares,
entonces les interesan las mismas cosas (en un momento
dado)”
Proyectos - Recommendations
Session Categoria Score
1 MLA1051 30
1 MLA1052 45
2 MLA1051 15
2 MLA1052 25
2 MLA1053 18
Proyectos - Recommendations
Categ Origen Categ Recommendada Score
MLA1051 MLA1052 70
MLA1051 MLA1053 18
MLA1052 MLA1051 30
MLA1052 MLA1053 18
....
....
Proyectos - Recommendations
CREATE TEMPORARY FUNCTION category_encode AS 'com.ml.utils.udf.intdecode.CategoryEncode';
CREATE TEMPORARY FUNCTION generate_score AS 'com.ml.utils.udf.score.GenerateScore';
INSERT OVERWRITE TABLE rc_user_relations
select
main.user,main.categ, if(main.score>100,100,main.score)
from (
select user_hash as user ,
category_encode(request_data['_categid']) as categ, sum(generate_score(ds,31,3)) as score
from tracking
where
ds>='${startDate}' and
ds<='${endDate}' and
user_id <> "" and
user_hash<>"0" and
page_id='PAGE_ID_VIP' and
request_data['_categid'] <> "" and
request_data['_categid'] is not null and
request_data['_categid'] RLIKE "^[A-Z]{3}[0-9]+$"
group by user_id, category_encode(request_data['_categid'])
) main
INSERT OVERWRITE TABLE rc_categ_recommendations
SELECT ur1.categ_id as categ, ur2.categ_id as categ_recommend,
sum(ur1.score) as tot
FROM rc_user_relations ur1
JOIN rc_user_relations ur2 on ur1.cust_id=ur2.cust_id
WHERE ur2.score>6
AND ur1.categ_id <> ur2.categ_id
group by ur1.categ_id, ur2.categ_id
order by categ, categ_recommend, tot desc;
Proyectos - Recommendations
“Buenisimo!!! Podemos calcular recomendaciones,
pero… Esta info es Batch, como la mostramos a
nuestros usuarios”
Proyectos - Recommendations
Recommendations Api RedisDB
On-Line
Proyectos - Suggestions
Suggestions
Proyectos - Suggestions
● Calculamos lo más buscado del último año (>
50M de búsquedas distintas)
● Subimos esta data a un storage temporal
● Cargamos la data a un cluster de árboles de
prefijos
SWIFT
Proyectos - Suggestions
Proxy
MLA
Shard 0
Shard 1
Shard N
Otras fuentes de Datos
Otras fuentes de datos
● Load Balancer access-log
● MercadoClics (clics/prints)
● Scoring & Fraude
● Seguridad
“Hasta aca pudimos resolver problemáticas Batch, el
problema surgió cuando se necesito empezar a contar con
la información más rápido”
Real-Time
● Poder contar con la información a
medida que se genera (t < 10s)
● Poder tomar acciones de forma
instantánea
● Permitir a cualquier proyecto consumir
los datos
● Poder trabajar sobre todo el volumen de
información
Real-Time
Real-Time - Nueva Plataforma de Tracking
Load
Balancer
WS
Stream
Hadoop
Real Time Consumers
Real-Time - Nueva Plataforma de Tracking - Stream
Sources
Complementador
Pipeline Consumidores
1
N
Real-Time - Por que Kafka?
● Escalabilidad Horizontal
● Poco consumo de recursos
● Rapido
● Soporte de volúmenes muy elevados de tráfico
● Confiable
Real-Time - Por que Kafka?
Proyecto usando Real-Time
Filter and
Process
Std-IN
KReader
API
Stream
“Tenemos off-line y on-line, para BigData, que pasa con un
warehouse tradicional? ”
DataWarehouse
DataWarehouse
Extract and Summarize
Process
DataWarehouse
Proximos Pasos...
Proximos Pasos
● Real Time Analytics Query
○ Impala
○ Presto
○ Shark
● Spark como remplazo a MapReduce
● Consumo simple del Stream
Evolucion de big data @ mercadolibre.com
Evolucion de big data @ mercadolibre.com

Más contenido relacionado

La actualidad más candente

Presentacion data mining (mineria de datos)- base de datos
Presentacion data mining (mineria de datos)- base de datosPresentacion data mining (mineria de datos)- base de datos
Presentacion data mining (mineria de datos)- base de datosMaría Inés Cahuana Lázaro
 
Capítulo07 usodediagramasflujodatos
Capítulo07 usodediagramasflujodatosCapítulo07 usodediagramasflujodatos
Capítulo07 usodediagramasflujodatosRicardo Guzman
 
Gestores de Contenido Multimedia (GCM)
Gestores de Contenido Multimedia (GCM)Gestores de Contenido Multimedia (GCM)
Gestores de Contenido Multimedia (GCM)Ledy Cabrera
 
Estudio de Consumo de Medios y Dispositivos entre internautas mexicanos
Estudio de Consumo de Medios y Dispositivos entre internautas mexicanosEstudio de Consumo de Medios y Dispositivos entre internautas mexicanos
Estudio de Consumo de Medios y Dispositivos entre internautas mexicanosIAB México
 
DATAWAREHOUSE
DATAWAREHOUSEDATAWAREHOUSE
DATAWAREHOUSEnestor
 
Diseño y Análisis de una Plataforma e-Commerce
Diseño y Análisis de una Plataforma e-CommerceDiseño y Análisis de una Plataforma e-Commerce
Diseño y Análisis de una Plataforma e-Commerceppalos
 
1. Presentación - Proceso de Importación.pptx
1. Presentación - Proceso de Importación.pptx1. Presentación - Proceso de Importación.pptx
1. Presentación - Proceso de Importación.pptxRockaco
 
Diapositivas exportacion
Diapositivas exportacionDiapositivas exportacion
Diapositivas exportacionoscarreyesnova
 
Proyecto final Interacción humano-computadora
Proyecto final Interacción humano-computadoraProyecto final Interacción humano-computadora
Proyecto final Interacción humano-computadoraIgnacio Castillo Espitia
 
Base de datos colegio
Base de datos colegioBase de datos colegio
Base de datos colegioCarlos Buezo
 
Teorias del comercio internacional.
Teorias del comercio internacional.Teorias del comercio internacional.
Teorias del comercio internacional.Rafael Maya Sanabria
 

La actualidad más candente (20)

Presentacion data mining (mineria de datos)- base de datos
Presentacion data mining (mineria de datos)- base de datosPresentacion data mining (mineria de datos)- base de datos
Presentacion data mining (mineria de datos)- base de datos
 
Capítulo07 usodediagramasflujodatos
Capítulo07 usodediagramasflujodatosCapítulo07 usodediagramasflujodatos
Capítulo07 usodediagramasflujodatos
 
E commerce cuestionario
E commerce cuestionarioE commerce cuestionario
E commerce cuestionario
 
Gestores de Contenido Multimedia (GCM)
Gestores de Contenido Multimedia (GCM)Gestores de Contenido Multimedia (GCM)
Gestores de Contenido Multimedia (GCM)
 
Ebay
Ebay Ebay
Ebay
 
Exportacion
ExportacionExportacion
Exportacion
 
Estudio de Consumo de Medios y Dispositivos entre internautas mexicanos
Estudio de Consumo de Medios y Dispositivos entre internautas mexicanosEstudio de Consumo de Medios y Dispositivos entre internautas mexicanos
Estudio de Consumo de Medios y Dispositivos entre internautas mexicanos
 
Presentacion big data
Presentacion big dataPresentacion big data
Presentacion big data
 
Comercio Electronico
Comercio  ElectronicoComercio  Electronico
Comercio Electronico
 
DATAWAREHOUSE
DATAWAREHOUSEDATAWAREHOUSE
DATAWAREHOUSE
 
Del Modelo Entidad-Relación al Modelo relacional
Del Modelo Entidad-Relación al Modelo relacionalDel Modelo Entidad-Relación al Modelo relacional
Del Modelo Entidad-Relación al Modelo relacional
 
Diseño y Análisis de una Plataforma e-Commerce
Diseño y Análisis de una Plataforma e-CommerceDiseño y Análisis de una Plataforma e-Commerce
Diseño y Análisis de una Plataforma e-Commerce
 
Minería de datos
Minería de datosMinería de datos
Minería de datos
 
Balanza comercial
Balanza comercialBalanza comercial
Balanza comercial
 
1. Presentación - Proceso de Importación.pptx
1. Presentación - Proceso de Importación.pptx1. Presentación - Proceso de Importación.pptx
1. Presentación - Proceso de Importación.pptx
 
Diapositivas exportacion
Diapositivas exportacionDiapositivas exportacion
Diapositivas exportacion
 
Proyecto final Interacción humano-computadora
Proyecto final Interacción humano-computadoraProyecto final Interacción humano-computadora
Proyecto final Interacción humano-computadora
 
Base de datos colegio
Base de datos colegioBase de datos colegio
Base de datos colegio
 
Vértigo y Éxtasis
Vértigo y ÉxtasisVértigo y Éxtasis
Vértigo y Éxtasis
 
Teorias del comercio internacional.
Teorias del comercio internacional.Teorias del comercio internacional.
Teorias del comercio internacional.
 

Similar a Evolucion de big data @ mercadolibre.com

13 14 keynote dando sentido al internet de las cosas, infobright
13 14 keynote dando sentido al internet de las cosas, infobright13 14 keynote dando sentido al internet de las cosas, infobright
13 14 keynote dando sentido al internet de las cosas, infobrightSoftware Guru
 
Cómo construir una plataforma poderosa de datos en un ambiente con recursos r...
Cómo construir una plataforma poderosa de datos en un ambiente con recursos r...Cómo construir una plataforma poderosa de datos en un ambiente con recursos r...
Cómo construir una plataforma poderosa de datos en un ambiente con recursos r...Software Guru
 
Pablo Doval | Plain Concepts | Open Data
Pablo Doval | Plain Concepts | Open DataPablo Doval | Plain Concepts | Open Data
Pablo Doval | Plain Concepts | Open DataSmash Tech
 
Big Data, Almacenes de datos empresariales (EDW) y Windows Azure (SQL Databas...
Big Data, Almacenes de datos empresariales (EDW) y Windows Azure (SQL Databas...Big Data, Almacenes de datos empresariales (EDW) y Windows Azure (SQL Databas...
Big Data, Almacenes de datos empresariales (EDW) y Windows Azure (SQL Databas...Joseph Lopez
 
Analitica y toma de decisiones en tiempo real sobre plataformas big data
Analitica y toma de decisiones en tiempo real sobre plataformas big dataAnalitica y toma de decisiones en tiempo real sobre plataformas big data
Analitica y toma de decisiones en tiempo real sobre plataformas big dataJosé Carlos García Serrano
 
Hadoop, Cloud y Spring
Hadoop, Cloud y Spring Hadoop, Cloud y Spring
Hadoop, Cloud y Spring Miguel Pastor
 
Big Data, Almacenes de Datos Empresariales (EDW) y Windows Azure (SQL Databas...
Big Data, Almacenes de Datos Empresariales (EDW) y Windows Azure (SQL Databas...Big Data, Almacenes de Datos Empresariales (EDW) y Windows Azure (SQL Databas...
Big Data, Almacenes de Datos Empresariales (EDW) y Windows Azure (SQL Databas...Joseph Lopez
 
Sysmana 2017 monitorización de logs con el stack elk
Sysmana 2017   monitorización de logs con el stack elkSysmana 2017   monitorización de logs con el stack elk
Sysmana 2017 monitorización de logs con el stack elkJosé Ignacio Álvarez Ruiz
 
Sitios web de alto rendimiento y alta disponibilidad
Sitios web de alto rendimiento y alta disponibilidadSitios web de alto rendimiento y alta disponibilidad
Sitios web de alto rendimiento y alta disponibilidadIván Campaña Naranjo
 
Bases de datos NoSQL - Huancayo - 2010
Bases de datos NoSQL - Huancayo - 2010Bases de datos NoSQL - Huancayo - 2010
Bases de datos NoSQL - Huancayo - 2010Antonio Ognio
 
Aplicaciones escalables en la nube: mentiras y verdades
Aplicaciones escalables en la nube: mentiras y verdadesAplicaciones escalables en la nube: mentiras y verdades
Aplicaciones escalables en la nube: mentiras y verdadesEnrique Catala Bañuls
 

Similar a Evolucion de big data @ mercadolibre.com (20)

Introducción a hadoop
Introducción a hadoopIntroducción a hadoop
Introducción a hadoop
 
13 14 keynote dando sentido al internet de las cosas, infobright
13 14 keynote dando sentido al internet de las cosas, infobright13 14 keynote dando sentido al internet de las cosas, infobright
13 14 keynote dando sentido al internet de las cosas, infobright
 
Cómo construir una plataforma poderosa de datos en un ambiente con recursos r...
Cómo construir una plataforma poderosa de datos en un ambiente con recursos r...Cómo construir una plataforma poderosa de datos en un ambiente con recursos r...
Cómo construir una plataforma poderosa de datos en un ambiente con recursos r...
 
Hadoop en accion
Hadoop en accionHadoop en accion
Hadoop en accion
 
Pablo Doval | Plain Concepts | Open Data
Pablo Doval | Plain Concepts | Open DataPablo Doval | Plain Concepts | Open Data
Pablo Doval | Plain Concepts | Open Data
 
Big Data, Almacenes de datos empresariales (EDW) y Windows Azure (SQL Databas...
Big Data, Almacenes de datos empresariales (EDW) y Windows Azure (SQL Databas...Big Data, Almacenes de datos empresariales (EDW) y Windows Azure (SQL Databas...
Big Data, Almacenes de datos empresariales (EDW) y Windows Azure (SQL Databas...
 
Pgpymongo y pgpycouch
Pgpymongo y pgpycouchPgpymongo y pgpycouch
Pgpymongo y pgpycouch
 
Analitica y toma de decisiones en tiempo real sobre plataformas big data
Analitica y toma de decisiones en tiempo real sobre plataformas big dataAnalitica y toma de decisiones en tiempo real sobre plataformas big data
Analitica y toma de decisiones en tiempo real sobre plataformas big data
 
3. Hadoop
3.  Hadoop3.  Hadoop
3. Hadoop
 
Hadoop, Cloud y Spring
Hadoop, Cloud y Spring Hadoop, Cloud y Spring
Hadoop, Cloud y Spring
 
Hadoop en accion
Hadoop en accionHadoop en accion
Hadoop en accion
 
Big Data, Almacenes de Datos Empresariales (EDW) y Windows Azure (SQL Databas...
Big Data, Almacenes de Datos Empresariales (EDW) y Windows Azure (SQL Databas...Big Data, Almacenes de Datos Empresariales (EDW) y Windows Azure (SQL Databas...
Big Data, Almacenes de Datos Empresariales (EDW) y Windows Azure (SQL Databas...
 
Sysmana 2017 monitorización de logs con el stack elk
Sysmana 2017   monitorización de logs con el stack elkSysmana 2017   monitorización de logs con el stack elk
Sysmana 2017 monitorización de logs con el stack elk
 
S4-PD1-2.2 EF
S4-PD1-2.2 EFS4-PD1-2.2 EF
S4-PD1-2.2 EF
 
SMBD 2011
SMBD 2011SMBD 2011
SMBD 2011
 
SMBD 2011
SMBD 2011SMBD 2011
SMBD 2011
 
Sitios web de alto rendimiento y alta disponibilidad
Sitios web de alto rendimiento y alta disponibilidadSitios web de alto rendimiento y alta disponibilidad
Sitios web de alto rendimiento y alta disponibilidad
 
Bases de datos NoSQL - Huancayo - 2010
Bases de datos NoSQL - Huancayo - 2010Bases de datos NoSQL - Huancayo - 2010
Bases de datos NoSQL - Huancayo - 2010
 
Big data, Hadoop, HDInsight
Big data, Hadoop, HDInsightBig data, Hadoop, HDInsight
Big data, Hadoop, HDInsight
 
Aplicaciones escalables en la nube: mentiras y verdades
Aplicaciones escalables en la nube: mentiras y verdadesAplicaciones escalables en la nube: mentiras y verdades
Aplicaciones escalables en la nube: mentiras y verdades
 

Último

Reporte de Exportaciones de Fibra de alpaca
Reporte de Exportaciones de Fibra de alpacaReporte de Exportaciones de Fibra de alpaca
Reporte de Exportaciones de Fibra de alpacajeremiasnifla
 
Caldera Recuperadora de químicos en celulosa tipos y funcionamiento
Caldera Recuperadora de químicos en celulosa  tipos y funcionamientoCaldera Recuperadora de químicos en celulosa  tipos y funcionamiento
Caldera Recuperadora de químicos en celulosa tipos y funcionamientoRobertoAlejandroCast6
 
Comite Operativo Ciberseguridad 012020.pptx
Comite Operativo Ciberseguridad 012020.pptxComite Operativo Ciberseguridad 012020.pptx
Comite Operativo Ciberseguridad 012020.pptxClaudiaPerez86192
 
Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)ssuser563c56
 
clases de dinamica ejercicios preuniversitarios.pdf
clases de dinamica ejercicios preuniversitarios.pdfclases de dinamica ejercicios preuniversitarios.pdf
clases de dinamica ejercicios preuniversitarios.pdfDanielaVelasquez553560
 
2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdf
2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdf2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdf
2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdfAnthonyTiclia
 
CLASE 2 MUROS CARAVISTA EN CONCRETO Y UNIDAD DE ALBAÑILERIA
CLASE 2 MUROS CARAVISTA EN CONCRETO  Y UNIDAD DE ALBAÑILERIACLASE 2 MUROS CARAVISTA EN CONCRETO  Y UNIDAD DE ALBAÑILERIA
CLASE 2 MUROS CARAVISTA EN CONCRETO Y UNIDAD DE ALBAÑILERIAMayraOchoa35
 
ECONOMIA APLICADA SEMANA 555555555555555555.pdf
ECONOMIA APLICADA SEMANA 555555555555555555.pdfECONOMIA APLICADA SEMANA 555555555555555555.pdf
ECONOMIA APLICADA SEMANA 555555555555555555.pdffredyflores58
 
Presentación N° 1 INTRODUCCIÓN Y CONCEPTOS DE GESTIÓN AMBIENTAL.pdf
Presentación N° 1 INTRODUCCIÓN Y CONCEPTOS DE GESTIÓN AMBIENTAL.pdfPresentación N° 1 INTRODUCCIÓN Y CONCEPTOS DE GESTIÓN AMBIENTAL.pdf
Presentación N° 1 INTRODUCCIÓN Y CONCEPTOS DE GESTIÓN AMBIENTAL.pdfMIGUELANGELCONDORIMA4
 
AMBIENTES SEDIMENTARIOS GEOLOGIA TIPOS .pptx
AMBIENTES SEDIMENTARIOS GEOLOGIA TIPOS .pptxAMBIENTES SEDIMENTARIOS GEOLOGIA TIPOS .pptx
AMBIENTES SEDIMENTARIOS GEOLOGIA TIPOS .pptxLuisvila35
 
183045401-Terminal-Terrestre-de-Trujillo.pdf
183045401-Terminal-Terrestre-de-Trujillo.pdf183045401-Terminal-Terrestre-de-Trujillo.pdf
183045401-Terminal-Terrestre-de-Trujillo.pdfEdwinAlexanderSnchez2
 
Fe_C_Tratamientos termicos_uap _3_.ppt
Fe_C_Tratamientos termicos_uap   _3_.pptFe_C_Tratamientos termicos_uap   _3_.ppt
Fe_C_Tratamientos termicos_uap _3_.pptVitobailon
 
Introducción a los sistemas neumaticos.ppt
Introducción a los sistemas neumaticos.pptIntroducción a los sistemas neumaticos.ppt
Introducción a los sistemas neumaticos.pptEduardoCorado
 
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdf
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdfReporte de simulación de flujo del agua en un volumen de control MNVA.pdf
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdfMikkaelNicolae
 
Unidad 3 Administracion de inventarios.pptx
Unidad 3 Administracion de inventarios.pptxUnidad 3 Administracion de inventarios.pptx
Unidad 3 Administracion de inventarios.pptxEverardoRuiz8
 
Sesión 02 TIPOS DE VALORIZACIONES CURSO Cersa
Sesión 02 TIPOS DE VALORIZACIONES CURSO CersaSesión 02 TIPOS DE VALORIZACIONES CURSO Cersa
Sesión 02 TIPOS DE VALORIZACIONES CURSO CersaXimenaFallaLecca1
 
Seleccion de Fusibles en media tension fusibles
Seleccion de Fusibles en media tension fusiblesSeleccion de Fusibles en media tension fusibles
Seleccion de Fusibles en media tension fusiblesSaulSantiago25
 
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONALCHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONALKATHIAMILAGRITOSSANC
 
IPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESA
IPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESAIPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESA
IPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESAJAMESDIAZ55
 
CAP4-TEORIA EVALUACION DE CAUDALES - HIDROGRAMAS.pdf
CAP4-TEORIA EVALUACION DE CAUDALES - HIDROGRAMAS.pdfCAP4-TEORIA EVALUACION DE CAUDALES - HIDROGRAMAS.pdf
CAP4-TEORIA EVALUACION DE CAUDALES - HIDROGRAMAS.pdfReneBellido1
 

Último (20)

Reporte de Exportaciones de Fibra de alpaca
Reporte de Exportaciones de Fibra de alpacaReporte de Exportaciones de Fibra de alpaca
Reporte de Exportaciones de Fibra de alpaca
 
Caldera Recuperadora de químicos en celulosa tipos y funcionamiento
Caldera Recuperadora de químicos en celulosa  tipos y funcionamientoCaldera Recuperadora de químicos en celulosa  tipos y funcionamiento
Caldera Recuperadora de químicos en celulosa tipos y funcionamiento
 
Comite Operativo Ciberseguridad 012020.pptx
Comite Operativo Ciberseguridad 012020.pptxComite Operativo Ciberseguridad 012020.pptx
Comite Operativo Ciberseguridad 012020.pptx
 
Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)
 
clases de dinamica ejercicios preuniversitarios.pdf
clases de dinamica ejercicios preuniversitarios.pdfclases de dinamica ejercicios preuniversitarios.pdf
clases de dinamica ejercicios preuniversitarios.pdf
 
2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdf
2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdf2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdf
2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdf
 
CLASE 2 MUROS CARAVISTA EN CONCRETO Y UNIDAD DE ALBAÑILERIA
CLASE 2 MUROS CARAVISTA EN CONCRETO  Y UNIDAD DE ALBAÑILERIACLASE 2 MUROS CARAVISTA EN CONCRETO  Y UNIDAD DE ALBAÑILERIA
CLASE 2 MUROS CARAVISTA EN CONCRETO Y UNIDAD DE ALBAÑILERIA
 
ECONOMIA APLICADA SEMANA 555555555555555555.pdf
ECONOMIA APLICADA SEMANA 555555555555555555.pdfECONOMIA APLICADA SEMANA 555555555555555555.pdf
ECONOMIA APLICADA SEMANA 555555555555555555.pdf
 
Presentación N° 1 INTRODUCCIÓN Y CONCEPTOS DE GESTIÓN AMBIENTAL.pdf
Presentación N° 1 INTRODUCCIÓN Y CONCEPTOS DE GESTIÓN AMBIENTAL.pdfPresentación N° 1 INTRODUCCIÓN Y CONCEPTOS DE GESTIÓN AMBIENTAL.pdf
Presentación N° 1 INTRODUCCIÓN Y CONCEPTOS DE GESTIÓN AMBIENTAL.pdf
 
AMBIENTES SEDIMENTARIOS GEOLOGIA TIPOS .pptx
AMBIENTES SEDIMENTARIOS GEOLOGIA TIPOS .pptxAMBIENTES SEDIMENTARIOS GEOLOGIA TIPOS .pptx
AMBIENTES SEDIMENTARIOS GEOLOGIA TIPOS .pptx
 
183045401-Terminal-Terrestre-de-Trujillo.pdf
183045401-Terminal-Terrestre-de-Trujillo.pdf183045401-Terminal-Terrestre-de-Trujillo.pdf
183045401-Terminal-Terrestre-de-Trujillo.pdf
 
Fe_C_Tratamientos termicos_uap _3_.ppt
Fe_C_Tratamientos termicos_uap   _3_.pptFe_C_Tratamientos termicos_uap   _3_.ppt
Fe_C_Tratamientos termicos_uap _3_.ppt
 
Introducción a los sistemas neumaticos.ppt
Introducción a los sistemas neumaticos.pptIntroducción a los sistemas neumaticos.ppt
Introducción a los sistemas neumaticos.ppt
 
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdf
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdfReporte de simulación de flujo del agua en un volumen de control MNVA.pdf
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdf
 
Unidad 3 Administracion de inventarios.pptx
Unidad 3 Administracion de inventarios.pptxUnidad 3 Administracion de inventarios.pptx
Unidad 3 Administracion de inventarios.pptx
 
Sesión 02 TIPOS DE VALORIZACIONES CURSO Cersa
Sesión 02 TIPOS DE VALORIZACIONES CURSO CersaSesión 02 TIPOS DE VALORIZACIONES CURSO Cersa
Sesión 02 TIPOS DE VALORIZACIONES CURSO Cersa
 
Seleccion de Fusibles en media tension fusibles
Seleccion de Fusibles en media tension fusiblesSeleccion de Fusibles en media tension fusibles
Seleccion de Fusibles en media tension fusibles
 
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONALCHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
 
IPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESA
IPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESAIPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESA
IPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESA
 
CAP4-TEORIA EVALUACION DE CAUDALES - HIDROGRAMAS.pdf
CAP4-TEORIA EVALUACION DE CAUDALES - HIDROGRAMAS.pdfCAP4-TEORIA EVALUACION DE CAUDALES - HIDROGRAMAS.pdf
CAP4-TEORIA EVALUACION DE CAUDALES - HIDROGRAMAS.pdf
 

Evolucion de big data @ mercadolibre.com

  • 2.
  • 3. Big Data Hoy ● 154 nodos fisicos ● 1.9 PB de espacio disponible ● ~ 7 Tb de RAM ● ~ 3000 cores
  • 4. Big Data Hoy - Crecimiento Diario ● ~= 4Tb de datos nuevos x Dia ● > 10.000.000.000 Rows nuevas x Dia
  • 5. Big Data Hoy - En cosas cotidianas 500.000 DVD’s
  • 6. Big Data Hoy - En cosas cotidianas 1800 Mac Book Pro
  • 7. Usos de BigData @ MELI ● Mejora de experiencia al Usuario ● Log Mining ● Ad Hoc Análisis
  • 11. Algo de Historia ● Año 2011 ● 6 Nodos ● 48Tb ● 192 Gb de Ram ● 72 Cpu’s
  • 12. Algo de Historia “Con que datos comenzamos?”
  • 13. Algo de Historia Almacenamiento de la Plataforma de Traqueo Old Storage Filer
  • 14. Algo de Historia Almacenamiento de la Plataforma de Traqueo Old Storage Filer Hadoop Uploader & Compresor
  • 16. public static class Map extends MapReduceBase implements Mapper<LongWritable, Text, Text, IntWritable> { private final static IntWritable one = new IntWritable(1); private Text word = new Text(); public void map(LongWritable key, Text value, OutputCollector<Text, IntWritable> output, Reporter reporter) throws IOException { String line = value.toString(); StringTokenizer tokenizer = new StringTokenizer(line); while (tokenizer.hasMoreTokens()) { word.set(tokenizer.nextToken()); output.collect(word, one); } } } public static class Reduce extends MapReduceBase implements Reducer<Text, IntWritable, Text, IntWritable> { public void reduce(Text key, Iterator<IntWritable> values, OutputCollector<Text, IntWritable> output, Reporter reporter) throws IOException { int sum = 0; while (values.hasNext()) { sum += values.next().get(); } output.collect(key, new IntWritable(sum)); } } public static void main(String[] args) throws Exception { JobConf conf = new JobConf(WordCount.class); conf.setJobName("wordcount"); conf.setOutputKeyClass(Text.class); conf.setOutputValueClass(IntWritable.class); conf.setMapperClass(Map.class); conf.setCombinerClass(Reduce.class); conf.setReducerClass(Reduce.class); conf.setInputFormat(TextInputFormat.class); conf.setOutputFormat(TextOutputFormat.class); FileInputFormat.setInputPaths(conf, new Path(args[0])); FileOutputFormat.setOutputPath(conf, new Path(args[1])); JobClient.runJob(conf); }
  • 18. Algo de Historia ● Facil de explicar y usar (SQL) ● Soporte de UDFS ● Particionamiento de la información simple ● JDBC
  • 19. Algo de Historia SELECT count(1) FROM tracking WHERE ds>=’2014-09-16 00:00:00’ AND ds>=’2014-09-16 23:59:59’ AND PAGE_ID=’HOME’
  • 20. Algo de Historia Hadoop facil y disponible para todos
  • 21. “Tenemos un entorno sobre el que hacer procesos batch y discovery. Entonces Manos a la obra.”
  • 23. Proyectos - Recommendations Premisa: “Si una serie de usuarios ven productos similares, entonces les interesan las mismas cosas (en un momento dado)”
  • 24. Proyectos - Recommendations Session Categoria Score 1 MLA1051 30 1 MLA1052 45 2 MLA1051 15 2 MLA1052 25 2 MLA1053 18
  • 25. Proyectos - Recommendations Categ Origen Categ Recommendada Score MLA1051 MLA1052 70 MLA1051 MLA1053 18 MLA1052 MLA1051 30 MLA1052 MLA1053 18 .... ....
  • 26. Proyectos - Recommendations CREATE TEMPORARY FUNCTION category_encode AS 'com.ml.utils.udf.intdecode.CategoryEncode'; CREATE TEMPORARY FUNCTION generate_score AS 'com.ml.utils.udf.score.GenerateScore'; INSERT OVERWRITE TABLE rc_user_relations select main.user,main.categ, if(main.score>100,100,main.score) from ( select user_hash as user , category_encode(request_data['_categid']) as categ, sum(generate_score(ds,31,3)) as score from tracking where ds>='${startDate}' and ds<='${endDate}' and user_id <> "" and user_hash<>"0" and page_id='PAGE_ID_VIP' and request_data['_categid'] <> "" and request_data['_categid'] is not null and request_data['_categid'] RLIKE "^[A-Z]{3}[0-9]+$" group by user_id, category_encode(request_data['_categid']) ) main INSERT OVERWRITE TABLE rc_categ_recommendations SELECT ur1.categ_id as categ, ur2.categ_id as categ_recommend, sum(ur1.score) as tot FROM rc_user_relations ur1 JOIN rc_user_relations ur2 on ur1.cust_id=ur2.cust_id WHERE ur2.score>6 AND ur1.categ_id <> ur2.categ_id group by ur1.categ_id, ur2.categ_id order by categ, categ_recommend, tot desc;
  • 27. Proyectos - Recommendations “Buenisimo!!! Podemos calcular recomendaciones, pero… Esta info es Batch, como la mostramos a nuestros usuarios”
  • 30. Proyectos - Suggestions ● Calculamos lo más buscado del último año (> 50M de búsquedas distintas) ● Subimos esta data a un storage temporal ● Cargamos la data a un cluster de árboles de prefijos
  • 33. Otras fuentes de datos ● Load Balancer access-log ● MercadoClics (clics/prints) ● Scoring & Fraude ● Seguridad
  • 34. “Hasta aca pudimos resolver problemáticas Batch, el problema surgió cuando se necesito empezar a contar con la información más rápido”
  • 36. ● Poder contar con la información a medida que se genera (t < 10s) ● Poder tomar acciones de forma instantánea ● Permitir a cualquier proyecto consumir los datos ● Poder trabajar sobre todo el volumen de información Real-Time
  • 37. Real-Time - Nueva Plataforma de Tracking Load Balancer WS Stream Hadoop Real Time Consumers
  • 38. Real-Time - Nueva Plataforma de Tracking - Stream Sources Complementador Pipeline Consumidores 1 N
  • 39. Real-Time - Por que Kafka? ● Escalabilidad Horizontal ● Poco consumo de recursos ● Rapido ● Soporte de volúmenes muy elevados de tráfico ● Confiable
  • 40. Real-Time - Por que Kafka?
  • 43. “Tenemos off-line y on-line, para BigData, que pasa con un warehouse tradicional? ”
  • 48. Proximos Pasos ● Real Time Analytics Query ○ Impala ○ Presto ○ Shark ● Spark como remplazo a MapReduce ● Consumo simple del Stream

Notas del editor

  1. 13 paises
  2. mirando espacio
  3. mirando ram