SlideShare uma empresa Scribd logo
1 de 19
Simplifying
architectures
for real-time decisions
Handling high volume and high load environments
Decisiones reales en tiempo real
“¿Debo incluir más estaciones de producción?”“¿Puedo conceder ese
microcrédito?”
“¿A qué usuarios debo dirigir mi campaña?” “¿Qué conductor es el más
apropiado para atender un viaje?”
“¿Debo entrar en esa operación?”
...
“¿Es aceptable este riesgo?¿Cuál es la elección más apropiada?¿Es este el
mejor momento para actuar?”
Requisitos
• Velocidad de ingestión.
• Volumen de datos.
• Análisis en tiempo real.
• Análisis batch.
Solución habitual: Arquitecturas lambda
Arquitecturas lambda
• Ventajas: Resuelven el problema.
• Desventajas:
• Complejidad:
• Multiples datastores → Multiples pipelines → Multiples
frameworks
• Código duplicado
• ETLs
• Acoplamiento al framework
• Dificultad de Mantenimiento.
• Baja flexibilidad
Alternativa a lambda
• Unificar datastores
• Elimina complejidad.
• Elimina ETLs.
• Elimina código duplicado.
• Simplifica el framework
• Situación inicial: Requisitos del datastore
• Ingestión masiva
• Grandes volúmenes de datos
• Análisis en tiempo real
• Análisis batch
LeanXcale
• LeanXcale es una BBDD ultraescalable con
capacidades SQL y NoSQL e ingestión masiva.
• Características y funcionalidades
● Escalabilidad lineal
● Particionamiento inteligente
● Ingestión masiva
● Capacidades GIS
● Operaciones vectoriales
● Customización
● Estructura de datos híbrida
● Operaciones vectoriales
● …
● Interfaz SQL & NoSQL
● Agregados Online
● HTAP → OLTP + OLAP
● MVCC
● Gestión eficiente de NUMA
● Elasticidad
● Queries políglotas
● ...
Componentes
• Query engine: Motor SQL
• Basado en Apache Calcite
• Interpreta SQL (ANSI 2003)
• Genera y optimiza planes de ejecución
• Datastore: Kivi
• Motor clave/valor
• Estructura de datos híbrida (B+Tree ~ LSM Tree)
• Capacidad de ejecución de predicados
• Transaction Manager
• Permite escalado lineal
• Implementa el MVCC
• Conectores/Drivers:
• Proporcionan acceso desde diferentes
ecosistemas (JDBC/ODBC, PHP, Kafka, Spark, etc)
Query Engine
Transaction
Manager
Data Storage (Kivi)
Conector directo
Driver SQL
Escalado lineal
• Otras BBDD transaccionales
• Escalabilidad asintótica → Cada nuevo nodo aporta menos al
cluster
• Límite de escalabilidad
• LeanXcale:
• Escalabilidad lineal → Cada nuevo nodo mantiene la aportación
cluster
• Algoritmo de escalado: https://www.youtube.com/watch?v=ScLthWjXdCE
Particionamiento inteligente
Optimizar la inserción sin penalizar la lectura
• Mantiene la organización de los datos basada en la
clave primaria.
•Permite operaciones de scan paralelo
• Particiona automáticamente aprovechando la
localidad temporal.
• Optimiza el uso de la cache para inserción.
Agregados online
• El cálculo de agregados es costoso, especialmente
en entornos con gran volumen.
• Alternativas:
• Cálculo en tiempo de consulta:
• Requiere procesar el dataset completo en consulta.
• En grandes volúmenes cambiantes requiere procesar cada vez.
• Cálculo en tiempo de inserción:
• Requiere bloqueos para garantizar consistencia → Penaliza la inserción
• LeanXcale: Agregados online
• Precalcula en inserción (sin bloqueo).
• Lectura directa.
Tiempo real vs LeanXcale
• Inserción masiva:
• API key-value directa al datastore
• Particionamiento inteligente
• Estructura de datos híbrida
• Grandes volúmenes de datos
• Escalado lineal
• Particionamiento inteligente
• Análitica en tiempo real
• Agregados online
• Análisis batch
• Motor SQL
• Estructura de datos híbrida
Caso de uso: Análisis de viajes Taxi
Viajes
- Fecha de Inicio y Fin
- Coordenadas de inicio y fin
- Conductor
- Compañía
- Distancia
- Puntuación (0 - 5)
Arquitectura LeanXcale
Indicadores
- Número de viajes
- Mejores conductores
- Datos por compañía
- Pasajeros
- Viajes
- Distribución temporal
- Horaria
- Diaria
- Semanal
Tiempo Real
Arquitectura
Proceso
inserción
KVDS KVDS KVDS KVDS
KVDS KVDS KVDS KVDS
Proceso Java
Tiempo real: 100 viajes/s
Inserción: 60k viajes/s
.csv
Viajes Taxi NYC 2013
12 archivos: 15M viajes/mes
Total: 160M viajes
Score aleatorio
Key-value
2 servidores LX
- 4 cores
- 16 Gb
- 300 Gb disco
Dashboard
Apache Superset
Python
SQL
Particionamiento primario: Información geográfica.
Particionamiento automático: Información temporal.
Agregados online
• Agregados online:
• Número total de viajes.
• Información de conductor (viajes realizados, puntuación
acumulada)
• Información temporal (viajes acumulados por día, hora y semana)
• Información de compañía (viajes realizados, pasajeros
acumulados).
Modelo de datos
• Tabla principal: TRIP_DATA_MEETUP
• Agregados online:
• TRIP_DATA_MEDALLION: Agregados agrupados por conductor.
• TRIP_DATA_VENDOR: Agregados por compañía.
• TRIP_DATA_DAILY: Agregados por día de la semana.
• TRIP_DATA_HOURLY: Agregados por hora del día.
•TRIP_DATA_WEEKLY: Agregados por hora del día.
• TRIP_DATA_DELTA: Agregados totales.
Dashboard
Demo
From demo to market
• Volumen y carga
• Escalabilidad y elasticidad
• Desarrollo de aplicaciones:
• SQL: JDBC / ODBC / SQL Alchemy
• Key-Value: Librería Java/Python/PHP/C
• Kafka
• Spark
• Despliegue:
• On cloud
• On premise
•Trial y plan para Startups
Otras aplicaciones
• Smart Grid.
• Análisis de riesgo al crédito.
• Perfilado de usuarios.
• Gestión de inversiones.
• Smart cities.

Mais conteúdo relacionado

Semelhante a Madrid DataEng - LeanXcale, Simplifying architectures for real time decisions

AWS Summits América Latina 2015- EC2 Computo en la nube
AWS Summits América Latina 2015- EC2 Computo en la nubeAWS Summits América Latina 2015- EC2 Computo en la nube
AWS Summits América Latina 2015- EC2 Computo en la nubeAmazon Web Services LATAM
 
AWS Summit Bogotá Track Básico: EC2 & Servicios de Computación.
AWS Summit Bogotá Track Básico: EC2 & Servicios de Computación. AWS Summit Bogotá Track Básico: EC2 & Servicios de Computación.
AWS Summit Bogotá Track Básico: EC2 & Servicios de Computación. Amazon Web Services
 
KCDS 2021- Escalando workloads serverless en Kubernetes con KEDA
KCDS 2021- Escalando workloads serverless en Kubernetes con KEDAKCDS 2021- Escalando workloads serverless en Kubernetes con KEDA
KCDS 2021- Escalando workloads serverless en Kubernetes con KEDAEduard Tomàs
 
Escalabilidad en azure sql database con elastic scale
Escalabilidad en azure sql database con elastic scaleEscalabilidad en azure sql database con elastic scale
Escalabilidad en azure sql database con elastic scaleEduardo Castro
 
Datawarehouse como servicio en Azure (sqldw)
Datawarehouse como servicio en Azure (sqldw)Datawarehouse como servicio en Azure (sqldw)
Datawarehouse como servicio en Azure (sqldw)SolidQ
 
Datawarehouse como servicio en azure (sqldw)
Datawarehouse como servicio en azure (sqldw)Datawarehouse como servicio en azure (sqldw)
Datawarehouse como servicio en azure (sqldw)Enrique Catala Bañuls
 
Contenedores y el Futuro del Despliegue de Aplicaciones
Contenedores y el Futuro del Despliegue de AplicacionesContenedores y el Futuro del Despliegue de Aplicaciones
Contenedores y el Futuro del Despliegue de AplicacionesBitnami
 
Casos de bodegas de datos con SQL Server
Casos de bodegas de datos con SQL ServerCasos de bodegas de datos con SQL Server
Casos de bodegas de datos con SQL ServerEduardo Castro
 
Calidad de servicio en redes
Calidad de servicio en redesCalidad de servicio en redes
Calidad de servicio en redesCandy Pizarro
 
Calidad de servicio en redes
Calidad de servicio en redesCalidad de servicio en redes
Calidad de servicio en redesCandy Pizarro
 
¿Cómo se despliega y autoescala Couchbase en Cloud? ¡Aprende de manera práctica!
¿Cómo se despliega y autoescala Couchbase en Cloud? ¡Aprende de manera práctica!¿Cómo se despliega y autoescala Couchbase en Cloud? ¡Aprende de manera práctica!
¿Cómo se despliega y autoescala Couchbase en Cloud? ¡Aprende de manera práctica!Paradigma Digital
 
Open platform - Conferencia Esri 2016
Open platform  - Conferencia Esri 2016Open platform  - Conferencia Esri 2016
Open platform - Conferencia Esri 2016Esri España
 
Mejores prácticas para migrar sus bases de datos a AWS
Mejores prácticas para migrar sus bases de datos a AWSMejores prácticas para migrar sus bases de datos a AWS
Mejores prácticas para migrar sus bases de datos a AWSAmazon Web Services LATAM
 
Introducción a Microsoft Azure SQL Data Warehouse
Introducción a Microsoft Azure SQL Data WarehouseIntroducción a Microsoft Azure SQL Data Warehouse
Introducción a Microsoft Azure SQL Data WarehouseJoseph Lopez
 
Data Platform de BEEVA
Data Platform de BEEVAData Platform de BEEVA
Data Platform de BEEVABEEVA_es
 

Semelhante a Madrid DataEng - LeanXcale, Simplifying architectures for real time decisions (20)

AWS Summits América Latina 2015- EC2 Computo en la nube
AWS Summits América Latina 2015- EC2 Computo en la nubeAWS Summits América Latina 2015- EC2 Computo en la nube
AWS Summits América Latina 2015- EC2 Computo en la nube
 
AWS Summit Bogotá Track Básico: EC2 & Servicios de Computación.
AWS Summit Bogotá Track Básico: EC2 & Servicios de Computación. AWS Summit Bogotá Track Básico: EC2 & Servicios de Computación.
AWS Summit Bogotá Track Básico: EC2 & Servicios de Computación.
 
KCDS 2021- Escalando workloads serverless en Kubernetes con KEDA
KCDS 2021- Escalando workloads serverless en Kubernetes con KEDAKCDS 2021- Escalando workloads serverless en Kubernetes con KEDA
KCDS 2021- Escalando workloads serverless en Kubernetes con KEDA
 
JIRA data center (AWS)
JIRA data center (AWS)JIRA data center (AWS)
JIRA data center (AWS)
 
ASP.NET MVC Workshop Día 3
ASP.NET MVC Workshop Día 3ASP.NET MVC Workshop Día 3
ASP.NET MVC Workshop Día 3
 
Sistema de Bases de Datos AWS
Sistema de Bases de Datos AWSSistema de Bases de Datos AWS
Sistema de Bases de Datos AWS
 
Escalabilidad en azure sql database con elastic scale
Escalabilidad en azure sql database con elastic scaleEscalabilidad en azure sql database con elastic scale
Escalabilidad en azure sql database con elastic scale
 
Datawarehouse como servicio en Azure (sqldw)
Datawarehouse como servicio en Azure (sqldw)Datawarehouse como servicio en Azure (sqldw)
Datawarehouse como servicio en Azure (sqldw)
 
Datawarehouse como servicio en azure (sqldw)
Datawarehouse como servicio en azure (sqldw)Datawarehouse como servicio en azure (sqldw)
Datawarehouse como servicio en azure (sqldw)
 
Contenedores y el Futuro del Despliegue de Aplicaciones
Contenedores y el Futuro del Despliegue de AplicacionesContenedores y el Futuro del Despliegue de Aplicaciones
Contenedores y el Futuro del Despliegue de Aplicaciones
 
Casos de bodegas de datos con SQL Server
Casos de bodegas de datos con SQL ServerCasos de bodegas de datos con SQL Server
Casos de bodegas de datos con SQL Server
 
Calidad de servicio en redes
Calidad de servicio en redesCalidad de servicio en redes
Calidad de servicio en redes
 
Calidad de servicio en redes
Calidad de servicio en redesCalidad de servicio en redes
Calidad de servicio en redes
 
Calidad de servicio en redes
Calidad de servicio en redesCalidad de servicio en redes
Calidad de servicio en redes
 
R users Galicia 2018
R users Galicia 2018R users Galicia 2018
R users Galicia 2018
 
¿Cómo se despliega y autoescala Couchbase en Cloud? ¡Aprende de manera práctica!
¿Cómo se despliega y autoescala Couchbase en Cloud? ¡Aprende de manera práctica!¿Cómo se despliega y autoescala Couchbase en Cloud? ¡Aprende de manera práctica!
¿Cómo se despliega y autoescala Couchbase en Cloud? ¡Aprende de manera práctica!
 
Open platform - Conferencia Esri 2016
Open platform  - Conferencia Esri 2016Open platform  - Conferencia Esri 2016
Open platform - Conferencia Esri 2016
 
Mejores prácticas para migrar sus bases de datos a AWS
Mejores prácticas para migrar sus bases de datos a AWSMejores prácticas para migrar sus bases de datos a AWS
Mejores prácticas para migrar sus bases de datos a AWS
 
Introducción a Microsoft Azure SQL Data Warehouse
Introducción a Microsoft Azure SQL Data WarehouseIntroducción a Microsoft Azure SQL Data Warehouse
Introducción a Microsoft Azure SQL Data Warehouse
 
Data Platform de BEEVA
Data Platform de BEEVAData Platform de BEEVA
Data Platform de BEEVA
 

Último

Inteligencia Artificial. Matheo Hernandez Serrano USCO 2024
Inteligencia Artificial. Matheo Hernandez Serrano USCO 2024Inteligencia Artificial. Matheo Hernandez Serrano USCO 2024
Inteligencia Artificial. Matheo Hernandez Serrano USCO 2024u20211198540
 
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptxModelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptxtjcesar1
 
CommitConf 2024 - Spring Boot <3 Testcontainers
CommitConf 2024 - Spring Boot <3 TestcontainersCommitConf 2024 - Spring Boot <3 Testcontainers
CommitConf 2024 - Spring Boot <3 TestcontainersIván López Martín
 
PLANEACION DE CLASES TEMA TIPOS DE FAMILIA.docx
PLANEACION DE CLASES TEMA TIPOS DE FAMILIA.docxPLANEACION DE CLASES TEMA TIPOS DE FAMILIA.docx
PLANEACION DE CLASES TEMA TIPOS DE FAMILIA.docxhasbleidit
 
Actividades de computación para alumnos de preescolar
Actividades de computación para alumnos de preescolarActividades de computación para alumnos de preescolar
Actividades de computación para alumnos de preescolar24roberto21
 
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).pptLUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).pptchaverriemily794
 
Trabajo de tecnología excel avanzado.pdf
Trabajo de tecnología excel avanzado.pdfTrabajo de tecnología excel avanzado.pdf
Trabajo de tecnología excel avanzado.pdfedepmariaperez
 
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
 
LINEA DE TIEMPO LITERATURA DIFERENCIADO LITERATURA.pptx
LINEA DE TIEMPO LITERATURA DIFERENCIADO LITERATURA.pptxLINEA DE TIEMPO LITERATURA DIFERENCIADO LITERATURA.pptx
LINEA DE TIEMPO LITERATURA DIFERENCIADO LITERATURA.pptxkimontey
 
Slideshare y Scribd - Noli Cubillan Gerencia
Slideshare y Scribd - Noli Cubillan GerenciaSlideshare y Scribd - Noli Cubillan Gerencia
Slideshare y Scribd - Noli Cubillan Gerenciacubillannoly
 
Agencia Marketing Branding Google Workspace Deployment Services Credential Fe...
Agencia Marketing Branding Google Workspace Deployment Services Credential Fe...Agencia Marketing Branding Google Workspace Deployment Services Credential Fe...
Agencia Marketing Branding Google Workspace Deployment Services Credential Fe...Marketing BRANDING
 
Herramientas que posibilitan la información y la investigación.pdf
Herramientas que posibilitan la información y la investigación.pdfHerramientas que posibilitan la información y la investigación.pdf
Herramientas que posibilitan la información y la investigación.pdfKarinaCambero3
 
Trabajando con Formasy Smart art en power Point
Trabajando con Formasy Smart art en power PointTrabajando con Formasy Smart art en power Point
Trabajando con Formasy Smart art en power PointValerioIvanDePazLoja
 
Análisis de Artefactos Tecnologicos (3) (1).pdf
Análisis de Artefactos Tecnologicos  (3) (1).pdfAnálisis de Artefactos Tecnologicos  (3) (1).pdf
Análisis de Artefactos Tecnologicos (3) (1).pdfsharitcalderon04
 
La tecnología y su impacto en la sociedad
La tecnología y su impacto en la sociedadLa tecnología y su impacto en la sociedad
La tecnología y su impacto en la sociedadEduardoSantiagoSegov
 
TALLER DE ANALISIS SOLUCION PART 2 (1)-1.docx
TALLER DE ANALISIS SOLUCION  PART 2 (1)-1.docxTALLER DE ANALISIS SOLUCION  PART 2 (1)-1.docx
TALLER DE ANALISIS SOLUCION PART 2 (1)-1.docxobandopaula444
 
certificado de oracle academy cetrificado.pdf
certificado de oracle academy cetrificado.pdfcertificado de oracle academy cetrificado.pdf
certificado de oracle academy cetrificado.pdfFernandoOblitasVivan
 
La Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdfLa Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdfjeondanny1997
 
#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx
#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx
#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptxHugoGutierrez99
 

Último (20)

Inteligencia Artificial. Matheo Hernandez Serrano USCO 2024
Inteligencia Artificial. Matheo Hernandez Serrano USCO 2024Inteligencia Artificial. Matheo Hernandez Serrano USCO 2024
Inteligencia Artificial. Matheo Hernandez Serrano USCO 2024
 
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptxModelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
 
CommitConf 2024 - Spring Boot <3 Testcontainers
CommitConf 2024 - Spring Boot <3 TestcontainersCommitConf 2024 - Spring Boot <3 Testcontainers
CommitConf 2024 - Spring Boot <3 Testcontainers
 
PLANEACION DE CLASES TEMA TIPOS DE FAMILIA.docx
PLANEACION DE CLASES TEMA TIPOS DE FAMILIA.docxPLANEACION DE CLASES TEMA TIPOS DE FAMILIA.docx
PLANEACION DE CLASES TEMA TIPOS DE FAMILIA.docx
 
Actividades de computación para alumnos de preescolar
Actividades de computación para alumnos de preescolarActividades de computación para alumnos de preescolar
Actividades de computación para alumnos de preescolar
 
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).pptLUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
 
Trabajo de tecnología excel avanzado.pdf
Trabajo de tecnología excel avanzado.pdfTrabajo de tecnología excel avanzado.pdf
Trabajo de tecnología excel avanzado.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)
 
LINEA DE TIEMPO LITERATURA DIFERENCIADO LITERATURA.pptx
LINEA DE TIEMPO LITERATURA DIFERENCIADO LITERATURA.pptxLINEA DE TIEMPO LITERATURA DIFERENCIADO LITERATURA.pptx
LINEA DE TIEMPO LITERATURA DIFERENCIADO LITERATURA.pptx
 
El camino a convertirse en Microsoft MVP
El camino a convertirse en Microsoft MVPEl camino a convertirse en Microsoft MVP
El camino a convertirse en Microsoft MVP
 
Slideshare y Scribd - Noli Cubillan Gerencia
Slideshare y Scribd - Noli Cubillan GerenciaSlideshare y Scribd - Noli Cubillan Gerencia
Slideshare y Scribd - Noli Cubillan Gerencia
 
Agencia Marketing Branding Google Workspace Deployment Services Credential Fe...
Agencia Marketing Branding Google Workspace Deployment Services Credential Fe...Agencia Marketing Branding Google Workspace Deployment Services Credential Fe...
Agencia Marketing Branding Google Workspace Deployment Services Credential Fe...
 
Herramientas que posibilitan la información y la investigación.pdf
Herramientas que posibilitan la información y la investigación.pdfHerramientas que posibilitan la información y la investigación.pdf
Herramientas que posibilitan la información y la investigación.pdf
 
Trabajando con Formasy Smart art en power Point
Trabajando con Formasy Smart art en power PointTrabajando con Formasy Smart art en power Point
Trabajando con Formasy Smart art en power Point
 
Análisis de Artefactos Tecnologicos (3) (1).pdf
Análisis de Artefactos Tecnologicos  (3) (1).pdfAnálisis de Artefactos Tecnologicos  (3) (1).pdf
Análisis de Artefactos Tecnologicos (3) (1).pdf
 
La tecnología y su impacto en la sociedad
La tecnología y su impacto en la sociedadLa tecnología y su impacto en la sociedad
La tecnología y su impacto en la sociedad
 
TALLER DE ANALISIS SOLUCION PART 2 (1)-1.docx
TALLER DE ANALISIS SOLUCION  PART 2 (1)-1.docxTALLER DE ANALISIS SOLUCION  PART 2 (1)-1.docx
TALLER DE ANALISIS SOLUCION PART 2 (1)-1.docx
 
certificado de oracle academy cetrificado.pdf
certificado de oracle academy cetrificado.pdfcertificado de oracle academy cetrificado.pdf
certificado de oracle academy cetrificado.pdf
 
La Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdfLa Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdf
 
#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx
#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx
#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx
 

Madrid DataEng - LeanXcale, Simplifying architectures for real time decisions

  • 1. Simplifying architectures for real-time decisions Handling high volume and high load environments
  • 2. Decisiones reales en tiempo real “¿Debo incluir más estaciones de producción?”“¿Puedo conceder ese microcrédito?” “¿A qué usuarios debo dirigir mi campaña?” “¿Qué conductor es el más apropiado para atender un viaje?” “¿Debo entrar en esa operación?” ... “¿Es aceptable este riesgo?¿Cuál es la elección más apropiada?¿Es este el mejor momento para actuar?”
  • 3. Requisitos • Velocidad de ingestión. • Volumen de datos. • Análisis en tiempo real. • Análisis batch.
  • 5. Arquitecturas lambda • Ventajas: Resuelven el problema. • Desventajas: • Complejidad: • Multiples datastores → Multiples pipelines → Multiples frameworks • Código duplicado • ETLs • Acoplamiento al framework • Dificultad de Mantenimiento. • Baja flexibilidad
  • 6. Alternativa a lambda • Unificar datastores • Elimina complejidad. • Elimina ETLs. • Elimina código duplicado. • Simplifica el framework • Situación inicial: Requisitos del datastore • Ingestión masiva • Grandes volúmenes de datos • Análisis en tiempo real • Análisis batch
  • 7. LeanXcale • LeanXcale es una BBDD ultraescalable con capacidades SQL y NoSQL e ingestión masiva. • Características y funcionalidades ● Escalabilidad lineal ● Particionamiento inteligente ● Ingestión masiva ● Capacidades GIS ● Operaciones vectoriales ● Customización ● Estructura de datos híbrida ● Operaciones vectoriales ● … ● Interfaz SQL & NoSQL ● Agregados Online ● HTAP → OLTP + OLAP ● MVCC ● Gestión eficiente de NUMA ● Elasticidad ● Queries políglotas ● ...
  • 8. Componentes • Query engine: Motor SQL • Basado en Apache Calcite • Interpreta SQL (ANSI 2003) • Genera y optimiza planes de ejecución • Datastore: Kivi • Motor clave/valor • Estructura de datos híbrida (B+Tree ~ LSM Tree) • Capacidad de ejecución de predicados • Transaction Manager • Permite escalado lineal • Implementa el MVCC • Conectores/Drivers: • Proporcionan acceso desde diferentes ecosistemas (JDBC/ODBC, PHP, Kafka, Spark, etc) Query Engine Transaction Manager Data Storage (Kivi) Conector directo Driver SQL
  • 9. Escalado lineal • Otras BBDD transaccionales • Escalabilidad asintótica → Cada nuevo nodo aporta menos al cluster • Límite de escalabilidad • LeanXcale: • Escalabilidad lineal → Cada nuevo nodo mantiene la aportación cluster • Algoritmo de escalado: https://www.youtube.com/watch?v=ScLthWjXdCE
  • 10. Particionamiento inteligente Optimizar la inserción sin penalizar la lectura • Mantiene la organización de los datos basada en la clave primaria. •Permite operaciones de scan paralelo • Particiona automáticamente aprovechando la localidad temporal. • Optimiza el uso de la cache para inserción.
  • 11. Agregados online • El cálculo de agregados es costoso, especialmente en entornos con gran volumen. • Alternativas: • Cálculo en tiempo de consulta: • Requiere procesar el dataset completo en consulta. • En grandes volúmenes cambiantes requiere procesar cada vez. • Cálculo en tiempo de inserción: • Requiere bloqueos para garantizar consistencia → Penaliza la inserción • LeanXcale: Agregados online • Precalcula en inserción (sin bloqueo). • Lectura directa.
  • 12. Tiempo real vs LeanXcale • Inserción masiva: • API key-value directa al datastore • Particionamiento inteligente • Estructura de datos híbrida • Grandes volúmenes de datos • Escalado lineal • Particionamiento inteligente • Análitica en tiempo real • Agregados online • Análisis batch • Motor SQL • Estructura de datos híbrida
  • 13. Caso de uso: Análisis de viajes Taxi Viajes - Fecha de Inicio y Fin - Coordenadas de inicio y fin - Conductor - Compañía - Distancia - Puntuación (0 - 5) Arquitectura LeanXcale Indicadores - Número de viajes - Mejores conductores - Datos por compañía - Pasajeros - Viajes - Distribución temporal - Horaria - Diaria - Semanal Tiempo Real
  • 14. Arquitectura Proceso inserción KVDS KVDS KVDS KVDS KVDS KVDS KVDS KVDS Proceso Java Tiempo real: 100 viajes/s Inserción: 60k viajes/s .csv Viajes Taxi NYC 2013 12 archivos: 15M viajes/mes Total: 160M viajes Score aleatorio Key-value 2 servidores LX - 4 cores - 16 Gb - 300 Gb disco Dashboard Apache Superset Python SQL Particionamiento primario: Información geográfica. Particionamiento automático: Información temporal.
  • 15. Agregados online • Agregados online: • Número total de viajes. • Información de conductor (viajes realizados, puntuación acumulada) • Información temporal (viajes acumulados por día, hora y semana) • Información de compañía (viajes realizados, pasajeros acumulados).
  • 16. Modelo de datos • Tabla principal: TRIP_DATA_MEETUP • Agregados online: • TRIP_DATA_MEDALLION: Agregados agrupados por conductor. • TRIP_DATA_VENDOR: Agregados por compañía. • TRIP_DATA_DAILY: Agregados por día de la semana. • TRIP_DATA_HOURLY: Agregados por hora del día. •TRIP_DATA_WEEKLY: Agregados por hora del día. • TRIP_DATA_DELTA: Agregados totales.
  • 18. From demo to market • Volumen y carga • Escalabilidad y elasticidad • Desarrollo de aplicaciones: • SQL: JDBC / ODBC / SQL Alchemy • Key-Value: Librería Java/Python/PHP/C • Kafka • Spark • Despliegue: • On cloud • On premise •Trial y plan para Startups
  • 19. Otras aplicaciones • Smart Grid. • Análisis de riesgo al crédito. • Perfilado de usuarios. • Gestión de inversiones. • Smart cities.