Ir al contenido principal

Creación de una aplicación casi en tiempo real con Zerobus Ingest y Lakebase

Aprenda cómo simplificar la ingesta de datos para casos de uso de IoT, clickstream y telemetría en Databricks

Application Architecture: Zerobus Ingest + Lakebase + Databricks Apps

Publicado: 6 de marzo de 2026

Soluciones10 min de lectura

Summary

  • Descubra cómo Zerobus Ingest elimina las arquitecturas de varios saltos para los casos de uso de IoT, clickstream y telemetría
  • Vea cómo Lakebase elimina los complejos pipelines de ETL personalizados e integra los datos transaccionales para los casos de uso operativos
  • Cree un panel de control casi en tiempo real utilizando Zerobus Ingest, Lakebase y Databricks Apps

Los datos de eventos del IoT, el clickstream y la telemetría de las aplicaciones impulsan los análisis críticos en tiempo real y la IA al combinarlos con la plataforma de inteligencia de datos de Databricks. Tradicionalmente, la ingesta de estos datos requería varios saltos de datos (bus de mensajes, trabajos de Spark) entre la fuente de datos y el lakehouse. Esto añade sobrecarga operativa, duplicación de datos, requiere experiencia especializada y, por lo general, es ineficiente cuando el lakehouse es el único destino para estos datos.

Una vez que estos datos llegan al lakehouse, se transforman y depuran para casos de uso analíticos posteriores. Sin embargo, los equipos a menudo necesitan utilizar estos datos analíticos para casos de uso operativos, y crear estas aplicaciones personalizadas puede ser un proceso laborioso. Necesitan aprovisionar y mantener componentes de infraestructura esenciales, como una instancia de base de datos OLTP dedicada (con redes, monitoreo, copias de seguridad y más). Además, necesitan gestionar el proceso de ETL inverso de los datos analíticos en la base de datos para volver a mostrarlos en la aplicación en tiempo real. Esto requeriría que el equipo creara pipelines adicionales para enviar datos desde el lakehouse a la base de datos operativa externa. Estos pipelines se suman a la infraestructura que los desarrolladores deben configurar y mantener, lo que en conjunto desvía su atención del objetivo principal: crear las aplicaciones para su negocio.

Entonces, ¿cómo simplifica Databricks tanto la ingesta de datos en el lakehouse como el servicio de datos de oro para soportar las cargas de trabajo operativas?

Presentamos Zerobus Ingest y Lakebase.

Acerca de Zerobus Ingest

Zerobus Ingest, parte de Lakeflow Connect, es un conjunto de API que proporcionan una forma optimizada de insertar datos de eventos directamente en el lakehouse. Al eliminar por completo la capa del bus de mensajes de un solo receptor, Zerobus Ingest reduce la infraestructura, simplifica las operaciones y ofrece una ingesta casi en tiempo real a escala. De esta manera, Zerobus Ingest hace que sea más fácil que nunca aprovechar el valor de tus datos.

La aplicación que produce datos debe especificar una tabla de destino en la que escribir los datos, asegurarse de que los mensajes se asignen correctamente al esquema de la tabla y, a continuación, iniciar un stream para enviar datos a Databricks. Del lado de Databricks, la API valida los esquemas del mensaje y de la tabla, escribe los datos en la tabla de destino y envía una confirmación al cliente de que los datos han persistido.

Beneficios clave de Zerobus Ingest:

  • Arquitectura optimizada: elimina la necesidad de flujos de trabajo complejos y la duplicación de datos.
  • Rendimiento a escala: admite la ingesta casi en tiempo real (hasta 5 segundos) y permite que miles de clientes escriban en la misma tabla (hasta 100 MB/s de rendimiento por cliente).
  • Integración con la Data Intelligence Platform: acelera el tiempo de obtención de valor al permitir que los equipos apliquen herramientas de análisis e IA, como MLflow para la detección de fraudes, directamente en sus datos.

Capacidad de Zerobus Ingest

Especificaciones

Latencia de ingesta

Casi en tiempo real (≤5 segundos)

Rendimiento máximo por cliente

Hasta 100 MB/s

Clientes concurrentes

Miles por tabla

Retraso de sincronización continua (Delta → Lakebase)

10–15 segundos

Latencia del escritor foreach en tiempo real

200–300 milisegundos

Acerca de Lakebase

Lakebase es una base de datos Postgres totalmente gestionada, sin servidor y escalable, integrada en la plataforma Databricks, diseñada para cargas de trabajo operativas y transaccionales de baja latencia que se ejecutan directamente sobre los mismos datos que impulsan los casos de uso analíticos y de IA. 

La separación completa de computación y almacenamiento ofrece un aprovisionamiento rápido y un autoescalado elástico. La integración de Lakebase con la plataforma Databricks es un diferenciador importante de las bases de datos tradicionales porque Lakebase hace que los datos de Lakehouse estén directamente disponibles tanto para las aplicaciones en tiempo real como para la IA sin necesidad de complejos pipelines de datos personalizados. Está diseñado para cumplir con los requisitos de creación de bases de datos, latencia de consultas y concurrencia para potenciar las aplicaciones empresariales y las cargas de trabajo agénticas. Por último, permite a los desarrolladores controlar versiones y crear ramas de las bases de datos fácilmente, como si fuera código.

Beneficios clave de Lakebase:

  • Sincronización automática de datos: capacidad para sincronizar datos fácilmente desde el Lakehouse (capa analítica) a Lakebase de forma instantánea, programada o continua, sin necesidad de complejos pipelines externos.
  • Integración con la plataforma Databricks: Lakebase se integra con Unity Catalog, Lakeflow Connect, Spark Declarative Pipelines, Databricks Apps y más.
  • Permisos y gobernanza integrados: gestión coherente de roles y permisos para datos operativos y analíticos. Los permisos nativos de Postgres se pueden seguir manteniendo mediante el protocolo de Postgres.

Juntas, estas herramientas permiten a los clientes incorporar datos de varios sistemas directamente en las tablas Delta e implementar casos de uso de ETL inverso a escala. ¡A continuación, exploraremos cómo utilizar estas tecnologías para implementar una aplicación casi en tiempo real!

Cómo crear una aplicación casi en tiempo real

Como ejemplo práctico, ayudemos a “Data Diners”, una empresa de entrega de comida a domicilio, a dotar a su equipo directivo de una aplicación para supervisar la actividad de los conductores y las entregas de los pedidos en tiempo real. Actualmente, carecen de esta visibilidad, lo que limita su capacidad para mitigar los problemas a medida que surgen durante las entregas.

¿Por qué es valiosa una aplicación en tiempo real? 

  • Visibilidad operativa: la gerencia puede ver al instante dónde está cada conductor y cómo progresan sus entregas actuales. Eso significa menos puntos ciegos con los pedidos retrasados o cuando un conductor necesita ayuda.
  • Mitigación de problemas: los datos de ubicación y estado en tiempo real permiten a los coordinadores redirigir a los conductores, ajustar las prioridades o ponerse en contacto de forma proactiva con los clientes en caso de retrasos, lo que reduce las entregas fallidas o tardías.

¡Veamos cómo construir esto con Zerobus Ingest, Lakebase y Databricks Apps en la Data Intelligence Platform!

Descripción general de la arquitectura de la aplicación

Arquitectura de la aplicación: Productor de datos, Zerobus Ingest, Delta, Lakebase, Databricks Apps

Esta arquitectura de extremo a extremo sigue cuatro etapas: (1) Un productor de datos utiliza el SDK de Zerobus para escribir eventos directamente en una tabla Delta en Databricks Unity Catalog. (2) Un pipeline de sincronización continua envía los registros actualizados desde la tabla Delta a una instancia de Lakebase Postgres. (3) Un backend de FastAPI se conecta a Lakebase a través de WebSockets para transmitir actualizaciones en tiempo real. (4) Una aplicación de front-end creada en Databricks Apps visualiza los datos en tiempo real para los usuarios finales.

Comenzando con nuestro productor de datos, la aplicación data diner en el teléfono del conductor emitirá datos de telemetría GPS sobre la ubicación del conductor (coordenadas de latitud y longitud) en ruta para entregar pedidos. Estos datos se enviarán a un API gateway, que finalmente envía los datos al siguiente servicio en la arquitectura de ingesta.

Con el SDK de Zerobus, podemos escribir rápidamente un cliente para reenviar eventos desde la puerta de enlace de la API a nuestra tabla de destino. Con la actualización de la tabla de destino casi en tiempo real, podemos crear una canalización de sincronización continua para actualizar nuestras tablas de lakebase. Finalmente, al aprovechar Databricks Apps, podemos implementar un backend de FastAPI que usa WebSockets para transmitir actualizaciones en tiempo real desde Postgres, junto con una aplicación de frontend para visualizar el flujo de datos en vivo.

Antes de la introducción del SDK de Zerobus, la arquitectura de streaming habría incluido múltiples saltos antes de llegar a la tabla de destino. Nuestra puerta de enlace de API habría necesitado descargar los datos a un área de preparación como Kafka, y necesitaríamos Spark Structured Streaming para escribir las transacciones en la tabla de destino. Todo esto añade una complejidad innecesaria, especialmente teniendo en cuenta que el único destino es el lakehouse. La arquitectura anterior demuestra, en cambio, cómo la Databricks Data Intelligence Platform simplifica el desarrollo de aplicaciones empresariales de extremo a extremo, desde la ingesta de datos hasta el análisis en tiempo real y la implementación de aplicaciones interactivas.

LÍDER 5X

Gartner®: Databricks, líder en bases de datos en la nube

Comenzar

Prerrequisitos: lo que necesitas

Paso 1: Crear una tabla de destino en Databricks Unity Catalog

Los datos de eventos producidos por las aplicaciones cliente residirán en una tabla Delta. Utilice el siguiente código para crear esa tabla de destino en el catálogo y el esquema que desee.

Paso 2: Autenticar mediante OAUTH

Paso 3: Crear el cliente de Zerobus e ingerir datos en la tabla de destino

El siguiente código inserta los datos de los eventos de telemetría en Databricks mediante la API de Zerobus. 

Limitación y solución alternativa de Change Data Feed (CDF)

A día de hoy, Zerobus Ingest no soporta CDF. CDF permite a Databricks registrar eventos de cambio para los nuevos datos escritos en una tabla delta. Estos eventos de cambio pueden ser inserciones, eliminaciones o actualizaciones. Estos eventos de cambio pueden utilizarse para actualizar las tablas sincronizadas en Lakebase. Para sincronizar los datos con Lakebase y continuar con nuestro proyecto, escribiremos los datos de la tabla de destino en una nueva tabla y habilitaremos CDF en esa tabla.

Paso 4: Aprovisionar Lakebase y sincronizar los datos con la instancia de la base de datos

Para potenciar la aplicación, sincronizaremos los datos de esta nueva tabla habilitada para CDF en una instancia de Lakebase. Sincronizaremos esta tabla continuamente para dar soporte a nuestro dashboard casi en tiempo real.

Crear una tabla sincronizada en una instancia de Lakebase

En la UI, seleccionamos:

  • Modo de sincronización: continuo para actualizaciones de baja latencia
  • Clave principal: table_primary_key

Esto garantiza que la aplicación refleje los datos más recientes con un retraso mínimo.

Nota: También puedes crear la canalización de sincronización de manera programática con el SDK de Databricks.

Modo en tiempo real mediante foreach writer

Las sincronizaciones continuas de Delta a Lakebase tienen un retraso de 10 a 15 segundos, por lo que, si necesita una latencia más baja, considere usar el modo en tiempo real a través del escritor ForeachWriter para sincronizar datos directamente desde un DataFrame a una tabla de Lakebase. Esto sincronizará los datos en milisegundos.

Consulta el código de Lakebase ForeachWriter en Github.

Paso 5: Cree la aplicación con FastAPI u otro marco de su elección

Captura de pantalla de la aplicación RideShare360

Con tus datos sincronizados en Lakebase, ya puedes implementar tu código para crear tu app. En este ejemplo, la aplicación obtiene datos de eventos de Lakebase y los utiliza para actualizar una aplicación casi en tiempo real para seguir la actividad de un conductor mientras se dirige a realizar entregas de comida. Lea la documentación de introducción a las aplicaciones de Databricks para obtener más información sobre cómo crear aplicaciones en Databricks. 

Recursos adicionales

Consulte más tutoriales, demostraciones y aceleradores de soluciones para crear sus propias aplicaciones para sus necesidades específicas. 

  • Crea una aplicación de extremo a extremo: un simulador de navegación en tiempo real rastrea una flota de veleros usando el SDK de Python y la API de REST, con Databricks Apps y Databricks Asset Bundles. Leer el blog
  • Crear una solución de gemelos digitales: Aprenda a maximizar la eficiencia operativa, acelerar la información en tiempo real y el mantenimiento predictivo con Databricks Apps y Lakebase. Leer el blog

Obtén más información sobre Zerobus Ingest, Lakebase y Databricks Apps en la documentación técnica. También puede consultar la Databricks Apps Cookbook y la Cookbook Resource Collection.

Conclusión

Las aplicaciones de IoT, de clickstream, de telemetría y similares generan miles de millones de puntos de datos todos los días, que se utilizan para potenciar aplicaciones críticas en tiempo real en varias industrias. Por lo tanto, es fundamental simplificar la ingesta de datos de estos sistemas. Zerobus Ingest proporciona una forma optimizada de insertar datos de eventos directamente desde estos sistemas en el lakehouse, a la vez que se garantiza un alto rendimiento. Se combina muy bien con Lakebase para simplificar el desarrollo de aplicaciones empresariales de extremo a extremo.

 

(Esta entrada del blog ha sido traducida utilizando herramientas basadas en inteligencia artificial) Publicación original

No te pierdas ninguna publicación de Databricks.

Suscríbete a nuestro blog y recibe las últimas publicaciones en tu bandeja de entrada.