Je größer ein Unternehmen wird, desto mehr Daten stehen zur Verfügung, und immer mehr Benutzer wollen diese Daten nutzen. In einer herkömmlichen data warehouse (DWH)-Umgebung bietet das DWH in der Regel eine Verbrauchsschicht, die aus verschiedenen Information Marts besteht, die dann in mehrere Business Intelligence (BI)-Tools geladen werden. Dort transformieren und aggregieren die Geschäftsanwender die Daten, um KPIs zu berechnen und schließlich Geschäftsentscheidungen zu treffen.
Dies ist jedoch leichter gesagt als getan. Um aus den Daten KPIs ableiten zu können, müssen die Geschäftsanwender ein gemeinsames Verständnis für die vom DWH bereitgestellten Daten haben. Die Informationen zum Verständnis der Daten sind in der Regel schwer zu finden und nicht an einem einzigen Ort zugänglich.
Letztlich kann dies dazu führen, dass mehrere Abteilungen dieselben Daten unterschiedlich verstehen und dieselbe Kennzahl unterschiedlich interpretieren. Nun ist es sehr wahrscheinlich, dass im schlimmsten Fall das Vertrauen in Ihre Daten schwindet. Genau hier kann eine einheitliche semantische Schicht helfen!
Komponenten der dbt-Semantikschicht
Der dbt Semantic Layer vereinfacht die Definition und Verwendung von wichtigen Geschäftsmetriken in Ihrem dbt-Projekt. Metrikdefinitionen werden zentralisiert, um eine konsistente Self-Service-Nutzung für alle Datenteams zu ermöglichen.
Durch die Verlagerung von Metrikdefinitionen aus der BI-Schicht in die Modellierungsschicht können Geschäftsanwender aus verschiedenen Einheiten sicher sein, dass sie dieselbe Metrikdefinition verwenden, unabhängig davon, welches Tool sie nutzen. Sollte sich eine Metrikdefinition im Laufe der Zeit ändern, werden die Änderungen überall angewendet, wo sie verwendet wird, so dass die Konsistenz gewährleistet ist.
Um eine einheitliche semantische Schicht in Ihrem dbt-Projekt zu erstellen, sind folgende Schritte erforderlich:
- Entwurf eines semantischen Modells
- Um ein semantisches Modell zu implementieren, muss zunächst ein Modell entworfen werden. Dies sollte im Rahmen einer Zusammenarbeit zwischen den technischen und geschäftlichen Teams geschehen, um die zentralen Geschäftskonzepte und ihre Beziehungen zueinander zu ermitteln.
- Erstellen Sie dbt-Modelle, die Ihrem semantischen Modell entsprechen
- Jedes Objekt Ihres semantischen Modells sollte 1:1 in ein dbt-Modell umgewandelt werden. Achten Sie bei der Erstellung darauf, dass die Spaltennamen mit den Benennungsstandards übereinstimmen und die Ladelogik korrekt entwickelt wird.
- Erstellen Sie neue .yml-Dateien im Metrics-Ordner
- Alles, was mit dem dbt Semantic Layer zu tun hat, muss in einem neuen Ordner namens "metrics" abgelegt werden. In diesem Ordner werden .yml-Dateien verwendet, um Ihre semantischen Modelle zu definieren und zu konfigurieren. Wir empfehlen, eine .yml-Datei pro semantischem Modell zu erstellen.
- Definieren Sie Entitäten
- Im Gegensatz zum Namen beschreiben die Entitäten im semantischen Modell grob die Spalten der semantischen Modelle. Entitäten können von vier verschiedenen Typen sein: Primär, Eindeutig, Fremd oder Natürlich. Jedes Modell muss eine primäre Entität haben, und eine Entität kann nur eine Spalte oder ein SQL-Ausdruck sein, der eine Spalte transformiert.
- Dimensionen definieren
- Eine Dimension in der dbt-Semantikschicht kann als unterschiedliche Betrachtungsweise Ihres Modells gesehen werden, d.h. als Gruppierung der Daten nach einem bestimmten Attribut. Jede Dimension muss an eine primäre Entität gebunden sein, die für die Gruppierung verwendet wird. Ein gutes Beispiel ist eine Datumsspalte, mit der Sie Ihre Daten nach Tag, Monat oder Jahr gruppieren können.
- Maßnahmen definieren
- Measures stellen Aggregationen dar, die auf bestimmte Spalten in Ihrem Datenmodell angewendet werden. Kennzahlen können in anderen Kennzahlen verwendet werden, um komplexere Kennzahlen zu berechnen, und sie können mit verschiedenen Parametern definiert werden, die bei der Erstellung von ausführbarem SQL-Code für die Berechnung helfen.
- Measures stellen Aggregationen dar, die auf bestimmte Spalten in Ihrem Datenmodell angewendet werden. Kennzahlen können in anderen Kennzahlen verwendet werden, um komplexere Kennzahlen zu berechnen, und sie können mit verschiedenen Parametern definiert werden, die bei der Erstellung von ausführbarem SQL-Code für die Berechnung helfen.
- Metriken definieren
- Metriken stellen die Sprache der Geschäftsanwender dar. Es gibt verschiedene Arten von Metriken, die unterschiedliche Arten von Berechnungen darstellen. Einige Beispiele sind Umrechnungsmetriken, kumulative Metriken, abgeleitete Metriken und Verhältnismetriken. Sie basieren immer auf Kennzahlen und bilden den letzten Baustein der semantischen Schicht.
So spiegelt sich die semantische Ebene in Ihrer dbt-Abstammung wider:
Nutzung der dbt-Semantikschicht
Sobald Ihr dbt-Projekt eine semantische Schicht definiert hat, kann es für Datenkonsumenten geöffnet werden. Der dbt Semantic Layer ermöglicht es verschiedenen BI-Tools, sich direkt mit Ihrem dbt Cloud-Projekt zu verbinden und Metriken, Kennzahlen und Filter direkt in das Tool Ihrer Wahl zu integrieren.
Die folgenden Tools werden bereits von Haus aus unterstützt:
- Tableau
- Google Sheets
- Microsoft Excel
- Hex
- Klipfolio PowerMetrics
- Lightdash
- Modus
- Push.ai
- Steil
Andere Tools können mit benutzerdefinierten Integrationen integriert werden, sofern sie generische JDBC-Verbindungen unterstützen und mit Arrow Flight SQL kompatibel sind.
Wichtigste Erkenntnisse
Der dbt Semantic Layer kann helfen, das Vertrauen in Ihr data warehouse wiederherzustellen. Indem die Berechnungen von den Fachanwendern zurück in das Datenmodell verlagert werden, wird eine gemeinsame Definition von Geschäfts-KPIs geschaffen.
Obwohl die Implementierung einer semantischen Schicht einige zusätzliche Einstellungen erfordert, kann sie den aus Ihren Daten generierten Wert erheblich verbessern. Die Integration in die BI-Tools Ihrer Geschäftsanwender vereinfacht sogar die Art und Weise, wie Ihre Daten genutzt werden.
Wenn Sie mehr über den dbt Semantic Layer wissen wollen und erfahren möchten, wie er in ein Data Vault 2.0-gestütztes Data Warehouse passt, sollten Sie sich an unserem nächstes Webinar am 13. August!
- Tim Kirschke (Scalefree)
Updates und Support erhalten
Bitte senden Sie Anfragen und Funktionswünsche an [email protected].
Für Anfragen zu Data Vault-Schulungen und Schulungen vor Ort wenden Sie sich bitte an [email protected] oder registrieren Sie sich unter www.scalefree.com.
Zur Unterstützung bei der Erstellung von Visual Data Vault-Zeichnungen in Microsoft Visio wurde eine Schablone entwickelt, mit der Data Vault-Modelle gezeichnet werden können. Die Schablone ist erhältlich bei www.visualdatavault.com.