Descubre cómo FarosAI integró Airbite en su plataforma de ingeniería de datos
Índice de contenido:
- Introducción
- ¿Qué es Airbite y cómo funciona?
- Beneficios de utilizar Airbite en Faro's
- Integración de Airbite en Faro's
- Selección de Airbite como la plataforma de ELT
- Configuración de la conexión con Airbite
- Integración de destinos personalizados
- Despliegue de Airbite en la nube
- Configuración predefinida en Airbite
- Ampliación de Ferro's con Airbite
- Contribución a la comunidad de Airbite
- Extensibilidad y personalización de las fuentes de datos
- Integración con herramientas adicionales (New Relic y Bugsnag)
- Conclusiones
Introducción
¡Hola a todos! Hoy estamos emocionados de presentar la 11ª edición de la llamada comunitaria de Airbike. En esta oportunidad, contaremos con un invitado especial, Thomas Gerber, uno de los líderes de ingeniería en Faro's. En esta llamada, Thomas compartirá una visión general de cómo integraron Airbite en la edición comunitaria de Faro's. También discutirá los beneficios y las razones detrás de la elección de Airbite como plataforma de ELT.
¿Qué es Airbite y cómo funciona?
Antes de entrar en los detalles de la integración de Airbite en Faro's, es importante entender qué es Airbite y cómo funciona. Airbite es una plataforma de ELT (Extract, Load, Transform) de código abierto que permite la integración de múltiples fuentes de datos en un único destino. Con Airbite, puedes extraer datos de diversas fuentes, cargarlos en un almacén centralizado y transformarlos según tus necesidades.
La arquitectura de Airbite está compuesta por conectores, fuentes, destinos y transformaciones. Los conectores facilitan la extracción de datos de diversas fuentes, como bases de datos, herramientas de seguimiento de errores y plataformas de colaboración. Las fuentes especifican los detalles de la conexión y las consultas necesarias para extraer los datos. Los destinos determinan dónde se cargarán los datos y cómo se estructurarán en el almacén centralizado. Y las transformaciones permiten modificar y dar formato a los datos antes de cargarlos en el destino final.
Beneficios de utilizar Airbite en Faro's
Faro's es una plataforma de operaciones de ingeniería conectadas que proporciona una capa de automatización, API y BI (Business Intelligence) para datos de operaciones de ingeniería. En Faro's, reconocieron la necesidad de contar con una plataforma de ELT para gestionar la integración y análisis de datos de diversas fuentes. Fue entonces cuando decidieron utilizar Airbite como solución.
La elección de Airbite se basó en tres argumentos principales: una comunidad vibrante, una especificación confiable y un catálogo de conectores ya existentes. La comunidad de Airbite es muy activa y cuenta con una gran cantidad de contribuyentes y usuarios que comparten conocimientos y mejoras. Esto asegura que Faro's pueda interactuar y contribuir a una comunidad sólida.
La especificación de Airbite define claramente los diferentes modos de sincronización y ofrece una guía para desarrollar nuevos conectores. Esta especificación proporcionó a Faro's la confianza necesaria para crear sus propios conectores personalizados.
Además, Airbite ya cuenta con un catálogo de conectores para herramientas populares como GitHub, GitLab, Jira, entre otras. Esto permitió a Faro's aprovechar el trabajo ya realizado y obtener rápidamente integraciones funcionales con estas herramientas.
Integración de Airbite en Faro's
Ahora, pasemos a hablar sobre cómo se integró Airbite en Faro's. La integración de Airbite en Faro's consta de tres componentes principales: la integración del destino, el despliegue y la configuración predefinida en Airbite.
Integración del destino
El destino es la forma principal en que los datos se cargan en Faro's. Para lograr esto, se realizó una personalización del destino de Airbite para mapear los datos de entrada a un modelo canónico utilizado en Faro's.
La personalización del destino involucró la creación de un convertidor que Toma los datos de las fuentes y los escribe en el modelo canónico. Esto se logró mediante la especificación de un prefijo de tabla en la configuración del destino, que indica qué fuente y convertidor se debe utilizar.
Esta personalización permitió a Faro's mantener la simplicidad de su propia arquitectura, mientras que Airbite se encargaba del mapeo y escritura de los datos en el modelo canónico.
Despliegue
Para entornos de implementación local, el despliegue de Airbite se realizó mediante Docker Compose. El equipo de Faro's utilizó una configuración personalizada basada en la configuración de Docker Compose de Airbite. Esto permitió levantar rápidamente todas las instancias de Airbite necesarias para el funcionamiento de Faro's.
Para el despliegue en la nube, Faro's utilizó Plural, una herramienta que simplifica el despliegue de aplicaciones en la nube. Plural proporciona una forma sencilla de instalar y configurar Airbite en un clúster de AWS EKS (Elastic Kubernetes Service), lo que facilitó el despliegue en la nube de Faro's.
Configuración predefinida en Airbite
Finalmente, Faro's estableció una configuración predefinida en Airbite para facilitar a los usuarios su primera experiencia con la plataforma. Esto se logró exportando la configuración completa de Airbite, realizando algunos ajustes y luego importándola al iniciar Faro's. De esta manera, los usuarios tenían acceso inmediato a las fuentes, conexiones y destinos preconfigurados.
Esta configuración predefinida permitió a los usuarios de Faro's comenzar a utilizar Airbite de forma rápida y sencilla, sin tener que realizar configuraciones adicionales.
Ampliación de Faro's con Airbite
Airbite no solo benefició a Faro's en términos de integración y análisis de datos, sino que también abrió nuevas oportunidades de ampliación y personalización. Faro's pudo contribuir a la comunidad de Airbite y ampliar su catálogo de conectores.
Además, Faro's extendió su propio esquema de datos para cubrir casos específicos de operaciones de ingeniería y métricas personalizadas. Esto permitió a los usuarios de Faro's visualizar y analizar datos de múltiples fuentes, como herramientas de seguimiento de errores y métricas de rendimiento.
Además, Faro's planea integrar herramientas adicionales como New Relic y Bugsnag en su plataforma, lo que brindará a los usuarios una visión más completa de las operaciones de ingeniería.
Conclusiones
La integración de Airbite en Faro's ha sido un gran éxito, brindando a los usuarios una plataforma de ELT confiable y flexible para gestionar sus datos de operaciones de ingeniería. El enfoque de composición de software utilizado por Faro's permite aprovechar al máximo todas las herramientas disponibles, como Airbite, Asura y Metabase.
El compromiso de Faro's con la comunidad de código abierto ha sido un factor clave en el desarrollo de su plataforma. Contribuir con nuevas fuentes y destinos en Airbite ha beneficiado tanto a Faro's como a la comunidad en general.
Con Faro's y Airbite, los usuarios tienen la capacidad de personalizar y ampliar su plataforma de operaciones de ingeniería de acuerdo con sus necesidades específicas. Esto les permite obtener una visión profunda de sus operaciones y tomar decisiones basadas en datos sólidos.
En resumen, la integración de Airbite en Faro's ha demostrado ser un gran ejemplo de cómo las herramientas de código abierto pueden potenciar y mejorar una plataforma de operaciones de ingeniería.