SlideShare una empresa de Scribd logo
1 de 28
Descargar para leer sin conexión
Construyendo una infraestructura 
de Big Data rentable y escalable 
Juan Martín Pampliega
Juan Martín Pampliega 
Senior Data Engineer, Socialmetrix 
Ingeniero Informática, ITBA 
Trabajando con proyectos relacionados con la temática de “Big 
Data” desde 2011 (Globant/Google, Despegar.com, Socialmetrix). 
@juanpampliega 
jpampliega@socialmetrix.com
Agenda 
• Acerca de Socialmetrix 
• Razones para evolucionar la 
infraestructura 
• Conceptos en los que nos basamos 
• Nuestra arquitectura 
• Lecciones aprendidas 
• Dónde aprender más
Socialmetrix 
Medimos la actividad relacionada a 
marcas, compañías y personalidades 
en las redes sociales para generar 
valor a profesionales de Marketing, 
Investigación de Mercado y Producto.
Algunos números 
• Capturamos +1.000 MM de interacciones en un mes 
• Almacenamos +1 TB por mes de datos 
• Tenemos en Amazon AWS +200 servidores, + databases, 
+ambientes de prueba/staging
¿Por qué 
evolucionar la 
infraestructura?
Big Data – otro nuevo paradigma 
Volumen + Velocidad + Variedad 
Nuevas Tecnologías (Kafka + Spark + Cassandra + Cloud) 
Arquitectura de Procesamiento de 
Datos 
Distribuida, Robusta y Escalable
¿Por qué construir una arquitectura de Big Data? 
• Manejar un volumen de datos creciente y poco constante 
• Reducir tiempos de procesamiento hacia “near real-time” 
• Costos variables 
• Workloads variados: procesamiento batch y real-time, 
analytics 
• Mitigar la incertidumbre generada por errores o cambios en 
el procesamiento
Conceptos 
Importantes
Conceptos: sistema de datos distribuído 
• Teorema CAP: ante una partición en el sistema solamente 
se puede asegurar consistencia o disponibilidad 
• La mutabilidad de los datos de un sistema distribuido 
causa las limitaciones de consistencia y disponibilidad 
• Eliminando la mutabilidad sólo hay lecturas y escrituras (no 
se borran los datos) 
• query = function(all data)
Conceptos: Arquitectura Lambda 
• Arquitectura genérica de procesamiento de datos creada 
por Nathan Marz de su experiencia trabajando en Twitter y 
Backtype 
• Posee un único maestro de datos, append only. 
• Un componente batch que re-computa todas las vistas en 
cada iteración y uno real-time para información con baja 
latencia
Arquitectura Lambda 
Tiempo promedio de 
respuesta? 
Cantidad de tweets 
en cierta hora?
Arquitectura Lambda 
• Crear un sistema tolerante a fallos tanto de hardware como 
los humanos 
• Lecturas y escrituras de baja latencia 
• Escalabilidad lineal horizontal 
• Facilidad de re-procesos 
• Permitir la investigación interactiva de los datos
Arquitectura Lambda (críticas) 
• Duplicación de lógica 
• Duplicación de conocimiento en las herramientas 
• Asume que el procesamiento real-time no es confiable
Nuestra 
arquitectura
Arquitectura inicial 
S3
Limitaciones encontradas 
• Hive 
• Lenguaje SQL (orientado a consultas y no a 
procesamiento, IDEs poco útiles) 
• Herramientas de testing precarias 
• Tiempos de ejecución prolongados y variables 
• MySQL 
• Baja performance para insert or update masivos 
• Escalabilidad costosa 
• Poca flexibilidad en el particionamiento
Evolución de la arquitectura 
S3
Desafíos al aplicar los conceptos 
• Información duplicada y fuera de orden 
• Recursos necesarios para re-procesar todo el histórico de 
datos constantemente (Automatizar la asignación de 
recursos según el volumen de datos a procesar o re-procesar) 
• Evolución de los esquemas (Parquet, Apache Avro, Json) 
• Problemas de encoding (MySQL utf8, utf8mb4)
Lecciones 
Aprendidas
Los errores 
• Utilizar una herramienta para tareas que no fue diseñada 
porque estamos familiarizados con ella 
• No guardar los datos crudos (como se obtuvieron del 
origen) 
• No poner suficiente énfasis en tests y monitoreo 
automático
Los aciertos 
• Buscar como otros resolvieron los problemas que se nos 
plantean 
• Siempre mantenernos al tanto de los últimos desarrollos en 
el área 
• Permitir iterar sobre las soluciones ya desarrolladas para 
ver como mejorarlas 
• Orientarnos a lenguajes fuertemente tipados
Recomendaciones 
• Utilizar un proveedor de cloud público sobre todo al inicio 
de un proyecto 
• Monitorear los procesos y aprender los patrones de los 
datos 
• Usar datasets medianos en Dev y grandes en Staging
Recomendaciones 
• Ambientes de desarrollo locales y rápidos son tan 
importantes como siempre 
• Centralizar los logs (ELK: Elasticsearch, Logstash y 
Kibana). 
• Testing (“… In 58% of the catastrophic failures, the underlying faults could 
easily have been detected through simple testing of error handling code …”)
Dónde aprender 
más
Mucha documentación disponible 
Lambda Architecture 
http://lambda-architecture.net/ 
Getting Started with Big Data Architecture 
http://blog.cloudera.com/blog/2014/09/getting-started-with-big-data-architecture/ 
Your weekly Hadoop news fix 
http://www.hadoopweekly.com/ 
The Hortonworks Blog 
http://hortonworks.com/blog/ 
Applying the Lambda Architecture with Spark - Jim Scott 
http://spark-summit.org/2014/talk/applying-the-lambda-architecture-with-spark 
Cloudera Engineering Blog 
http://blog.cloudera.com/blog/ 
Simple Testing Can Prevent Most Critical Failures: An Analysis of Production Failures in Distributed 
Data-Intensive Systems 
http://neverworkintheory.org/2014/10/08/simple-testing-can-prevent-most-critical-failures.html
Muchas Gracias! 
¿Preguntas? 
jobs@socialmetrix.com

Más contenido relacionado

Destacado

Construyendo una Infraestructura de Big Data rentable y escalable (la evoluci...
Construyendo una Infraestructura de Big Data rentable y escalable (la evoluci...Construyendo una Infraestructura de Big Data rentable y escalable (la evoluci...
Construyendo una Infraestructura de Big Data rentable y escalable (la evoluci...Socialmetrix
 
Webinar Dic 2016 BOC Cloud_v1
Webinar Dic 2016 BOC Cloud_v1Webinar Dic 2016 BOC Cloud_v1
Webinar Dic 2016 BOC Cloud_v1Ricardo Sada
 
Curso de big data
Curso de big data Curso de big data
Curso de big data Luis Joyanes
 
Monta una Infraestructura para Big Data en tu Empresa
Monta una Infraestructura para Big Data en tu EmpresaMonta una Infraestructura para Big Data en tu Empresa
Monta una Infraestructura para Big Data en tu EmpresaUrko Zurutuza
 
Big Data en el entorno Bancario
Big Data en el entorno BancarioBig Data en el entorno Bancario
Big Data en el entorno BancarioMartín Cabrera
 
Monta una Infraestructura Big Data para tu Empresa - Sesión II
Monta una Infraestructura Big Data para tu Empresa - Sesión IIMonta una Infraestructura Big Data para tu Empresa - Sesión II
Monta una Infraestructura Big Data para tu Empresa - Sesión IIUrko Zurutuza
 
Creación de un clúster de Hadoop con Cloudera
Creación de un clúster de Hadoop con ClouderaCreación de un clúster de Hadoop con Cloudera
Creación de un clúster de Hadoop con ClouderaDavid Albela Pérez
 
Big Data Open Source Analytics (español)
Big Data Open Source Analytics (español)Big Data Open Source Analytics (español)
Big Data Open Source Analytics (español)Stratebi
 
Big Data y Minería de datos
Big Data y Minería de datos Big Data y Minería de datos
Big Data y Minería de datos Luis Joyanes
 
Cursos de Big Data y Machine Learning
Cursos de Big Data y Machine LearningCursos de Big Data y Machine Learning
Cursos de Big Data y Machine LearningStratebi
 
Meet Latin American Game Developers
Meet Latin American Game DevelopersMeet Latin American Game Developers
Meet Latin American Game DevelopersAlvaro Gonzalez
 
Monta una Infraestructura Big Data para tu Empresa - Sesión I
Monta una Infraestructura Big Data para tu Empresa - Sesión IMonta una Infraestructura Big Data para tu Empresa - Sesión I
Monta una Infraestructura Big Data para tu Empresa - Sesión IUrko Zurutuza
 
Past present and future of Recommender Systems: an Industry Perspective
Past present and future of Recommender Systems: an Industry PerspectivePast present and future of Recommender Systems: an Industry Perspective
Past present and future of Recommender Systems: an Industry PerspectiveXavier Amatriain
 
Administración de Apache Hadoop a través de Cloudera
Administración de Apache Hadoop a través de ClouderaAdministración de Apache Hadoop a través de Cloudera
Administración de Apache Hadoop a través de ClouderaDavid Albela Pérez
 
La Transformación digital y cultural del BBVA
La Transformación digital y cultural del BBVALa Transformación digital y cultural del BBVA
La Transformación digital y cultural del BBVASilvia Dvorak
 
69 claves para conocer Big Data
69 claves para conocer Big Data69 claves para conocer Big Data
69 claves para conocer Big DataStratebi
 

Destacado (20)

Construyendo una Infraestructura de Big Data rentable y escalable (la evoluci...
Construyendo una Infraestructura de Big Data rentable y escalable (la evoluci...Construyendo una Infraestructura de Big Data rentable y escalable (la evoluci...
Construyendo una Infraestructura de Big Data rentable y escalable (la evoluci...
 
Webinar Dic 2016 BOC Cloud_v1
Webinar Dic 2016 BOC Cloud_v1Webinar Dic 2016 BOC Cloud_v1
Webinar Dic 2016 BOC Cloud_v1
 
Curso de big data
Curso de big data Curso de big data
Curso de big data
 
Introducción a Apache HBase
Introducción a Apache HBaseIntroducción a Apache HBase
Introducción a Apache HBase
 
Monta una Infraestructura para Big Data en tu Empresa
Monta una Infraestructura para Big Data en tu EmpresaMonta una Infraestructura para Big Data en tu Empresa
Monta una Infraestructura para Big Data en tu Empresa
 
Big Data en el entorno Bancario
Big Data en el entorno BancarioBig Data en el entorno Bancario
Big Data en el entorno Bancario
 
Monta una Infraestructura Big Data para tu Empresa - Sesión II
Monta una Infraestructura Big Data para tu Empresa - Sesión IIMonta una Infraestructura Big Data para tu Empresa - Sesión II
Monta una Infraestructura Big Data para tu Empresa - Sesión II
 
Creación de un clúster de Hadoop con Cloudera
Creación de un clúster de Hadoop con ClouderaCreación de un clúster de Hadoop con Cloudera
Creación de un clúster de Hadoop con Cloudera
 
Big Data Open Source Analytics (español)
Big Data Open Source Analytics (español)Big Data Open Source Analytics (español)
Big Data Open Source Analytics (español)
 
Proyectos everis
Proyectos everisProyectos everis
Proyectos everis
 
Infraestructura para big data Telefónica
Infraestructura para big data TelefónicaInfraestructura para big data Telefónica
Infraestructura para big data Telefónica
 
Big Data y Minería de datos
Big Data y Minería de datos Big Data y Minería de datos
Big Data y Minería de datos
 
Cursos de Big Data y Machine Learning
Cursos de Big Data y Machine LearningCursos de Big Data y Machine Learning
Cursos de Big Data y Machine Learning
 
Meet Latin American Game Developers
Meet Latin American Game DevelopersMeet Latin American Game Developers
Meet Latin American Game Developers
 
Monta una Infraestructura Big Data para tu Empresa - Sesión I
Monta una Infraestructura Big Data para tu Empresa - Sesión IMonta una Infraestructura Big Data para tu Empresa - Sesión I
Monta una Infraestructura Big Data para tu Empresa - Sesión I
 
Past present and future of Recommender Systems: an Industry Perspective
Past present and future of Recommender Systems: an Industry PerspectivePast present and future of Recommender Systems: an Industry Perspective
Past present and future of Recommender Systems: an Industry Perspective
 
Administración de Apache Hadoop a través de Cloudera
Administración de Apache Hadoop a través de ClouderaAdministración de Apache Hadoop a través de Cloudera
Administración de Apache Hadoop a través de Cloudera
 
La Transformación digital y cultural del BBVA
La Transformación digital y cultural del BBVALa Transformación digital y cultural del BBVA
La Transformación digital y cultural del BBVA
 
69 claves para conocer Big Data
69 claves para conocer Big Data69 claves para conocer Big Data
69 claves para conocer Big Data
 
Presentacion Everis
Presentacion EverisPresentacion Everis
Presentacion Everis
 

Similar a Construyendo infraestructura Big Data escalable

Big Data - Desarrollando soluciones efectivas
Big Data - Desarrollando soluciones efectivasBig Data - Desarrollando soluciones efectivas
Big Data - Desarrollando soluciones efectivasJoseph Lopez
 
Instalando Datastax Analytics (Cassandra Y Spark) Con Azure Templates
Instalando Datastax Analytics (Cassandra Y Spark) Con Azure TemplatesInstalando Datastax Analytics (Cassandra Y Spark) Con Azure Templates
Instalando Datastax Analytics (Cassandra Y Spark) Con Azure TemplatesGustavo Arjones
 
¿Por que cambiar de Apache Hadoop a Apache Spark?
¿Por que cambiar de Apache Hadoop a Apache Spark?¿Por que cambiar de Apache Hadoop a Apache Spark?
¿Por que cambiar de Apache Hadoop a Apache Spark?Socialmetrix
 
Tendencias arquitectura y desarrollo 2019
Tendencias arquitectura y desarrollo 2019Tendencias arquitectura y desarrollo 2019
Tendencias arquitectura y desarrollo 2019Manuel Zapata
 
Tabla de 5 SGBD_Dorado Jarero Miguel Angel_Base de Datos 2.pdf
Tabla de 5 SGBD_Dorado Jarero Miguel Angel_Base de Datos 2.pdfTabla de 5 SGBD_Dorado Jarero Miguel Angel_Base de Datos 2.pdf
Tabla de 5 SGBD_Dorado Jarero Miguel Angel_Base de Datos 2.pdfMIGUELANGELDORADOJAR
 
Text Mining con R en SQL Server 2016
Text Mining con R en SQL Server 2016Text Mining con R en SQL Server 2016
Text Mining con R en SQL Server 2016jorge Muchaypiña
 
Introducción mongodb y desarrollo
Introducción mongodb y desarrolloIntroducción mongodb y desarrollo
Introducción mongodb y desarrolloJuan Ladetto
 
Meetup En mi local funciona - Mi primer diseño con Apache Kafka
Meetup En mi local funciona - Mi primer diseño con Apache KafkaMeetup En mi local funciona - Mi primer diseño con Apache Kafka
Meetup En mi local funciona - Mi primer diseño con Apache KafkaatSistemas
 
Metodología de SI
Metodología de SIMetodología de SI
Metodología de SIsullinsan
 
Análisis y diseño de sistemas sesion 13 - diagrama de componentes y despliegue
Análisis y diseño de sistemas   sesion 13 - diagrama de componentes y despliegueAnálisis y diseño de sistemas   sesion 13 - diagrama de componentes y despliegue
Análisis y diseño de sistemas sesion 13 - diagrama de componentes y despliegueGianfrancoEduardoBra
 
01 Introduccion a Big Data y Hadoop.pdf
01 Introduccion a Big Data y Hadoop.pdf01 Introduccion a Big Data y Hadoop.pdf
01 Introduccion a Big Data y Hadoop.pdfAntonioSotoRodriguez1
 
Cómo construir tu propia data platform. From zero to hero.
Cómo construir tu propia data platform. From zero to hero. Cómo construir tu propia data platform. From zero to hero.
Cómo construir tu propia data platform. From zero to hero. GustavoMartin46
 
Polybase
PolybasePolybase
PolybaseSolidQ
 
Dev ops with Data
Dev ops with DataDev ops with Data
Dev ops with Datannakasone
 

Similar a Construyendo infraestructura Big Data escalable (20)

Meetup Oracle Technology MAD_BCN: 6.2 DevOps y DataOps
Meetup Oracle Technology MAD_BCN: 6.2 DevOps y DataOpsMeetup Oracle Technology MAD_BCN: 6.2 DevOps y DataOps
Meetup Oracle Technology MAD_BCN: 6.2 DevOps y DataOps
 
Big Data - Desarrollando soluciones efectivas
Big Data - Desarrollando soluciones efectivasBig Data - Desarrollando soluciones efectivas
Big Data - Desarrollando soluciones efectivas
 
Instalando Datastax Analytics (Cassandra Y Spark) Con Azure Templates
Instalando Datastax Analytics (Cassandra Y Spark) Con Azure TemplatesInstalando Datastax Analytics (Cassandra Y Spark) Con Azure Templates
Instalando Datastax Analytics (Cassandra Y Spark) Con Azure Templates
 
¿Por que cambiar de Apache Hadoop a Apache Spark?
¿Por que cambiar de Apache Hadoop a Apache Spark?¿Por que cambiar de Apache Hadoop a Apache Spark?
¿Por que cambiar de Apache Hadoop a Apache Spark?
 
Tendencias arquitectura y desarrollo 2019
Tendencias arquitectura y desarrollo 2019Tendencias arquitectura y desarrollo 2019
Tendencias arquitectura y desarrollo 2019
 
Tabla de 5 SGBD_Dorado Jarero Miguel Angel_Base de Datos 2.pdf
Tabla de 5 SGBD_Dorado Jarero Miguel Angel_Base de Datos 2.pdfTabla de 5 SGBD_Dorado Jarero Miguel Angel_Base de Datos 2.pdf
Tabla de 5 SGBD_Dorado Jarero Miguel Angel_Base de Datos 2.pdf
 
Text Mining con R en SQL Server 2016
Text Mining con R en SQL Server 2016Text Mining con R en SQL Server 2016
Text Mining con R en SQL Server 2016
 
Presentación taller aplicaciones
Presentación  taller aplicacionesPresentación  taller aplicaciones
Presentación taller aplicaciones
 
Introducción mongodb y desarrollo
Introducción mongodb y desarrolloIntroducción mongodb y desarrollo
Introducción mongodb y desarrollo
 
Semana de la I+D - Proyecto OPOSSUM
Semana de la I+D - Proyecto OPOSSUMSemana de la I+D - Proyecto OPOSSUM
Semana de la I+D - Proyecto OPOSSUM
 
Meetup En mi local funciona - Mi primer diseño con Apache Kafka
Meetup En mi local funciona - Mi primer diseño con Apache KafkaMeetup En mi local funciona - Mi primer diseño con Apache Kafka
Meetup En mi local funciona - Mi primer diseño con Apache Kafka
 
"Al rico" PHP
"Al rico" PHP"Al rico" PHP
"Al rico" PHP
 
MOSKitt en la CIT: Alea jacta est
MOSKitt en la CIT: Alea jacta estMOSKitt en la CIT: Alea jacta est
MOSKitt en la CIT: Alea jacta est
 
Metodología
MetodologíaMetodología
Metodología
 
Metodología de SI
Metodología de SIMetodología de SI
Metodología de SI
 
Análisis y diseño de sistemas sesion 13 - diagrama de componentes y despliegue
Análisis y diseño de sistemas   sesion 13 - diagrama de componentes y despliegueAnálisis y diseño de sistemas   sesion 13 - diagrama de componentes y despliegue
Análisis y diseño de sistemas sesion 13 - diagrama de componentes y despliegue
 
01 Introduccion a Big Data y Hadoop.pdf
01 Introduccion a Big Data y Hadoop.pdf01 Introduccion a Big Data y Hadoop.pdf
01 Introduccion a Big Data y Hadoop.pdf
 
Cómo construir tu propia data platform. From zero to hero.
Cómo construir tu propia data platform. From zero to hero. Cómo construir tu propia data platform. From zero to hero.
Cómo construir tu propia data platform. From zero to hero.
 
Polybase
PolybasePolybase
Polybase
 
Dev ops with Data
Dev ops with DataDev ops with Data
Dev ops with Data
 

Más de Socialmetrix

7 Disparadores de Engagement para o mercado de consumo massivo
7 Disparadores de Engagement para o mercado de consumo massivo7 Disparadores de Engagement para o mercado de consumo massivo
7 Disparadores de Engagement para o mercado de consumo massivoSocialmetrix
 
The Ultimate Guide to using Social Media Media Analytics
The Ultimate Guide to using Social Media Media AnalyticsThe Ultimate Guide to using Social Media Media Analytics
The Ultimate Guide to using Social Media Media AnalyticsSocialmetrix
 
Social Media is no longer something relevant just for the area of Marketing. ...
Social Media is no longer something relevant just for the area of Marketing. ...Social Media is no longer something relevant just for the area of Marketing. ...
Social Media is no longer something relevant just for the area of Marketing. ...Socialmetrix
 
How to Create a Successful Social Media Campaign
How to Create a Successful Social Media CampaignHow to Create a Successful Social Media Campaign
How to Create a Successful Social Media CampaignSocialmetrix
 
AWS re:Invent 2014 | (ARC202) Real-World Real-Time Analytics
AWS re:Invent 2014 | (ARC202) Real-World Real-Time AnalyticsAWS re:Invent 2014 | (ARC202) Real-World Real-Time Analytics
AWS re:Invent 2014 | (ARC202) Real-World Real-Time AnalyticsSocialmetrix
 
Tutorial en Apache Spark - Clasificando tweets en realtime
Tutorial en Apache Spark - Clasificando tweets en realtimeTutorial en Apache Spark - Clasificando tweets en realtime
Tutorial en Apache Spark - Clasificando tweets en realtimeSocialmetrix
 
Introducción a Apache Spark a través de un caso de uso cotidiano
Introducción a Apache Spark a través de un caso de uso cotidianoIntroducción a Apache Spark a través de un caso de uso cotidiano
Introducción a Apache Spark a través de un caso de uso cotidianoSocialmetrix
 
Introducción a Apache Spark
Introducción a Apache SparkIntroducción a Apache Spark
Introducción a Apache SparkSocialmetrix
 
Social media brasil 2014 - O Marketing e as Redes Sociais em tempos de conver...
Social media brasil 2014 - O Marketing e as Redes Sociais em tempos de conver...Social media brasil 2014 - O Marketing e as Redes Sociais em tempos de conver...
Social media brasil 2014 - O Marketing e as Redes Sociais em tempos de conver...Socialmetrix
 
14º Encontro Locaweb - Evolução das Plataformas para Métricas Sociais
14º Encontro Locaweb - Evolução das Plataformas para Métricas Sociais14º Encontro Locaweb - Evolução das Plataformas para Métricas Sociais
14º Encontro Locaweb - Evolução das Plataformas para Métricas SociaisSocialmetrix
 
Jugar Introduccion a Scala
Jugar Introduccion a ScalaJugar Introduccion a Scala
Jugar Introduccion a ScalaSocialmetrix
 
Endeavor – métricas em mídias sociais
Endeavor – métricas em mídias sociaisEndeavor – métricas em mídias sociais
Endeavor – métricas em mídias sociaisSocialmetrix
 
MongoDB, RabbitMQ y Applicaciones en Nube
MongoDB, RabbitMQ y Applicaciones en NubeMongoDB, RabbitMQ y Applicaciones en Nube
MongoDB, RabbitMQ y Applicaciones en NubeSocialmetrix
 

Más de Socialmetrix (15)

7 Disparadores de Engagement para o mercado de consumo massivo
7 Disparadores de Engagement para o mercado de consumo massivo7 Disparadores de Engagement para o mercado de consumo massivo
7 Disparadores de Engagement para o mercado de consumo massivo
 
The Ultimate Guide to using Social Media Media Analytics
The Ultimate Guide to using Social Media Media AnalyticsThe Ultimate Guide to using Social Media Media Analytics
The Ultimate Guide to using Social Media Media Analytics
 
Social Media is no longer something relevant just for the area of Marketing. ...
Social Media is no longer something relevant just for the area of Marketing. ...Social Media is no longer something relevant just for the area of Marketing. ...
Social Media is no longer something relevant just for the area of Marketing. ...
 
How to Create a Successful Social Media Campaign
How to Create a Successful Social Media CampaignHow to Create a Successful Social Media Campaign
How to Create a Successful Social Media Campaign
 
AWS re:Invent 2014 | (ARC202) Real-World Real-Time Analytics
AWS re:Invent 2014 | (ARC202) Real-World Real-Time AnalyticsAWS re:Invent 2014 | (ARC202) Real-World Real-Time Analytics
AWS re:Invent 2014 | (ARC202) Real-World Real-Time Analytics
 
Tutorial en Apache Spark - Clasificando tweets en realtime
Tutorial en Apache Spark - Clasificando tweets en realtimeTutorial en Apache Spark - Clasificando tweets en realtime
Tutorial en Apache Spark - Clasificando tweets en realtime
 
Introducción a Apache Spark a través de un caso de uso cotidiano
Introducción a Apache Spark a través de un caso de uso cotidianoIntroducción a Apache Spark a través de un caso de uso cotidiano
Introducción a Apache Spark a través de un caso de uso cotidiano
 
Introducción a Apache Spark
Introducción a Apache SparkIntroducción a Apache Spark
Introducción a Apache Spark
 
Social media brasil 2014 - O Marketing e as Redes Sociais em tempos de conver...
Social media brasil 2014 - O Marketing e as Redes Sociais em tempos de conver...Social media brasil 2014 - O Marketing e as Redes Sociais em tempos de conver...
Social media brasil 2014 - O Marketing e as Redes Sociais em tempos de conver...
 
14º Encontro Locaweb - Evolução das Plataformas para Métricas Sociais
14º Encontro Locaweb - Evolução das Plataformas para Métricas Sociais14º Encontro Locaweb - Evolução das Plataformas para Métricas Sociais
14º Encontro Locaweb - Evolução das Plataformas para Métricas Sociais
 
Call2Social
Call2SocialCall2Social
Call2Social
 
Redis
RedisRedis
Redis
 
Jugar Introduccion a Scala
Jugar Introduccion a ScalaJugar Introduccion a Scala
Jugar Introduccion a Scala
 
Endeavor – métricas em mídias sociais
Endeavor – métricas em mídias sociaisEndeavor – métricas em mídias sociais
Endeavor – métricas em mídias sociais
 
MongoDB, RabbitMQ y Applicaciones en Nube
MongoDB, RabbitMQ y Applicaciones en NubeMongoDB, RabbitMQ y Applicaciones en Nube
MongoDB, RabbitMQ y Applicaciones en Nube
 

Último

#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx
#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx
#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptxHugoGutierrez99
 
TENDENCIAS DE IA Inteligencia artificial generativa.pdf
TENDENCIAS DE IA Inteligencia artificial generativa.pdfTENDENCIAS DE IA Inteligencia artificial generativa.pdf
TENDENCIAS DE IA Inteligencia artificial generativa.pdfJoseAlejandroPerezBa
 
Análisis de los artefactos (nintendo NES)
Análisis de los artefactos (nintendo NES)Análisis de los artefactos (nintendo NES)
Análisis de los artefactos (nintendo NES)JuanStevenTrujilloCh
 
Nomisam: Base de Datos para Gestión de Nómina
Nomisam: Base de Datos para Gestión de NóminaNomisam: Base de Datos para Gestión de Nómina
Nomisam: Base de Datos para Gestión de Nóminacuellosameidy
 
.Informe electricidad y electronica.docx
.Informe electricidad y electronica.docx.Informe electricidad y electronica.docx
.Informe electricidad y electronica.docxCamila Ortiz
 
Análisis de Artefactos Tecnologicos .docx
Análisis de Artefactos Tecnologicos .docxAnálisis de Artefactos Tecnologicos .docx
Análisis de Artefactos Tecnologicos .docxmajovaru19
 
TECNOLOGIA 11-4.8888888888888888888888888
TECNOLOGIA 11-4.8888888888888888888888888TECNOLOGIA 11-4.8888888888888888888888888
TECNOLOGIA 11-4.8888888888888888888888888ElianaValencia28
 
La electricidad y la electronica.10-7.pdf
La electricidad y la electronica.10-7.pdfLa electricidad y la electronica.10-7.pdf
La electricidad y la electronica.10-7.pdfcristianrb0324
 
_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf
_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf
_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdfBetianaJuarez1
 
Clasificación de Conjuntos de Datos Desequilibrados.pptx
Clasificación de Conjuntos de Datos Desequilibrados.pptxClasificación de Conjuntos de Datos Desequilibrados.pptx
Clasificación de Conjuntos de Datos Desequilibrados.pptxCarolina Bujaico
 
tecno 2024.pdf sara mineiro palacio 10-6
tecno 2024.pdf sara mineiro palacio 10-6tecno 2024.pdf sara mineiro palacio 10-6
tecno 2024.pdf sara mineiro palacio 10-6SaraMineiropalacio
 
ORIENTACIONES DE INFORMÁTICA-2024.pdf-guia
ORIENTACIONES DE INFORMÁTICA-2024.pdf-guiaORIENTACIONES DE INFORMÁTICA-2024.pdf-guia
ORIENTACIONES DE INFORMÁTICA-2024.pdf-guiaYeimys Ch
 
Trabajo de Tecnología .pdfywhwhejsjsjsjsjsk
Trabajo de Tecnología .pdfywhwhejsjsjsjsjskTrabajo de Tecnología .pdfywhwhejsjsjsjsjsk
Trabajo de Tecnología .pdfywhwhejsjsjsjsjskbydaniela5
 
BLOG, EXCEL AVANZADO, MÉTODOS ESTADÍSTICOS..docx
BLOG, EXCEL AVANZADO, MÉTODOS ESTADÍSTICOS..docxBLOG, EXCEL AVANZADO, MÉTODOS ESTADÍSTICOS..docx
BLOG, EXCEL AVANZADO, MÉTODOS ESTADÍSTICOS..docxhellendiaz12
 
tecnologiaactividad11-240323205859-a9b9b9bc.pdf
tecnologiaactividad11-240323205859-a9b9b9bc.pdftecnologiaactividad11-240323205859-a9b9b9bc.pdf
tecnologiaactividad11-240323205859-a9b9b9bc.pdflauralizcano0319
 
LA ELECTRICIDAD Y LA ELECTRÓNICA TRABAJO EN GRUPO
LA ELECTRICIDAD Y LA ELECTRÓNICA TRABAJO EN GRUPOLA ELECTRICIDAD Y LA ELECTRÓNICA TRABAJO EN GRUPO
LA ELECTRICIDAD Y LA ELECTRÓNICA TRABAJO EN GRUPOv16959670
 
La electricidad y la electrónica saray 10-2
La electricidad y la electrónica saray 10-2La electricidad y la electrónica saray 10-2
La electricidad y la electrónica saray 10-2SariGarcs
 
Trabajo de tecnología primer periodo 2024
Trabajo de tecnología primer periodo 2024Trabajo de tecnología primer periodo 2024
Trabajo de tecnología primer periodo 2024anasofiarodriguezcru
 
Trabajo de tecnología liceo departamental
Trabajo de tecnología liceo departamentalTrabajo de tecnología liceo departamental
Trabajo de tecnología liceo departamentalEmanuelCastro64
 
Tecnología Educativa- presentación maestría
Tecnología Educativa- presentación maestríaTecnología Educativa- presentación maestría
Tecnología Educativa- presentación maestríaElizabethLpezSoto
 

Último (20)

#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx
#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx
#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx
 
TENDENCIAS DE IA Inteligencia artificial generativa.pdf
TENDENCIAS DE IA Inteligencia artificial generativa.pdfTENDENCIAS DE IA Inteligencia artificial generativa.pdf
TENDENCIAS DE IA Inteligencia artificial generativa.pdf
 
Análisis de los artefactos (nintendo NES)
Análisis de los artefactos (nintendo NES)Análisis de los artefactos (nintendo NES)
Análisis de los artefactos (nintendo NES)
 
Nomisam: Base de Datos para Gestión de Nómina
Nomisam: Base de Datos para Gestión de NóminaNomisam: Base de Datos para Gestión de Nómina
Nomisam: Base de Datos para Gestión de Nómina
 
.Informe electricidad y electronica.docx
.Informe electricidad y electronica.docx.Informe electricidad y electronica.docx
.Informe electricidad y electronica.docx
 
Análisis de Artefactos Tecnologicos .docx
Análisis de Artefactos Tecnologicos .docxAnálisis de Artefactos Tecnologicos .docx
Análisis de Artefactos Tecnologicos .docx
 
TECNOLOGIA 11-4.8888888888888888888888888
TECNOLOGIA 11-4.8888888888888888888888888TECNOLOGIA 11-4.8888888888888888888888888
TECNOLOGIA 11-4.8888888888888888888888888
 
La electricidad y la electronica.10-7.pdf
La electricidad y la electronica.10-7.pdfLa electricidad y la electronica.10-7.pdf
La electricidad y la electronica.10-7.pdf
 
_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf
_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf
_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf
 
Clasificación de Conjuntos de Datos Desequilibrados.pptx
Clasificación de Conjuntos de Datos Desequilibrados.pptxClasificación de Conjuntos de Datos Desequilibrados.pptx
Clasificación de Conjuntos de Datos Desequilibrados.pptx
 
tecno 2024.pdf sara mineiro palacio 10-6
tecno 2024.pdf sara mineiro palacio 10-6tecno 2024.pdf sara mineiro palacio 10-6
tecno 2024.pdf sara mineiro palacio 10-6
 
ORIENTACIONES DE INFORMÁTICA-2024.pdf-guia
ORIENTACIONES DE INFORMÁTICA-2024.pdf-guiaORIENTACIONES DE INFORMÁTICA-2024.pdf-guia
ORIENTACIONES DE INFORMÁTICA-2024.pdf-guia
 
Trabajo de Tecnología .pdfywhwhejsjsjsjsjsk
Trabajo de Tecnología .pdfywhwhejsjsjsjsjskTrabajo de Tecnología .pdfywhwhejsjsjsjsjsk
Trabajo de Tecnología .pdfywhwhejsjsjsjsjsk
 
BLOG, EXCEL AVANZADO, MÉTODOS ESTADÍSTICOS..docx
BLOG, EXCEL AVANZADO, MÉTODOS ESTADÍSTICOS..docxBLOG, EXCEL AVANZADO, MÉTODOS ESTADÍSTICOS..docx
BLOG, EXCEL AVANZADO, MÉTODOS ESTADÍSTICOS..docx
 
tecnologiaactividad11-240323205859-a9b9b9bc.pdf
tecnologiaactividad11-240323205859-a9b9b9bc.pdftecnologiaactividad11-240323205859-a9b9b9bc.pdf
tecnologiaactividad11-240323205859-a9b9b9bc.pdf
 
LA ELECTRICIDAD Y LA ELECTRÓNICA TRABAJO EN GRUPO
LA ELECTRICIDAD Y LA ELECTRÓNICA TRABAJO EN GRUPOLA ELECTRICIDAD Y LA ELECTRÓNICA TRABAJO EN GRUPO
LA ELECTRICIDAD Y LA ELECTRÓNICA TRABAJO EN GRUPO
 
La electricidad y la electrónica saray 10-2
La electricidad y la electrónica saray 10-2La electricidad y la electrónica saray 10-2
La electricidad y la electrónica saray 10-2
 
Trabajo de tecnología primer periodo 2024
Trabajo de tecnología primer periodo 2024Trabajo de tecnología primer periodo 2024
Trabajo de tecnología primer periodo 2024
 
Trabajo de tecnología liceo departamental
Trabajo de tecnología liceo departamentalTrabajo de tecnología liceo departamental
Trabajo de tecnología liceo departamental
 
Tecnología Educativa- presentación maestría
Tecnología Educativa- presentación maestríaTecnología Educativa- presentación maestría
Tecnología Educativa- presentación maestría
 

Construyendo infraestructura Big Data escalable

  • 1. Construyendo una infraestructura de Big Data rentable y escalable Juan Martín Pampliega
  • 2. Juan Martín Pampliega Senior Data Engineer, Socialmetrix Ingeniero Informática, ITBA Trabajando con proyectos relacionados con la temática de “Big Data” desde 2011 (Globant/Google, Despegar.com, Socialmetrix). @juanpampliega jpampliega@socialmetrix.com
  • 3. Agenda • Acerca de Socialmetrix • Razones para evolucionar la infraestructura • Conceptos en los que nos basamos • Nuestra arquitectura • Lecciones aprendidas • Dónde aprender más
  • 4. Socialmetrix Medimos la actividad relacionada a marcas, compañías y personalidades en las redes sociales para generar valor a profesionales de Marketing, Investigación de Mercado y Producto.
  • 5.
  • 6. Algunos números • Capturamos +1.000 MM de interacciones en un mes • Almacenamos +1 TB por mes de datos • Tenemos en Amazon AWS +200 servidores, + databases, +ambientes de prueba/staging
  • 7. ¿Por qué evolucionar la infraestructura?
  • 8. Big Data – otro nuevo paradigma Volumen + Velocidad + Variedad Nuevas Tecnologías (Kafka + Spark + Cassandra + Cloud) Arquitectura de Procesamiento de Datos Distribuida, Robusta y Escalable
  • 9. ¿Por qué construir una arquitectura de Big Data? • Manejar un volumen de datos creciente y poco constante • Reducir tiempos de procesamiento hacia “near real-time” • Costos variables • Workloads variados: procesamiento batch y real-time, analytics • Mitigar la incertidumbre generada por errores o cambios en el procesamiento
  • 11. Conceptos: sistema de datos distribuído • Teorema CAP: ante una partición en el sistema solamente se puede asegurar consistencia o disponibilidad • La mutabilidad de los datos de un sistema distribuido causa las limitaciones de consistencia y disponibilidad • Eliminando la mutabilidad sólo hay lecturas y escrituras (no se borran los datos) • query = function(all data)
  • 12. Conceptos: Arquitectura Lambda • Arquitectura genérica de procesamiento de datos creada por Nathan Marz de su experiencia trabajando en Twitter y Backtype • Posee un único maestro de datos, append only. • Un componente batch que re-computa todas las vistas en cada iteración y uno real-time para información con baja latencia
  • 13. Arquitectura Lambda Tiempo promedio de respuesta? Cantidad de tweets en cierta hora?
  • 14. Arquitectura Lambda • Crear un sistema tolerante a fallos tanto de hardware como los humanos • Lecturas y escrituras de baja latencia • Escalabilidad lineal horizontal • Facilidad de re-procesos • Permitir la investigación interactiva de los datos
  • 15. Arquitectura Lambda (críticas) • Duplicación de lógica • Duplicación de conocimiento en las herramientas • Asume que el procesamiento real-time no es confiable
  • 18. Limitaciones encontradas • Hive • Lenguaje SQL (orientado a consultas y no a procesamiento, IDEs poco útiles) • Herramientas de testing precarias • Tiempos de ejecución prolongados y variables • MySQL • Baja performance para insert or update masivos • Escalabilidad costosa • Poca flexibilidad en el particionamiento
  • 19. Evolución de la arquitectura S3
  • 20. Desafíos al aplicar los conceptos • Información duplicada y fuera de orden • Recursos necesarios para re-procesar todo el histórico de datos constantemente (Automatizar la asignación de recursos según el volumen de datos a procesar o re-procesar) • Evolución de los esquemas (Parquet, Apache Avro, Json) • Problemas de encoding (MySQL utf8, utf8mb4)
  • 22. Los errores • Utilizar una herramienta para tareas que no fue diseñada porque estamos familiarizados con ella • No guardar los datos crudos (como se obtuvieron del origen) • No poner suficiente énfasis en tests y monitoreo automático
  • 23. Los aciertos • Buscar como otros resolvieron los problemas que se nos plantean • Siempre mantenernos al tanto de los últimos desarrollos en el área • Permitir iterar sobre las soluciones ya desarrolladas para ver como mejorarlas • Orientarnos a lenguajes fuertemente tipados
  • 24. Recomendaciones • Utilizar un proveedor de cloud público sobre todo al inicio de un proyecto • Monitorear los procesos y aprender los patrones de los datos • Usar datasets medianos en Dev y grandes en Staging
  • 25. Recomendaciones • Ambientes de desarrollo locales y rápidos son tan importantes como siempre • Centralizar los logs (ELK: Elasticsearch, Logstash y Kibana). • Testing (“… In 58% of the catastrophic failures, the underlying faults could easily have been detected through simple testing of error handling code …”)
  • 27. Mucha documentación disponible Lambda Architecture http://lambda-architecture.net/ Getting Started with Big Data Architecture http://blog.cloudera.com/blog/2014/09/getting-started-with-big-data-architecture/ Your weekly Hadoop news fix http://www.hadoopweekly.com/ The Hortonworks Blog http://hortonworks.com/blog/ Applying the Lambda Architecture with Spark - Jim Scott http://spark-summit.org/2014/talk/applying-the-lambda-architecture-with-spark Cloudera Engineering Blog http://blog.cloudera.com/blog/ Simple Testing Can Prevent Most Critical Failures: An Analysis of Production Failures in Distributed Data-Intensive Systems http://neverworkintheory.org/2014/10/08/simple-testing-can-prevent-most-critical-failures.html
  • 28. Muchas Gracias! ¿Preguntas? jobs@socialmetrix.com

Notas del editor

  1. No solamente me interesa explicar cómo construir la infraestructura de procesamiento de dato si no por qué hoy en día es importante hacerlo
  2. Actualmente siempre se hace referencia a la temática de Big Data hablando de la explosión de las 3 V en los últimos tiempos (Volumen, Velocidad y Variedad) Pero en muchos casos, con la evolución de las bases de datos tradicionales desde Oracle hasta Teradata ya nos permiten manejar este problema. Son las nuevas herramientas de manejo y procesamiento las que realmente forman un nuevo paradigma. Herramientas desarrolladas por empresas de tecnología con fuerte base en la investigación y que principalmente se mueven en el ambiente de la Web Estas herramientas son distribuidas desde sus inicios y extremadamente performantes Este nuevo paradigma nos permite desarrollar una arquitectura de procesamiento
  3. Volumen Cada vez más surge la necesidad de procesar los datos lo más cercano al real-time para poder anticiparse a la competencia y reaccionar con un delay mínimo ante los problemas Para comenzar no hay costos de licenciamiento o entrenamiento. Casi todo lo necesario para comenzar se encuentra disponible online y solamente se empieza a pagar una vez que las necesidades maduran y se está seguro de la solución