Datumsdimensionen und Beziehungen

Intermediate Data Modeling in Power BI

Maarten Van den Broeck

Content Developer

Datums- und Zeitdimensionen

  • Datumsdimensionen bieten einen integrierten Kalender und reduzieren komplexe Datumslogik
    • z. B. Geschäftsjahr mit Kalenderjahr abgleichen
    • z. B. nach Quartal, Monat, Woche aufteilen
  • Zeitdimensionen behandeln Tageszeiten: Stunde, Minute, Sekunde
  • Zeitdimensionen sind viel seltener als Datumsdimensionen

Eine Datumsdimension in einem Sternschema

Intermediate Data Modeling in Power BI

Optionen zum Erstellen einer Datumsdimension

Methode Vorteile Nachteile
In Datenbank hosten Ideal, wenn du aus einem Warehouse ziehst! Erfordert eine Datenbank
Am einfachsten mit mehreren Services zu teilen, Updates sind leicht
Daten in Datei speichern Keine DB nötig, einmalig erstellen Datei muss erstellt werden
Power BI hat gute Unterstützung für Textdateien Aktualisieren nicht so einfach wie in DB
Mit DAX erstellen Mehr Anpassungen möglich als bei den ersten beiden Optionen Eigener Code nötig
Keine externe Vorarbeit nötig Manche Funktionen hier schwieriger umzusetzen
Intermediate Data Modeling in Power BI

Einfache Datumsdimension mit DAX erstellen

Month_Year = 



CALENDAR(DATE(1950, 1, 1), TODAY()),

  • CALENDAR() ist eine eingebaute Funktion, die alle Daten in einem Bereich zurückgibt
Intermediate Data Modeling in Power BI

Einfache Datumsdimension mit DAX erstellen

Month_Year = 



CALENDAR(DATE(1950, 1, 1), TODAY()),

  • CALENDAR() ist eine eingebaute Funktion, die alle Daten in einem Bereich zurückgibt
  • Erstellt das Feld [Date] mit jedem Datum zwischen 1950-01-01 und heute $$ $$ $$
[Date]
1950-01-01
1950-01-02
...
2021-06-30
Intermediate Data Modeling in Power BI

Einfache Datumsdimension mit DAX erstellen

Month_Year = 


SELECTCOLUMNS(
CALENDAR(DATE(1950, 1, 1), TODAY()),
"Month", MONTH([Date]), "Year", YEAR([Date]) )
  • CALENDAR() ist eine eingebaute Funktion, die alle Daten in einem Bereich zurückgibt
  • Erstellt das Feld [Date] mit jedem Datum zwischen 1950-01-01 und heute
  • Wähle die Spalten aus, die du hinzufügen willst $$ $$
Month Year
01 1950
01 1950
... ...
06 2021
Intermediate Data Modeling in Power BI

Einfache Datumsdimension mit DAX erstellen

Month_Year = 

DISTINCT(
SELECTCOLUMNS(
CALENDAR(DATE(1950, 1, 1), TODAY()),
"Month", MONTH([Date]), "Year", YEAR([Date]) )
)
  • CALENDAR() ist eine eingebaute Funktion, die alle Daten in einem Bereich zurückgibt
  • Erstellt das Feld [Date] mit jedem Datum zwischen 1950-01-01 und heute
  • Wähle die Spalten aus, die du hinzufügen willst
  • Behalte nur eindeutige Zeilen
Month Year
01 1950
02 1950
... ...
06 2021
Intermediate Data Modeling in Power BI

Beziehungen definieren

  • Beziehungen verknüpfen Tabellen in Power BI
    • Übertragen Filter über Tabellen hinweg
    • Ermöglichen bereichsübergreifende Berechnungen
  • Beziehungen verwalten
    • Automatisch anhand von Spaltennamen erkennen
    • Manuell anpassen

ein Datenmodell mit Beziehungen

Intermediate Data Modeling in Power BI

Beziehungsschlüssel

  • Beziehungen basieren auf Schlüsseln

    • Eine oder mehrere Spalten, die Eindeutigkeit einer Zeile garantieren
  • Zwei Schlüsselarten:

    • Natürlicher Schlüssel: bestehende Spalte (z. B. E-Mail)
    • Surrogatschlüssel: künstliche Spalte (z. B. ID)
  • Power BI erfordert Beziehungen mit einer einzigen Spalte

Intermediate Data Modeling in Power BI

Beziehungsschlüssel

  • Beziehungen basieren auf Schlüsseln

    • Eine oder mehrere Spalten, die Eindeutigkeit einer Zeile garantieren
  • Zwei Schlüsselarten:

    • Natürlicher Schlüssel: bestehende Spalte (z. B. E-Mail)
    • Surrogatschlüssel: künstliche Spalte (z. B. ID)
  • Power BI erfordert Beziehungen mit einer einzigen Spalte

  • Zusammengesetzter Schlüssel: Schlüssel aus mindestens zwei Spalten
First Name Last Name Birth year Value
Chris P Bacon 1996 599
Jane Bonds 1998 523
Dwayne Pipe 1988 -566

$$

Composite Key Value
Chris P-Bacon-1996 599
Jane-Bondts-1998 523
Dwayne-Pipe-1988 -566
Intermediate Data Modeling in Power BI

Kardinalität

  • Misst die Beziehung zwischen Zeilen zweier Tabellen
  • Many-to-one/One-to-many: am häufigsten
    • Verknüpft eine Zeile aus der Dimension mit einer oder mehreren Zeilen in der Faktentabelle

$$

eins-zu-viele Beziehung

viele-zu-eins Beziehung

Intermediate Data Modeling in Power BI

Kardinalität

  • Weniger verbreitet:

    • Eins-zu-eins eins-zu-eins Beziehung $$

    • Viele-zu-viele viele-zu-viele Beziehung

Intermediate Data Modeling in Power BI

Lass uns üben!

Intermediate Data Modeling in Power BI

Preparing Video For Download...