Caso de éxito
Kilimo valida una arquitectura de data lake en AWS con particionado eficiente en S3 y consultas optimizadas en Athena
Resumen
Kilimo es una empresa argentina de climatech, con sede en Córdoba, que usa datos satelitales y climáticos con IA para optimizar el riego y la gestión del agua en la agricultura. Para ordenar su plataforma de datos, Craftech diseñó —en un proyecto financiado por AWS— una arquitectura de data lake con particionado eficiente en Amazon S3, catálogo en AWS Glue y consultas optimizadas en Amazon Athena, además de planificar el desacople del cálculo de evapotranspiración (ET0) del monolito hacia un job independiente.
Kilimo es una empresa argentina de climatech que usa datos satelitales, meteorológicos y de campo, combinados con inteligencia artificial, para optimizar el riego y ayudar a los productores a usar mejor el agua. Ese trabajo descansa sobre una plataforma que procesa grandes volúmenes de datos climáticos. Cuando Kilimo necesitó ordenar y optimizar esa capa de datos, encaró con Craftech un proyecto de ingeniería de datos financiado por AWS.
Solución implementada
- Diseñó el networking e IAM para la conectividad Data Lake → RDS Climatic (EKS↔RDS, VPC Endpoint para S3)
- Construyó una PoC de particionado en Amazon S3 (year/month/day/origin)
- Catalogó los datos con AWS Glue Catalog para consultas estructuradas
- Validó partition pruning en Amazon Athena para reducir el data escaneado y el costo de consulta
- Preparó el bucket de S3 para recibir los datos del sistema Climatic
- Auditó el script de ET0 para desacoplarlo del Django ORM y dockerizarlo como job de Airflow (KubernetesPodOperator)
- Evaluó alternativas de orquestación de pipelines
Desafío de negocio
El punto de partida era una plataforma de datos que pedía orden. Kilimo necesitaba llevar los datos de su sistema Climatic a un data lake eficiente en costos y optimizar las consultas sobre esos datos. A la vez, el cálculo de evapotranspiración (ET0) —un script de unas 1000 líneas— estaba atado al monolito Django y necesitaba ejecutarse como un job independiente para ganar mantenibilidad y escala. Se sumaba la necesidad de evaluar alternativas de orquestación de pipelines frente a las fricciones que el equipo tenía con Airflow.
Solución
Craftech diseñó la arquitectura del data lake de punta a punta. Primero resolvió la base: el networking y los permisos de IAM para la conectividad entre el Data Lake y la base Climatic (EKS↔RDS, con un VPC Endpoint para S3). Luego construyó una prueba de concepto de particionado en Amazon S3, organizando los datos por year/month/day/origin y catalogándolos con AWS Glue Catalog. Sobre ese esquema validó el partition pruning en Amazon Athena, de modo que cada consulta escanee sólo las particiones necesarias y reduzca tanto el data escaneado como el costo. El bucket quedó preparado para recibir los datos del sistema Climatic. En paralelo, Craftech auditó el script de ET0 para desacoplarlo del Django ORM y dockerizarlo como un job de Airflow ejecutado vía KubernetesPodOperator, y evaluó alternativas de orquestación para el pipeline.
Resultados
- Arquitectura de data lake validada sobre AWS
- Particionado eficiente en S3 con catálogo en Glue y consultas optimizadas en Athena (partition pruning)
- Conectividad y permisos resueltos entre Climatic, RDS y S3
- Plan claro para desacoplar el cálculo de ET0 del monolito hacia un job independiente
- Base sólida para evolucionar el resto de las fuentes de datos
Trabajar con Craftech
El proyecto se ejecutó como una colaboración de ingeniería de datos financiada por AWS, con foco en dejar a Kilimo con una arquitectura validada y un plan claro. Más allá de la PoC, el valor estuvo en la transferencia de criterios: una forma eficiente de particionar y consultar datos en S3 y Athena, y un camino concreto para desacoplar el cálculo de ET0 del monolito. Kilimo quedó con una base sólida sobre la cual seguir evolucionando el resto de sus fuentes de datos.
Tecnologías utilizadas
La arquitectura se apoya en Amazon S3 como almacenamiento del data lake, con particionado eficiente y catálogo en AWS Glue, y consultas optimizadas con Amazon Athena. La conectividad se resolvió sobre Amazon VPC (con VPC Endpoint para S3) e IAM, integrando la base de datos en Amazon RDS y el cómputo en Amazon EKS. La orquestación de pipelines se trabajó sobre Apache Airflow, con el cálculo de ET0 dockerizado y ejecutado como job mediante KubernetesPodOperator.
Stack & tecnologías
¿Tu equipo enfrenta un desafío parecido?
Pedí un assessment gratuito de costos y arquitectura en AWS.