Praktische Schritte für Tagging, Budgetierung, Alerting und Monitoring von SQL-Warehouse-Ausgaben auf Databricks mit Beispielen aus der Praxis.
von Shweta Verma und Lingeshwaran Kanniappan
Jedes Analytics-Team kennt das: Am Monatsende kommt die Rechnung und ein einziges SQL-Warehouse hat das Budget gesprengt – vielleicht, weil eine Compute-Ressource über Nacht lief, oder weil eine Ad-hoc-Ressource automatisch hochskaliert wurde, um während einer Quartalsprüfung 80 Tableau-Nutzer zu bedienen. Die Kosten sind real, aber der Frust sitzt tiefer: Niemand wusste Bescheid, bis es zu spät war.
Proaktives Kostenmanagement stellt dieses Modell auf den Kopf. Statt nachträglicher, mühsamer Rechnungsanalyse setzen Sie Leitplanken, bevor auch nur ein Cent ausgegeben wird – Budgets werden an Warehouses, Teams oder BI-Workloads gekoppelt. Warnmeldungen, die bei von Ihnen gewählten Schwellenwerten ausgelöst werden, und Dashboards, die Nutzungstrends in Echtzeit aufzeigen – all das auf der Databricks Data & AI Platform. Wenn Sie sich gerade mitten in der Migration von einem On-Premises-System oder einem anderen Cloud Data Warehouse befinden, ist jetzt der richtige Zeitpunkt, um diese Governance einzuführen.

Data-Warehousing-Workloads bringen ganz eigene Kostenherausforderungen mit sich. SQL-Warehouses bedienen interaktive, vom Menschen gesteuerte Workloads (BI-Dashboards, Ad-hoc-Analysen, eingebettete Analysen), bei denen die Nachfrage unvorhersehbar und sprunghaft ist. Ein einziges All-Hands-Meeting der Geschäftsführung, das 200 gleichzeitige Dashboard-Aktualisierungen auslöst, kann die Kosten in wenigen Minuten in die Höhe treiben. Die meisten Unternehmen beginnen ihre FinOps-Reise auf dieselbe Weise: Jemand lädt die CSV-Datei mit den Nutzungsdaten des letzten Monats herunter, öffnet eine Pivot-Tabelle und fängt an, Fragen zu stellen. Dieser Ansatz scheitert aus vier Gründen:
Proaktives Kostenmanagement – Zuordnung, Budgets, Warnmeldungen, Dashboards und Optimierung – löst alle fünf Probleme.
Bevor Sie Budgets einrichten, wählen Sie den richtigen Warehouse-Typ. Serverless SQL-Warehouses sind die von Databricks empfohlene Option für die meisten Workloads. Sie starten in Sekundenschnelle, skalieren sofort nach Beendigung der Abfragen herunter und überlassen das Zuweisen von Compute-Ressourcen dem Intelligent Workload Management. So zahlen Sie nur für die tatsächliche Ausführung von Abfragen, nicht für Leerlaufzeiten.
Wenn Sie von einem Legacy-Cloud-Data-Warehouse migrieren, ist dies eine große Umstellung. Die meisten Altsysteme berechnen Kosten für dauerhaft aktive Compute-Ressourcen oder erfordern manuelle Skalierungsentscheidungen. Serverless eliminiert diese gesamte Kategorie von Kostenfehlern.
Lumen Technologies hat dies aus erster Hand erfahren: Die Migration zweier wichtiger Telekommunikationssysteme von einem On-Premises Data Warehouse zu Serverless SQL reduzierte die Compute-Kosten um 30–40 % und steigerte die Abfragegeschwindigkeit um 90 %. Das System skaliert nun automatisch, um alle 10 Minuten etwa 7 GB zu verarbeiten, wobei Serverless die "Dauerbetrieb-Steuer" eliminiert, die normalerweise mit sprunghaften Echtzeit-Workloads verbunden ist.
Das Framework besteht aus fünf Säulen. Die ersten vier machen Ihre Ausgaben sichtbar, die fünfte senkt sie tatsächlich:

Man kann nur verwalten, was man auch zuordnen kann. Bei Warehouses bedeutet das zwei Ebenen: das Warehouse selbst und die einzelne Abfrage. Die eine Ebene zeigt Ihnen, welches Warehouse das Geld ausgegeben hat, die andere, wer darin es war.
Ebene 1: Tagging des Warehouses
SQL-Warehouses unterstützen benutzerdefinierte Tags als Schlüssel-Wert-Paare (key:value), die an system.billing.usage weitergegeben werden. So wird jede verbrauchte DBU mit einem Team, Projekt oder einer Kostenstelle verknüpft. Das Tagging funktioniert bei jedem Warehouse-Typ gleich – Classic, Pro und Serverless werden alle auf Warehouse-Ebene getaggt, sodass Sie ein Muster lernen und überall anwenden können.
Legen Sie Tags in der UI unter SQL Warehouses > Ihr Warehouse > Edit > Tags fest, oder erstellen Sie das Warehouse über die REST-API:
Tagging über die REST-API
Wenden Sie mindestens drei Dimensionen an: Team (wem es gehört), Kostenstelle (wer bezahlt) und Anwendungsfall (BI-Bereitstellung, Ad-hoc, geplante Aktualisierung).
Aktuell gibt es keine native Richtlinie, die Warehouse-Tags erzwingt, sodass jeder ein Warehouse ohne Tags erstellen kann. Integrieren Sie die Durchsetzung stattdessen in Ihren Bereitstellungsprozess – erstellen Sie Warehouses mit Terraform, Declarative Automation Bundles oder der REST-API mit Tags in der Definition, und behandeln Sie die UI als Ausnahme. Die Abfrage zur Zuordnungslücke weiter unten in diesem Beitrag erfasst alles, was durchschlüpft.
Ebene 2: Tagging der Abfrage
Warehouse-Tags verraten Ihnen, dass ein Warehouse im letzten Monat 4.000 $ gekostet hat. Sie verraten Ihnen jedoch nicht, dass 60 % davon auf ein einziges Power BI-Dashboard entfallen, das alle 15 Minuten aktualisiert wird. Diese Lücke ist wichtig, da Warehouses gemeinsam genutzt werden – ein einziges BI-Warehouse bedient Dutzende von Dashboards, mehrere dbt-Modelle und einen kontinuierlichen Strom von Ad-hoc-Abfragen.

Abfrage-Tags (Public Preview) schließen diese Lücke, indem sie einzelnen SQL-Anweisungen geschäftlichen Kontext hinzufügen:
Die Tags landen in der Spalte query_tags von system.query.history (Public Preview), zusammen mit executed_by und statement_id, sodass Sie die Ausgaben nach Dashboard, Modell oder Kostenstelle statt nach Warehouse gruppieren können. Einige Tools übernehmen dies für Sie: Ab dbt-databricks 1.11.0 werden Modellabfragen automatisch mit dem dbt-Modellnamen getaggt, und Power BI übergibt Workspace- und Dataset-IDs über den ADBC-Treiber.
Zwei Einschränkungen: Abfrage-Tags gelten nur für SQL-Warehouse-Abfragen. Da sie im Abfrageverlauf und nicht in den Abrechnungsdaten gespeichert sind, müssen Sie beide selbst zusammenführen, um die Kosten pro Abfrage zu ermitteln.
Bevor Sie SQL schreiben, prüfen Sie die Seite „Kosten“ im Governance Hub (Beta) – eine Ansicht auf Kontoebene für Ausgaben, Kostentreiber, Budgets und Tagging-Abdeckung sowie der schnellste Weg, um zu sehen, wie viel Ihrer Nutzung überhaupt zugeordnet werden kann. Ein Kontoadministrator kann dies auf der Seite „Vorschauen“ der Kontokonsole aktivieren.

Gehen Sie in der Kontokonsole zu Nutzung > Budgets, klicken Sie auf Budget hinzufügen und konfigurieren Sie:
Budgetname | Betrag | Bereich (Tags) | Empfänger von Warnmeldungen |
|---|---|---|---|
BI-Bereitstellung + Produktion | 8.000 $/Monat |
| platform-team@company.com |
Analytics, Ad-hoc | 3.000 $/Monat |
| analytics-mgr@company.com |
Marketing-Analytics | 2.500 $/Monat |
| mkt-data-lead@company.com |
Kontoweites Sicherheitsnetz | 25.000 $/Monat | (gesamte SQL-Nutzung) | cto@co.com, finops@company.com |
Das wichtigste Muster sind gestaffelte Budgets: Budgets auf Teamebene für die Eigenverantwortung sowie ein kontoweites Budget als Sicherheitsnetz, das alles auffängt, was durchrutscht.
Denken Sie daran, dass Budgets ein Überwachungsmechanismus sind und keine feste Obergrenze. Sie stoppen weder die Nutzung noch verhindern sie Gebühren, sodass Ihre Rechnung den Betrag dennoch überschreiten kann. Das Ziel ist Sensibilisierung und schnelles Reagieren, nicht Abschaltungen, die ein Produktions-Dashboard mitten in der Aktualisierung beschädigen könnten.
GetYourGuide hat dies direkt getestet: Die Konsolidierung aller Looker-Workloads auf SQL Serverless senkte die BI-Bereitstellungskosten um ca. 20 % und beschleunigte Abfragen um 35 %, obwohl das Team erwartet hatte, dass Classic-Cluster günstiger sein würden. Die Wahl des Warehouse-Typs ist eine Budgetentscheidung, die es wert ist, neu validiert zu werden, und keine einmalige Angelegenheit.
Klicken Sie auf ein beliebiges Budget, um die aktuellen Ausgaben im Vergleich zum Ziel, das verbleibende Budget und eine tägliche Visualisierung der Burn-Rate anzuzeigen. Für das Data Warehousing ist dieses Diagramm besonders aufschlussreich:
Budgets zeigen Ihnen, wo Sie stehen. Warnmeldungen sagen Ihnen, wann Sie handeln müssen.
Wenn Sie ein Budget erstellen, fügen Sie E-Mail-Empfänger hinzu, die benachrichtigt werden, wenn die Ausgaben den Budgetbetrag überschreiten. Es ist keinerlei Code erforderlich.
Erstellen Sie für schwellenwertbasierte Warnmeldungen Databricks SQL-Warnmeldungen, die `system.billing.usage` direkt abfragen. Hier sind die wichtigsten Muster:
Dies ist das Muster, von dem Teams am meisten profitieren. Anstatt erst nach der Überschreitung zu warnen, prognostiziert es die Ausgaben am Monatsende und schlägt an, bevor diese Prognose Ihr Budget überschreitet – so haben Sie noch Zeit zu handeln:
Planen Sie dies alle vier Stunden und leiten Sie es an Slack oder per E-Mail weiter. So haben Teams Tage Zeit zu reagieren (ein Warehouse anzupassen, eine teure Abfrage zu optimieren, einen Batch zu verschieben), bevor das Budget überschritten wird.
Die Kosten für die Aktualisierung von Materialized Views werden von Teams am häufigsten übersehen, da sie als serverlose Pipeline-Nutzung und nicht als Warehouse-Nutzung abgerechnet werden. Eine Sicht, die so eingestellt ist, dass sie alle 15 Minuten mit einer Quelle aktualisiert wird, die sich nur zweimal täglich ändert, verursacht unnötige Kosten ohne Nutzen. Passen Sie den Aktualisierungszeitplan an die tatsächliche Häufigkeit der Datenänderungen an und überwachen Sie die Pipeline-Ausgaben direkt:
Warnmeldungen sind punktuelle Auslöser. Dashboards bieten kontinuierlichen Kontext. Databricks stellt vorgefertigte Nutzungs-Dashboards bereit, die Konto-Admins in jeden Unity Catalog-aktivierten Workspace importieren können. Diese decken Ausgabentrends, Top-N-Analysen, Tag-Filterung und Drilldowns pro Warehouse ab. Für ein benutzerdefiniertes Monitoring sind zwei Abfragen besonders nützlich:
Nicht getaggte SQL-Nutzung ist Ihre Zuordnungslücke – Warehouse-Ausgaben, die keinem Team zugeordnet werden können. Reduzieren Sie diese auf null.
Raiffeisen Bank International hat eine eigene Plattform zur Kostenüberwachung und -prognose direkt auf Basis von Databricks-Systemtabellen aufgebaut – mit Transparenz pro Warehouse, pro Benutzer und pro Workload. Der Nutzen war ebenso kultureller wie technischer Natur: 3–4-mal schnellere Workloads und, was noch wichtiger ist: Wenn Teams ihre eigenen Ausgaben sehen und diese erklären müssen, ändert sich das Verhalten ganz ohne Vorschriften.
In den ersten vier Säulen geht es darum, Ihre Ausgaben sichtbar zu machen. In dieser Säule geht es darum, sie zu senken – und das ist der Schritt, den die meisten Teams überspringen. Beginnen Sie mit den zwei Änderungen, die gleichzeitig die Kosten senken und die Leistung verbessern.
Aktivieren Sie die prädiktive Optimierung für von Unity Catalog verwaltete Tabellen. Databricks führt OPTIMIZE, VACUUM und ANALYZE basierend auf den tatsächlichen Abfragen der einzelnen Tabellen für Sie aus, und mit CLUSTER BY AUTO werden die Clustering-Schlüssel angepasst, wenn sich die Abfragemuster ändern. Weniger gescannte Daten bedeuten schnellere Abfragen und weniger DBUs, ohne dass ein Wartungsplan eingehalten werden muss. Für Konten, die am oder nach dem 11. November 2024 erstellt wurden, ist dies standardmäßig aktiviert und wird bis 2026 auch für ältere Konten eingeführt.
Nutzen Sie standardmäßig Serverless-Warehouses wegen der zuvor beschriebenen Vorteile beim Starten und im Leerlauf – für die meisten Teams macht dies den Großteil der Einsparungen aus, und das ganz ohne laufenden Aufwand.
Darüber hinaus lohnt es sich, einige Einstellungen anzupassen:
Die Datenschicht ist ebenfalls wichtig: OPTIMIZE, VACUUM und Liquid Clustering reduzieren jeweils die für eine Abfrage erforderliche Rechenleistung, was sich bei Tausenden von BI-Abfragen pro Tag summiert.
Letztendlich sind die meisten Kostenprobleme eigentlich Abfrageprobleme. Ein fehlender Join-Schlüssel oder ein SELECT * auf eine breite Tabelle kostet gleich viel, egal wie das Warehouse konfiguriert ist – und die Zuordnung aus Säule 1 zeigt Ihnen, welche Abfragen und Dashboards Sie korrigieren müssen.
1. Verankern Sie Serverless und Zuordnung vom ersten Tag an in der Plattform. Nutzen Sie standardmäßig SQL Serverless-Warehouses für sofortigen Start, automatische Skalierung und keine Kosten im Leerlauf, und setzen Sie von Anfang an benutzerdefinierte Tags durch, denn nicht zugeordnete Nutzung ist unsichtbar, und unsichtbare Nutzung nimmt immer zu.
2. Planen Sie Budgets und Warnungen proaktiv auf mehreren Ebenen. Kombinieren Sie Budgets pro Team für die Eigenverantwortung mit einem kontoweiten Budget für Anomalien. Richten Sie Warnmeldungen basierend auf dem Verlauf (Pace) und nicht nur auf Schwellenwerten ein, damit Sie rechtzeitig von einer Überschreitung erfahren und reagieren können, bevor das Limit überschritten ist.
3. Machen Sie Ausgaben sichtbar und etablieren Sie ein Kostenbewusstsein. Die nachhaltigsten Einsparungen entstehen durch Transparenz, nicht durch Einschränkungen. Platzieren Sie Kosten-Dashboards also dort, wo die Teams arbeiten. Wie RBI feststellte: Wenn Teams ihre eigenen Ausgaben sehen können, ändert sich das Verhalten ganz ohne Vorschriften.
Dies ist Ihr schnellster Weg für den Einstieg, um Ihre Rechnungen im Griff zu behalten, bevor die Kosten explodieren:
Sind Sie bereit, die Kontrolle über Ihre Cloud-Data-Warehouse-Kosten zu übernehmen? Richten Sie ein kostenloses Databricks-Testkonto ein, erstellen Sie Ihr erstes SQL Serverless-Warehouse und konfigurieren Sie ein Budget mit E-Mail-Warnmeldungen in der Kontokonsole. Das dauert nur fünf Minuten und kostet nichts.
Für einen tieferen Einblick in die Kostentransparenz lesen Sie die Dokumentation zu Abrechnungs-Systemtabellen und importieren Sie das vorgefertigte Nutzungs-Dashboard, um Ihre Ausgaben vom ersten Tag an zu überwachen.
(Dieser Blogbeitrag wurde mit KI-gestützten Tools übersetzt.) Originalbeitrag
Abonnieren Sie unseren Blog und erhalten Sie die neuesten Beiträge direkt in Ihren Posteingang.