Direkt zum Hauptinhalt

Wie Sie Lakebase als transaktionale Datenebene für Databricks Apps verwenden

Database icon with connected flow chart shapes.

Veröffentlicht: 28. August 2025

Lösungen9 min Lesezeit

Summary

  • Erstellen Sie Full-Stack-Anwendungen auf Databricks mit Lakebase für die Speicherung und Databricks Apps für die Benutzeroberfläche.
  • Folgen Sie einem echten Beispiel: Ein Tool für Urlaubsanträge, das Daten in Lakebase speichert und aktualisiert.
  • Erhalten Sie Schritt-für-Schritt-Anleitungen: Richten Sie die Datenbank ein, verbinden Sie sie mit Ihrer App und erstellen Sie das Frontend.

Einführung

Das „traditionelle“ Erstellen interner Tools oder KI-gestützter Anwendungen stürzt Entwickler in ein Labyrinth repetitiver, fehleranfälliger Aufgaben. Zuerst müssen sie eine dedizierte Postgres-Instanz hochfahren, Netzwerke, Backups und Monitoring konfigurieren und dann Stunden (oder Tage) damit verbringen, diese Datenbank mit dem Frontend-Framework zu verbinden, das sie verwenden. Darüber hinaus müssen sie benutzerdefinierte Authentifizierungsabläufe schreiben, granulare Berechtigungen zuordnen und diese Sicherheitskontrollen über die Benutzeroberfläche, die API-Schicht und die Datenbank hinweg synchron halten. Jede Anwendungskomponente befindet sich in einer anderen Umgebung, von einem verwalteten Cloud-Dienst bis hin zu einer selbst gehosteten VM. Dies zwingt Entwickler, mit unterschiedlichen Bereitstellungspipelines, Umgebungsvariablen und Anmeldespeicher umzugehen. Das Ergebnis ist ein fragmentierter Stack, bei dem eine einzelne Änderung, wie eine Schema-Migration oder eine neue Rolle, durch mehrere Systeme sickert und manuelle Updates, umfangreiche Tests und ständige Koordination erfordert. All dieser Overhead lenkt Entwickler von der eigentlichen Wertschöpfung ab: dem Aufbau der Kernfunktionen und der Intelligenz des Produkts.

Mit Databricks Lakebase und Databricks Apps sitzt der gesamte Anwendungsstack zusammen mit dem Lakehouse. Lakebase ist eine vollständig verwaltete Postgres-Datenbank, die Lese- und Schreibvorgänge mit geringer Latenz bietet und mit denselben zugrunde liegenden Lakehouse-Tabellen integriert ist, die Ihre Analyse- und KI-Workloads antreiben. Databricks Apps bietet eine serverlose Laufzeitumgebung für die Benutzeroberfläche sowie integrierte Authentifizierung, feingranulare Berechtigungen und Governance-Kontrollen, die automatisch auf dieselben Daten angewendet werden, die Lakebase bereitstellt. Dies erleichtert die Erstellung und Bereitstellung von Apps, die transaktionalen Zustand, Analysen und KI kombinieren, ohne mehrere Plattformen zusammenzufügen, Datenbanken zu synchronisieren, Pipelines zu replizieren oder Sicherheitsrichtlinien systemübergreifend abzugleichen.

Warum Lakebase + Databricks Apps

Lakebase und Databricks Apps vereinfachen gemeinsam die Full-Stack-Entwicklung auf der Databricks-Plattform:

  • Lakebase bietet Ihnen eine vollständig verwaltete Postgres-Datenbank mit schnellen Lese-, Schreib- und Aktualisierungsvorgängen sowie modernen Funktionen wie Branching und Point-in-Time-Recovery.
  • Databricks Apps stellt die serverlose Laufzeitumgebung für das Frontend Ihrer Anwendung bereit, mit integrierter Identität, Zugriffskontrolle und Integration mit Unity Catalog und anderen Lakehouse-Komponenten.

Durch die Kombination der beiden können Sie interaktive Tools erstellen, die Zustände in Lakebase speichern und aktualisieren, auf verwaltete Daten im Lakehouse zugreifen und alles über eine sichere, serverlose Benutzeroberfläche bereitstellen, ohne separate Infrastruktur verwalten zu müssen. Im folgenden Beispiel zeigen wir, wie Sie mit dieser Einrichtung eine einfache Urlaubsantrags-Genehmigungs-App erstellen.

Erste Schritte: Erstellen einer transaktionalen App mit Lakebase

Diese Anleitung zeigt, wie Sie eine einfache Databricks App erstellen, die Managern bei der Überprüfung und Genehmigung von Urlaubsanträgen ihres Teams hilft. Die App wird mit Databricks Apps erstellt und verwendet Lakebase als Backend-Datenbank zum Speichern und Aktualisieren der Anfragen.

Die Lösung umfasst Folgendes:

  1. Bereitstellung einer Lakebase-Datenbank
    Richten Sie eine serverlose Postgres OLTP-Datenbank mit wenigen Klicks ein.
  2. Erstellung einer Databricks App
    Erstellen Sie eine interaktive App mit einem Python-Framework (wie Streamlit oder Dash), die aus Lakebase liest und in diese schreibt.
  3. Konfiguration von Schema, Tabellen und Zugriffskontrollen
    Erstellen Sie die erforderlichen Tabellen und weisen Sie der App über die Client-ID der App granulare Berechtigungen zu.
  4. Sichere Verbindung und Interaktion mit Lakebase  
    Verwenden Sie das Databricks SDK und SQLAlchemy, um sicher aus Lakebase zu lesen und in diese zu schreiben, von Ihrem App-Code aus.

Die Anleitung ist darauf ausgelegt, Ihnen schnell mit einem minimalen funktionierenden Beispiel den Einstieg zu ermöglichen. Später können Sie sie mit erweiterten Konfigurationen erweitern. 

Schritt 1: Lakebase bereitstellen

Bevor Sie die App erstellen, müssen Sie eine Lakebase-Datenbank erstellen. Gehen Sie dazu zum Tab Compute, wählen Sie OLTP-Datenbank und geben Sie einen Namen und eine Größe an. Dies stellt eine serverlose Lakebase-Instanz bereit. In diesem Beispiel heißt unsere Datenbankinstanz lakebase-demo-instance.

Schritt 2: Erstellen einer Databricks App und Hinzufügen des Datenbankzugriffs

Nachdem wir nun eine Datenbank haben, erstellen wir die Databricks App, die sich damit verbinden wird. Sie können mit einer leeren App beginnen oder eine Vorlage auswählen (z. B. Streamlit oder Flask). Nachdem Sie Ihrer App einen Namen gegeben haben, fügen Sie die Datenbank als Ressource hinzu. In diesem Beispiel wird die vordefinierte databricks_postgres-Datenbank ausgewählt.

Das Hinzufügen der Datenbankressource bewirkt Folgendes automatisch:

  • Gewährt der App CONNECT- und CREATE-Berechtigungen
  • Erstellt eine Postgres-Rolle, die an die Client-ID der App gebunden ist

Diese Rolle wird später verwendet, um Zugriff auf Tabellenebene zu gewähren.

Schritt 3: Erstellen eines Schemas, einer Tabelle und Festlegen von Berechtigungen

Nachdem die Datenbank bereitgestellt und die App verbunden ist, können Sie nun das Schema und die Tabelle definieren, die die App verwenden wird.

1. Abrufen der Client-ID der App

Kopieren Sie im Tab Environment der App den Wert der Variablen DATABRICKS_CLIENT_ID. Sie benötigen diesen für die GRANT-Anweisungen.

2. Öffnen des Lakebase SQL-Editors

Gehen Sie zu Ihrer Lakebase-Instanz und klicken Sie auf New Query. Dies öffnet den SQL-Editor mit dem bereits ausgewählten Datenbankendpunkt.

3. Führen Sie die folgende SQL aus:

Bitte beachten Sie, dass die Verwendung des SQL-Editors zwar eine schnelle und effektive Möglichkeit ist, diesen Prozess durchzuführen, die Verwaltung von Datenbankschemata in großem Maßstab jedoch am besten mit speziellen Tools erfolgt, die Versionierung, Zusammenarbeit und Automatisierung unterstützen. Tools wie Flyway und Liquibase ermöglichen es Ihnen, Schemaänderungen zu verfolgen, sie in CI/CD-Pipelines zu integrieren und sicherzustellen, dass sich Ihre Datenbankstruktur sicher zusammen mit Ihrem Anwendungscode weiterentwickelt.

LEITFADEN

Ihr kompakter Leitfaden für moderne Analytics

Schritt 4: Erstellen der App

Nachdem die Berechtigungen eingerichtet sind, können Sie nun Ihre App erstellen. In diesem Beispiel ruft die App Urlaubsanträge aus Lakebase ab und ermöglicht es einem Manager, diese zu genehmigen oder abzulehnen. Aktualisierungen werden in dieselbe Tabelle zurückgeschrieben.

Schritt 5: Sichere Verbindung zu Lakebase herstellen

Verwenden Sie SQLAlchemy und das Databricks SDK, um Ihre App mit sicherer, tokenbasierter Authentifizierung mit Lakebase zu verbinden. Wenn Sie die Lakebase-Ressource hinzufügen, werden PGHOST und PGUSER automatisch bereitgestellt. Das SDK kümmert sich um das Token-Caching.

Schritt 6: Daten lesen und aktualisieren

Die folgenden Funktionen lesen aus der Tabelle für Urlaubsanträge und aktualisieren diese:

Die obigen Code-Snippets können in Kombination mit Frameworks wie Streamlit, Dash und Flask verwendet werden, um Daten aus Lakebase abzurufen und sie in Ihrer App zu visualisieren. Um sicherzustellen, dass alle notwendigen Abhängigkeiten installiert sind, fügen Sie die erforderlichen Pakete zu Ihrer App hinzu requirements.txt Datei. Die in den Code-Snippets verwendeten Pakete sind unten aufgeführt.
 

Erweiterung des Lakehouse mit Lakebase

Lakebase fügt dem Lakehouse transaktionale Fähigkeiten hinzu, indem es eine vollständig verwaltete OLTP-Datenbank direkt in die Plattform integriert. Dies reduziert die Notwendigkeit externer Datenbanken oder komplexer Pipelines beim Erstellen von Anwendungen, die Lese- und Schreibzugriffe erfordern.

Da es nativ in Databricks integriert ist, einschließlich Datensynchronisierung, Identitätsauthentifizierung und Netzwerksicherheit – genau wie andere Datenassets im Lakehouse. Sie benötigen kein benutzerdefiniertes ETL oder Reverse ETL, um Daten zwischen Systemen zu verschieben. Zum Beispiel:

  • Sie können analytische Features in Echtzeit an Anwendungen zurückgeben (jetzt verfügbar) mithilfe des Online Feature Store und synchronisierter Tabellen.
  • Sie können operative Daten mit Delta-Tabellen synchronisieren, z. B. für historische Datenanalysen (in privatem Preview).

Diese Funktionen erleichtern die Unterstützung von produktionsreifen Anwendungsfällen wie:

  • Aktualisieren des Zustands von KI-Agenten
  • Verwaltung von Echtzeit-Workflows (z. B. Genehmigungen, Aufgabenweiterleitung)
  • Einspeisen von Live-Daten in Empfehlungssysteme oder Preisberechnungs-Engines

Lakebase wird bereits branchenübergreifend für Anwendungen wie personalisierte Empfehlungen, Chatbot-Anwendungen und Workflow-Management-Tools eingesetzt.

Was kommt als Nächstes

Wenn Sie Databricks bereits für Analysen und KI nutzen, erleichtert Lakebase die Hinzufügung von Echtzeit-Interaktivität zu Ihren Anwendungen. Mit Unterstützung für Low-Latency-Transaktionen, integrierter Sicherheit und enger Integration mit Databricks Apps können Sie vom Prototyp zur Produktion gelangen, ohne die Plattform verlassen zu müssen.

Zusammenfassung

Lakebase bietet eine transaktionale Postgres-Datenbank, die nahtlos mit Databricks Apps funktioniert und eine einfache Integration mit Lakehouse-Daten ermöglicht. Es vereinfacht die Entwicklung von Full-Stack-Daten- und KI-Anwendungen, indem externe OLTP-Systeme oder manuelle Integrationsschritte überflüssig werden.

In diesem Beispiel haben wir gezeigt, wie man:

  • Eine Lakebase-Instanz einrichtet und den Zugriff konfiguriert
  • Eine Databricks App erstellt, die Lese- und Schreibzugriff auf Lakebase hat
  • Sichere, tokenbasierte Authentifizierung mit minimalem Einrichtungsaufwand verwendet
  • Eine einfache App zur Verwaltung von Urlaubsanträgen mit Python und SQL erstellt

Lakebase befindet sich jetzt in der öffentlichen Vorschau. Sie können es noch heute direkt aus Ihrem Databricks-Workspace ausprobieren. Details zu Nutzung und Preisen finden Sie in der Lakebase und Apps Dokumentation.

(Dieser Blogbeitrag wurde mit KI-gestützten Tools übersetzt.) Originalbeitrag

Verpassen Sie keinen Beitrag von Databricks

Abonnieren Sie unseren Blog und erhalten Sie die neuesten Beiträge direkt in Ihren Posteingang.