Ir al contenido principal

Cómo usar Lakebase como una capa de datos transaccional para aplicaciones de Databricks

Database icon with connected flow chart shapes.

Publicado: 28 de agosto de 2025

Soluciones10 min de lectura

Summary

  • Crea aplicaciones full-stack en Databricks usando Lakebase para el almacenamiento y Databricks Apps para la interfaz de usuario.
  • Sigue un ejemplo real: Una herramienta de solicitud de vacaciones que almacena y actualiza datos en Lakebase.
  • Obtén orientación paso a paso: Configura la base de datos, conéctala a tu aplicación y crea el frontend.

Introducción

Construir herramientas internas o aplicaciones impulsadas por IA de la manera “tradicional” sumerge a los desarrolladores en un laberinto de tareas repetitivas y propensas a errores. Primero, deben iniciar una instancia dedicada de Postgres, configurar la red, las copias de seguridad y la monitorización, y luego pasar horas (o días) conectando esa base de datos al framework de frontend que están utilizando. Además de eso, tienen que escribir flujos de autenticación personalizados, mapear permisos granulares y mantener esos controles de seguridad sincronizados en la UI, la capa de API y la base de datos. Cada componente de la aplicación reside en un entorno diferente, desde un servicio en la nube administrado hasta una VM autoalojada. Esto obliga a los desarrolladores a hacer malabares con canalizaciones de implementación, variables de entorno y almacenes de credenciales dispares. El resultado es una pila fragmentada donde un solo cambio, como una migración de esquema o un nuevo rol, se propaga a través de múltiples sistemas, exigiendo actualizaciones manuales, pruebas exhaustivas y coordinación constante. Toda esta sobrecarga distrae a los desarrolladores del verdadero valor añadido: la creación de las características principales y la inteligencia del producto.

Con Databricks Lakebase y Databricks Apps, toda la pila de aplicaciones se asienta junta, junto al lakehouse. Lakebase es una base de datos Postgres totalmente administrada que ofrece lecturas y escrituras de baja latencia, integrada con las mismas tablas subyacentes del lakehouse que potencian sus cargas de trabajo de análisis e IA. Databricks Apps proporciona un tiempo de ejecución sin servidor para la UI, junto con autenticación integrada, permisos detallados y controles de gobernanza que se aplican automáticamente a los mismos datos que sirve Lakebase. Esto facilita la creación y el despliegue de aplicaciones que combinan estado transaccional, análisis e IA sin tener que unir múltiples plataformas, sincronizar bases de datos, replicar canalizaciones o reconciliar políticas de seguridad entre sistemas.

¿Por qué Lakebase + Databricks Apps?

Lakebase y Databricks Apps trabajan juntos para simplificar el desarrollo full-stack en la plataforma Databricks:

  • Lakebase le proporciona una base de datos Postgres totalmente administrada con lecturas, escrituras y actualizaciones rápidas, además de características modernas como branching y recuperación puntual.
  • Databricks Apps proporciona el tiempo de ejecución sin servidor para el frontend de su aplicación, con identidad integrada, control de acceso e integración con Unity Catalog y otros componentes del lakehouse.

Al combinar ambos, puede crear herramientas interactivas que almacenan y actualizan el estado en Lakebase, acceden a datos gobernados en el lakehouse y sirven todo a través de una UI segura y sin servidor, todo ello sin gestionar infraestructura separada. En el siguiente ejemplo, mostraremos cómo crear una aplicación simple de aprobación de solicitudes de vacaciones utilizando esta configuración.

Primeros pasos: Crear una aplicación transaccional con Lakebase

Este tutorial muestra cómo crear una aplicación Databricks simple que ayuda a los gerentes a revisar y aprobar solicitudes de vacaciones de su equipo. La aplicación está construida con Databricks Apps y utiliza Lakebase como base de datos backend para almacenar y actualizar las solicitudes.

Esto es lo que cubre la solución:

  1. Aprovisionar una base de datos Lakebase
    Configure una base de datos OLTP Postgres sin servidor con unos pocos clics.
  2. Crear una Databricks App
    Construya una aplicación interactiva utilizando un framework de Python (como Streamlit o Dash) que lea y escriba en Lakebase.
  3. Configurar esquema, tablas y controles de acceso
    Cree las tablas necesarias y asigne permisos detallados a la aplicación utilizando el ID de cliente de la App.
  4. Conectar e interactuar de forma segura con Lakebase  
    Utilice el SDK de Databricks y SQLAlchemy para leer y escribir de forma segura en Lakebase desde el código de su aplicación.

El tutorial está diseñado para que comience rápidamente con un ejemplo mínimo funcional. Más adelante, puede ampliarlo con una configuración más avanzada. 

Paso 1: Aprovisionar Lakebase

Antes de crear la aplicación, necesitará crear una base de datos Lakebase. Para ello, vaya a la pestaña Compute, seleccione OLTP Database, y proporcione un nombre y tamaño. Esto aprovisiona una instancia Lakebase sin servidor. En este ejemplo, nuestra instancia de base de datos se llama lakebase-demo-instance.

Paso 2: Crear una Databricks App y Añadir Acceso a la Base de Datos

Ahora que tenemos una base de datos, creemos la Databricks App que se conectará a ella. Puede empezar desde una aplicación en blanco o elegir una plantilla (por ejemplo, Streamlit o Flask). Después de nombrar su aplicación, añada la Database como recurso. En este ejemplo, se selecciona la base de datos precreada databricks_postgres.

Añadir el recurso de Base de Datos automáticamente:

  • Otorga a la aplicación privilegios CONNECT y CREATE
  • Crea un rol de Postgres vinculado al ID de cliente de la aplicación

Este rol se utilizará más tarde para otorgar acceso a nivel de tabla.

Paso 3: Crear un Esquema, Tabla y Establecer Permisos

Con la base de datos aprovisionada y la aplicación conectada, ahora puede definir el esquema y la tabla que utilizará la aplicación.

1. Obtener el ID de cliente de la App

Desde la pestaña Environment de la aplicación, copie el valor de la variable DATABRICKS_CLIENT_ID. Lo necesitará para las sentencias GRANT.

2. Abrir el editor SQL de Lakebase

Vaya a su instancia de Lakebase y haga clic en New Query. Esto abre el editor SQL con el endpoint de la base de datos ya seleccionado.

3. Ejecute el siguiente SQL:

Tenga en cuenta que, si bien usar el editor SQL es una forma rápida y eficaz de realizar este proceso, la gestión de esquemas de bases de datos a escala se maneja mejor con herramientas dedicadas que admiten versionado, colaboración y automatización. Herramientas como Flyway y Liquibase le permiten rastrear cambios de esquema, integrarse con canalizaciones de CI/CD y garantizar que la estructura de su base de datos evolucione de forma segura junto con el código de su aplicación.

GUÍA

Tu guía compacta para el análisis moderno

Paso 4: Crear la Aplicación

Con los permisos establecidos, ahora puede crear su aplicación. En este ejemplo, la aplicación recupera las solicitudes de vacaciones de Lakebase y permite a un gerente aprobarlas o rechazarlas. Las actualizaciones se escriben de nuevo en la misma tabla.

Paso 5: Conectar de Forma Segura a Lakebase

Utilice SQLAlchemy y el SDK de Databricks para conectar su aplicación a Lakebase con autenticación segura basada en tokens. Cuando agregue el recurso Lakebase, PGHOST y PGUSER se exponen automáticamente. El SDK maneja el almacenamiento en caché de tokens.

Paso 6: Leer y actualizar datos

Las siguientes funciones leen y actualizan la tabla de solicitudes de vacaciones:

Los fragmentos de código anteriores se pueden usar en combinación con frameworks como Streamlit, Dash y Flask para extraer datos de Lakebase y visualizarlos en su aplicación. Para asegurarse de que todas las dependencias necesarias estén instaladas, agregue los paquetes requeridos al archivo requirements.txt de su aplicación. Los paquetes utilizados en los fragmentos de código se enumeran a continuación.
 

Ampliando el Lakehouse con Lakebase

Lakebase agrega capacidades transaccionales al lakehouse al integrar una base de datos OLTP completamente administrada directamente en la plataforma. Esto reduce la necesidad de bases de datos externas o canalizaciones complejas al crear aplicaciones que requieren lecturas y escrituras.

Dado que está integrado de forma nativa con Databricks, incluida la sincronización de datos, la autenticación de identidad y la seguridad de la red, al igual que otros activos de datos en el lakehouse. No necesita ETL personalizado o ETL inverso para mover datos entre sistemas. Por ejemplo:

  • Puede servir características analíticas a las aplicaciones en tiempo real (disponible hoy) utilizando el Almacén de Características en Línea y tablas sincronizadas.
  • Puede sincronizar datos operativos con tablas Delta, por ejemplo, para análisis de datos históricos (en vista previa privada).

Estas capacidades facilitan la compatibilidad con casos de uso de nivel de producción como:

  • Actualización de estado en agentes de IA
  • Gestión de flujos de trabajo en tiempo real (por ejemplo, aprobaciones, enrutamiento de tareas)
  • Alimentación de datos en vivo en sistemas de recomendación o motores de precios

Lakebase ya se está utilizando en diversas industrias para aplicaciones que incluyen recomendaciones personalizadas, aplicaciones de chatbot y herramientas de gestión de flujos de trabajo.

Próximos pasos

Si ya está utilizando Databricks para análisis e IA, Lakebase facilita la adición de interactividad en tiempo real a sus aplicaciones. Con soporte para transacciones de baja latencia, seguridad integrada y una estrecha integración con Databricks Apps, puede pasar del prototipo a la producción sin salir de la plataforma.

Resumen

Lakebase proporciona una base de datos transaccional de Postgres que funciona sin problemas con Databricks Apps y ofrece una fácil integración con los datos de Lakehouse. Simplifica el desarrollo de aplicaciones de datos e IA de pila completa al eliminar la necesidad de sistemas OLTP externos o pasos de integración manuales.

En este ejemplo, mostramos cómo:

  • Configurar una instancia de Lakebase y configurar el acceso
  • Crear una Databricks App que lee y escribe en Lakebase
  • Utilizar autenticación segura basada en tokens con una configuración mínima
  • Crear una aplicación básica para administrar solicitudes de vacaciones usando Python y SQL

Lakebase ya está en vista previa pública. Puede probarlo hoy mismo directamente desde su espacio de trabajo de Databricks. Para obtener detalles sobre el uso y los precios, consulte la documentación de Lakebase y Apps.

(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.