Szerepjátszó dimenziók a Power BI-ban
Kővári Attila
2019. május 20.
Szerepjátszó dimenzióknak nevezzük azokat a dimenziókat (táblákat) amelyek ugyanazzal az adattartalommal más-más szerepet töltenek be egy adatmodellben.
Tipikus példa szerepjátszó dimenzióra a dátum dimenzió: Ugyanaz a dátum tábla szerepelhet az adatmodellben, mint teljesítés dátuma, számlázás dátuma, szállítás dátuma, stb. Ezek a táblák a nevükön kívül mindenben azonosak.
A szerepjátszó dimenziók arra lettek kitalálva, hogy csak egyszer kelljen tárolni a dimenziót - esetünkben a dátum táblát - és minden más szerepét a táblának, csak virtuálisan kelljen létrehozni, ne kelljen többször is letárolni az adatbázisban. Na ez utóbbi az, amit a Power BI nem tud.
Milyen alternatíváink vannak szerepjátszó dimenziók létrehozására POwer BI-ban?
- Beimportáljuk újra a dátum táblát más néven
- Calculated táblát hozunk létre a Dátum tábla alapján:
Calculated Table (Számított táblázat) létrehozása Power BI-ban
Bár a neve alapján azt gondolhatnánk, hogy a Calculated Table nem kerül letárolásra, de ez nem igaz. A Calculated Table pont úgy tárolódik, mint egy kutya közönséges tábla. Annyiban különbözik csak a közönséges tábláktól, hogy a Calculated tábla forrása egy Power BI tábla, nem a forrásrendszer valamely táblája.
Miért baj, hogy letárolódik? A dátum tábla esetén nem baj. Egy párezer soros tábla többszöri tárolásának nincs nagy költsége. De képzeljen egy olyan adatbázist, ahol hívásokat elemzünk és ugyanaz az ügyfél lehet a hívó és a hívott oldalon is. Kétszer letárolni egy többmillió soros ügyféltörzset csak azért, mert több szerepe lehet ugyanannak az ügyfélnek már lehet fájó.
Összefoglalva: A Power BI-ban nincsenek a klasszikus értelemben vett szerepjátszó dimenziók. Ha ugyanaz a tábla több szerepben is meg kell hogy jelenjen az adatmodellben, akkor azokat többször is le kell tárolnunk.
Kővári Attila - BI projekt
Már készül a következő cikk. Kérjen értesítést a megjelenéséről itt.
Új hozzászólás