Microsoft Fabric ist Microsofts einheitliche Analyseplattform, die Data Engineering, Analytics und Business Intelligence in einer einzigen SaaS-Lösung zusammenführt. Fabric baut auf OneLake auf und vereinfacht Datenarchitekturen, indem es Dienste wie Data Factory, Synapse und Power BI in einer zentral gesteuerten End-to-End-Plattform zusammenführt.
dbt (data build tool) ist ein führendes Tool für die Entwicklung von Analysen und konzentriert sich auf das "T" in ELT. Es ermöglicht Teams die Umwandlung von Rohdaten in analysefähige Modelle mithilfe von SQL, wobei bewährte Software-Engineering-Praktiken wie Versionskontrolle, Tests und Dokumentation angewendet werden, um skalierbare und wartbare Datentransformationen zu erstellen.
Bei FELD M setzen wir dbt intensiv in unseren Datentransformations-Workflows für Kundenprojekte ein. Wir nutzen es, um Roh- und Zwischendaten in klar strukturierte, analysefertige Datenmodelle zu überführen, die zuverlässig für Reporting- und nachgelagerte Analytics-Anwendungsfälle genutzt werden können. Dank der Unterstützung für Tests, Dokumentation und modulares Datenmodellieren hilft uns dbt Labs, vertrauenswürdige Datenplattformen für unsere Kunden bereitzustellen.
Bis vor kurzem erforderte die Verwendung von dbt mit Microsoft Fabric jedoch zusätzliche Einstellungen oder Kompromisse. Datenteams hatten in der Regel zwei Optionen.
Die erste bestand darin, dbt Core außerhalb von Fabric zu betreiben, häufig auf einer virtuellen Maschine, und zusätzlichen Aufwand für Scheduling, Monitoring, Credential-Management und den operativen Betrieb einzuplanen.
Die zweite Möglichkeit war der Einsatz von dbt Cloud. Diese Variante vereinfacht zwar die Orchestrierung, bringt jedoch zusätzliche Lizenzkosten mit sich und ergänzt die Architektur um einen weiteren externen Dienst.
Diese Lücke führte dazu, dass dbt weniger nahtlos in das Gesamterlebnis von Microsoft Fabric integriert war. Mit der Einführung nativer dbt-Jobs in Fabric adressiert Microsoft diese Einschränkung nun direkt: Ausführung, Planung und Monitoring von dbt rücken näher an die Datenplattform selbst heran und Fabric orientiert sich damit stärker an der Arbeitsweise moderner Analytics-Teams.
Ein dbt-Job ist ein Workspace-Element, das im Rahmen von Lizenzen für Microsoft Fabric verfügbar ist und sich derzeit in der Public Preview befindet.
Um einen dbt-Job zu erstellen, muss der Fabric-Tenant-Administrator diese Funktion zunächst in den Tenant-Einstellungen aktivieren.
Nach der Aktivierung kann jede*r Benutzer*in mit der Contributor-Rolle einen dbt-Job erstellen, indem diese*r ihn aus dem Abschnitt "Prepare Data" auswählt, wenn ein neues Element in Fabric hinzugefügt wird.
dbt-Jobs können sich mit mehreren Adaptern verbinden, darunter Fabric Warehouse, Snowflake, PostgreSQL und Azure SQL Server. Nach der Auswahl eines Adapters sehen die Benutzer*innen eine Oberfläche, die dbt Cloud ähnelt und der bekannten dbt-Projektstruktur mit Modellen, Tests, Seeds, Snapshots und Makros folgt.
Übliche dbt-Befehle wie run, build, seed, compile, test und snapshot sind direkt über die Benutzeroberfläche verfügbar.
Darüber hinaus kann die Modellabfolge im Lineage View angezeigt werden, was einen klaren Einblick in die Abhängigkeiten im gesamten Projekt ermöglicht.
Das Element kann mit verschiedenen Zeitintervallen geplant werden und eignet sich damit für die automatisierte Ausführung.
Obwohl sich das Element planen lässt, ist die Bezeichnung „dbt-Job“ etwas irreführend. Funktional verhält es sich eher wie ein dbt-Projekt als ein klassischer Job. Treffender wäre die Verwendung des Begriffs im Sinne einer Aktivität innerhalb von Data Factory – eine Möglichkeit, die derzeit noch nicht verfügbar ist. Sobald eine solche Aktivität eingeführt wird, könnten Transformationen unmittelbar im Anschluss an die Datenintegration gestartet werden. Dadurch ließe sich die Zeitspanne zwischen der Aufnahme von Rohdaten und der Bereitstellung transformierter Modelle im Data Warehouse deutlich verkürzen.
Eine wichtige Einschränkung ist die derzeit fehlende Unterstützung für dbt-Pakete. Diese Pakete, etwa dbt_utils und dbt_elementary, helfen uns, die Datenqualität und das Monitoring deutlich zu verbessern, und sind fester Bestandteil unserer Arbeitsweise. Außerdem ermöglichen quellenspezifische Pakete wie ga4 Datenquellen anhand vordefinierter Schemas effizient zu modellieren.
dbt-Entwickler*innen sind es gewohnt, in VS Code zu arbeiten und Erweiterungen wie Power User for dbt zu verwenden, um schneller und komfortabler zu entwickeln – häufig mit ihren eigenen Datensätzen, die über Profildateien konfiguriert werden. Zwar lassen sich Fabric-Workspace-Elemente auch in VS Code öffnen, das Nutzungserlebnis ist aktuell jedoch noch recht holprig und bleibt hinter den Erwartungen erfahrener dbt-Anwender:innen zurück.
Trotz dieses frühen Entwicklungsstands sind wir überzeugt, dass sich dieses Feature zu einem zentralen Bestandteil moderner Datenarchitekturen entwickeln wird. Es verspricht eine engere Integration, schnellere Transformationen und eine insgesamt höhere Datenqualität über den gesamten Analytics-Stack hinweg.
Wenn Sie tiefer in das Thema dbt und moderne Datentransformationsverfahren einsteigen möchten, sollten Sie sich die folgenden Ressourcen ansehen: