top of page

Revolucionando la arquitectura de datos: cómo construimos una plataforma de datos auto-gestionada en Akua

Foto del escritor: Juan Jose BehrendJuan Jose Behrend

¿Alguna vez has sentido que las soluciones tradicionales de datos son como usar un lanzacohetes para encender una vela? Sí, nosotros también pasamos por ahí. En Akua, hemos recorrido el camino de las arquitecturas de datos complejas - desde data warehouses potenciados por Pentaho (una suite completa de integración de datos y Business Intelligence que incluye ETL, reporting y visualización) hasta data lakes en tiempo casi real construidos sobre:

  • Apache Spark: un motor de procesamiento distribuido que permite procesar grandes volúmenes de datos en memoria

  • Amazon EMR (Elastic MapReduce): servicio gestionado de AWS para ejecutar frameworks como Spark, Hive y otros

  • Delta Lake: una capa de almacenamiento que trae transaccionalidad ACID a los data lakes

  • Amazon Kinesis: servicio para ingestión y procesamiento de datos en tiempo real

  • Amazon S3: almacenamiento escalable

Si bien estas son herramientas poderosas y en muchísimos casos tienen sentido de implementar, a menudo se sentían como llevar un Fórmula 1 para ir al supermercado - impresionante pero poco práctico para nuestras necesidades actuales

El desafío: encontrar nuestro "tren levitante"

Como suele decir Mathias Parodi, nuestro Head of Engineering, necesitábamos una solución que "levite como un tren". Algo que se deslice sin esfuerzo a través de nuestras necesidades de datos mientras mantiene los pies en la tierra. Nuestros requisitos eran cristalinos:

  • El mantenimiento debe ser pan comido, no una pesadilla

  • Ajuste perfecto para nuestra escala actual y horizonte de 2-3 años

  • Económico pero veloz como un rayo

  • Entregando valor inmediato al negocio

La solución: abrazando la simplicidad con poder

La base: PostgreSQL como nuestro data warehouse

En lugar de subirnos al último tren de moda de data, dimos un paso atrás y miramos al tradicional PostgreSQL con ojos frescos. Esta base de datos probada en batalla se convirtió en nuestro Datawarehouse, comenzando con una  capa de “datos crudos” ( datos exactamente igual que las bases de datos de origen o operativas ), con replicación en tiempo real a través de AWS DMS (Database Migration Service, un servicio que permite replicar datos en tiempo real entre diferentes bases de datos) para bases de datos relacionales y DynamoDB Streams (un servicio que captura cambios en tiempo real en las tablas de DynamoDB) junto con AWS Lambda (servicio serverless que ejecuta código en respuesta a eventos) para nuestros datos NoSQL.

Este enfoque nos permitió:

  • Replicación en tiempo real con latencia menor a 1 segundo

  • Cero pérdida de datos gracias a los mecanismos de checkpoint de DMS

  • Transformaciones en vuelo usando las capacidades de mapeo de DMS

  • Procesamiento serverless que escala automáticamente con la carga


Manejando datos semi-estructurados como un campeón


¿Uno de nuestros mayores aciertos? Aprovechar las capacidades JSONB de PostgreSQL (un tipo de dato binario que almacena documentos JSON de forma optimizada) para manejar datos de DynamoDB sin sudar la gota gorda. Las ventajas del tipo JSONB incluyen:

  • Almacenamiento comprimido y eficiente

  • Indexación GIN para búsquedas rápidas dentro del JSON

  • Operadores nativos para consultar y manipular datos JSON

  • Compatibilidad total con consultas SQL estándar

¿El rendimiento? Simplemente alucinante. En nuestras pruebas, conseguimos:

  • Consultas con predicados sobre campos JSON en menos de 50ms

  • Agregaciones sobre millones de registros en segundos

  • Joins eficientes entre datos estructurados y semi-estructurados Este enfoque nos dio la flexibilidad de NoSQL con la confiabilidad de un warehouse tradicional.


Infraestructura como código: la magia del IDP


¿Recuerdan nuestra Plataforma Interna de Desarrollo (IDP)? Nuestro equipo de plataforma se puso el sombrero de ingeniería de datos e hizo magia. En solo dos semanas, teníamos un sistema de replicación de datos en tiempo real completamente automatizado. Sin intervenciones manuales - pura automatización del bueno.


Modelado de datos potenciado por IA


Aquí es donde la cosa se pone interesante. Combinamos nuestros diagramas de entidad-relación cuidadosamente elaborados con IA para diseñar un data mart de hechos y dimensiones a prueba de futuro. Pero no nos detuvimos ahí - construimos un sistema potenciado por IA que detecta y se adapta automáticamente a nuevas tablas. Es como tener un modelo de datos que evoluciona solo y crece con tu negocio.


Orquestación: mantenlo simple, mantenlo en tiempo real


Si bien herramientas como Airflow son geniales, elegimos un camino diferente. Usando n8n (una plataforma de automatización de código abierto que permite crear flujos de trabajo complejos mediante una interfaz visual), creamos un sistema de orquestación robusto. N8n nos ofrece:

  • Más de 200 integraciones predefinidas con servicios populares

  • Capacidad de ejecutar código personalizado en JavaScript

  • Interfaz visual para diseñar y depurar flujos

  • Webhooks y triggers programados

  • Sistema de colas integrado para procesos asíncronos

  • Manejo de errores y reintentos automáticos

Con estas capacidades, creamos un sistema de orquestación robusto que incluye:

  • Sincronización de datos en tiempo real

  • Notificaciones por Slack para problemas de calidad de datos

  • Monitoreo y alertas automatizadas

  • Controles de calidad de datos integrados



Plataforma de datos de Akua

El resultado: una plataforma de datos que simplemente funciona


Nuestra arquitectura final entrega:

  1. Un data mart limpio y bien estructurado con:

    • Tablas de hechos para pagos

    • Tablas de dimensiones para clientes, comercios, instrumentos de pago

    • Desnormalización completa para consultas ultrarrápidas

  2. Integración Zero ETL con Amazon Redshift (un servicio de almacén de datos en la nube optimizado para análisis), dejándolo hacer lo que mejor sabe hacer - consultas columnares ultrarrápidas sin el overhead de los joins. Redshift nos proporciona:

  3. Almacenamiento columnar que reduce drásticamente el I/O en consultas analíticas

  4. Procesamiento masivamente paralelo (MPP) para distribuir consultas

  5. Compresión automática basada en el tipo de datos

  6. Escalado separado de computación y almacenamiento

  7. Capacidad de consultar datos directamente en S3 (Redshift Spectrum)

  8. Optimización automática de consultas y mantenimiento

Con la funcionalidad Zero ETL, conseguimos:

  • Replicación automática desde PostgreSQL a Redshift

  • Sincronización en near real-time (menos de 2 minutos de latencia)

  • Sin necesidad de pipelines ETL adicionales

  • Consistencia garantizada entre fuente y destino


Visualización: Metabase para la victoria

Después de años luchando con herramientas BI "world-class" (léase: complicadas y caras), encontramos nuestra pareja perfecta en Metabase, una plataforma de Business Intelligence de código abierto diseñada para ser fácil de usar sin sacrificar potencia. ¿Por qué?

Metabase nos ofrece características empresariales sin la complejidad tradicional:

  • Motor de consultas que permite crear análisis sin conocer SQL

  • Capacidad de escribir consultas SQL directas cuando se necesita

  • Sistema de caché inteligente para consultas frecuentes

  • Control de acceso granular a nivel de tabla y fila

  • Autenticación SSO y LDAP

  • API completa para automatización e integración

  • Analytics embebidos a través de SDK

  • Creación de dashboards con un clic

  • Soporte nativo para consultas SQL

  • Funcionalidades potenciadas por IA que mejoran constantemente


El impacto: de cero a live en 30 días


En solo un mes, construimos:

  • Un data warehouse auto-gestionado

  • Ingestión automática para nuevas fuentes de datos

  • Data mart auto-evolutivo

  • Tiempos de respuesta sub-100ms en millones de registros


¿El secreto? La simplicidad


Esto no fue solo otra implementación tecnológica - fue repensar cómo deberían funcionar las plataformas de datos modernas. Al elegir la simplicidad sobre la complejidad, la automatización sobre los procesos manuales, y las soluciones prácticas sobre la tecnología de moda, construimos algo que realmente sirve a nuestras necesidades.

¿El resultado? Una plataforma de datos tan ágil como necesita ser una startup, pero lo suficientemente robusta para manejar datos a escala empresarial. Es la prueba viviente de que a veces las mejores soluciones no son las más complejas - son las que se ajustan perfectamente a tus necesidades mientras dejan espacio para crecer.

Un agradecimiento especial al increíble equipo de Akua, sobre todo a Luispe Toloy y German Yepes  y nuestra familia extendida de asesores que ayudaron a dar forma a esta solución elegante, eficiente y notablemente simple. Esto es lo que sucede cuando la experiencia se encuentra con la innovación, y no podríamos estar más orgullosos del resultado.



129 visualizaciones0 comentarios

Entradas recientes

Ver todo

Comments


bottom of page