Kapcsolatok és a számosság használata

Befejeződött

Más adatbázis-kezelő rendszerekről eltérően a Power BI-kapcsolatok iránnyal is rendelkeznek. Ez az irány fontos szerepet játszik az adatok több tábla közötti szűrésében. Az adatbetöltés során a Power BI automatikusan megkeresi a meglévő kapcsolatokat az adatokban az egyező oszlopnevek alapján. Ezeket a beállításokat manuálisan is szerkesztheti a Kapcsolatok kezelése lehetőséggel.

Például számos táblát lekért a Sales adatbázisból, és az alábbi képen egy példa látható a szemantikai modellre. A Power BI automatikusan észlelt számos kapcsolatot, azonban Ön nem tudja megállapítani, mit jelentenek. Meg szeretne győződni arról, hogy a kapcsolatok pontosan megfelelnek az adatokban találhatóknak.

Képernyőkép a szemantikai példamodellről

Kapcsolatok

Az alábbiakban különböző típusú kapcsolatokat talál a Power BI-ban.

Több-az-egyhez (*:1) vagy egy-a-többhöz (1: *) kapcsolat

  • Olyan kapcsolatot ismertet, amelyben egy érték számos olyan példánya található meg egy oszlopban, amelyek csak egy megfelelő példányhoz kapcsolódnak egy másik oszlopban.

  • A tény- és dimenziótáblák közötti irányt ismerteti.

  • Ez a leggyakoribb iránytípus, amely a Power BI alapértelmezett beállítása is, amikor automatikusan hoz létre kapcsolatokat.

Egy egy-a-többhöz kapcsolatra példa a CountryName és a Territory tábla közötti kapcsolat, amelyben több olyan terület is található, amelyek egy egyedi országhoz kapcsolódnak.

Képernyőkép a több az egyhez kapcsolatról.

Egy-az-egyhez (1:1) kapcsolat:

  • Olyan kapcsolatot ismertet, amelyben egy értéknek csak egy példánya közös két táblázatban.

  • Ehhez egyedi értékekre van szükség mindkét táblázatban.

  • Ez nem ajánlott, mert ez a kapcsolat felesleges adatokat tárol, és azt sugallja, hogy a modell nem megfelelően van megtervezve. Ajánlott inkább egyesíteni a táblákat.

Egy egy-az-egyhez típusú kapcsolatra jó példa, amikor két eltérő táblázatban termékeket és termékazonosítókat tárol. Egy egy-az-egyhez típusú kapcsolat létrehozása felesleges, a két táblázatot pedig célszerű összevonni.

Képernyőkép az egy-az-egyhez kapcsolatról.

Több-a-többhöz (.) kapcsolat:

  • Olyan kapcsolatot ismertet, amelyben számos érték közös két tábla között.

  • Ehhez nem kellenek egyedi értékek egyik táblázat kapcsolataiban sem.

  • Nem ajánlott, ugyanis az egyedi értékek hiánya bizonytalansághoz vezet, a felhasználók pedig nem tudhatják, mely értékoszlop mire utal.

Az alábbi ábrán például egy több-a-többhöz típusú kapcsolat látható a Sales és az Order (Megrendelés) táblák között az OrderDate oszlopban, mivel több értékesítéshez több megrendelés tartozhat. Az ábra nem egyértelmű, mert mindkét tábla rendelkezhet ugyanazzal a megrendelési dátummal.

Képernyőkép a több-a-többhöz kapcsolatról.

Keresztszűrés iránya

Az adatok a kapcsolatok egy vagy mindkét oldalán szűrhetők.

Egyoldalú keresztszűrési irány:

  • Az adatszűréshez csak egy kapcsolat egyik táblája használható. Az 1. táblázat például szűrhető a 2. táblázattal, a 2. táblázat azonban nem szűrhető az 1. táblázattal.

    Tipp

    Ha meg szeretné tudni, milyen irányba halad a szűrés, kövesse a kapcsolati nyíl irányát a táblázatok között. Általában célszerű a nyilakat a ténytábla felé irányítani.

  • Egy-a-többhöz vagy több-az-egyhez kapcsolat esetén a keresztszűrés iránya az "egy" oldalról származik, ami azt jelenti, hogy a szűrés a sok értéket tartalmazó táblában fog történni.

Kétoldalú keresztszűrési irány vagy kétirányú keresztszűrés:

  • Egy kapcsolat egyik táblázatával szűrhető a másik. Egy dimenziótábla például szűrhető egy ténytáblával, a ténytáblák pedig szűrhetők a dimenziótáblával.

  • Több-a-többhöz típusú kapcsolatoknál kétirányú keresztszűrés esetén előfordulhat, hogy alacsonyabb a teljesítmény.

Figyelmeztetés a kétirányú keresztszűréssel kapcsolatban: Ne engedélyezze a kétirányú keresztszűréses kapcsolatokat, ha nincs teljes mértékben tisztában ennek következményeivel. Az engedélyezéssel kétértelműséget, túlzott mintavételezést, váratlan eredményeket és potenciális teljesítménycsökkenést vezethet be.

A számosság és a keresztszűrés iránya

Egy-az-egyhez kapcsolatok esetében az egyetlen elérhető lehetőség a kétirányú keresztszűrés. Az adatok a kapcsolat bármelyik oldalán szűrhetők, és egy egyértelmű értéket eredményeznek. Szűrhet például egy termékazonosító szerint, amellyel egyetlen terméket kap, vagy szűrhet egy termék szerint, amellyel egyetlen termékazonosítót kap.

Több-a-többhöz kapcsolatok esetén szűrhet egyetlen vagy mindkét irányba a kétirányú keresztszűréssel. A kétirányú keresztszűrés nem egyértelmű, több-a-többhöz típusú kapcsolatoknál pedig még kevésbé, mivel több útvonal is létezik a különböző táblázatok között. Ha létrehoz egy mértéket, számítást vagy szűrőt, nem szándékos következmények léphetnek fel az adatszűréskor, így – attól függően, hogy a Power BI-motor melyik kapcsolatot választja a szűréshez – eltérő lehet a végeredmény. Ez igaz a kétirányú kapcsolatokra is, így ezekkel is figyelmesnek kell lennie.

A több-a-többhöz típusú és/vagy a kétirányú kapcsolatok emiatt bonyolultak. Hacsak nem biztos benne, hogy hogyan néznek ki az adatai összesítve, az ilyen típusú, több szűrési iránnyal rendelkező nyílt kapcsolatok több útvonalat eredményezhetnek az adatokban.

Több-a-többhöz típusú kapcsolatok létrehozása

Tegyük fel, hogy egy olyan vizualizációt kell készítenie, amely ügyfelek és fiókok költségvetését vizsgálja. Egy fiókhoz több ügyfél tartozhat, egy ügyfél pedig több fiókkal is rendelkezhet, így több-a-többhöz kapcsolatot kell létrehoznia.

Képernyőkép a több-a-többhöz kapcsolatról.

A kapcsolat létrehozásához nyissa meg a Kapcsolatok kezelése>Új lehetőséget. A megnyíló ablakban hozzon létre egy kapcsolatot a CustomerTable és az AccountTable Customer ID (Ügyfélazonosító) oszlopa között. A kapcsolat több-a-többhöz értékre van állítva, és a szűrőtípus mindkét irányban van. Azonnal figyelmeztetést fog kapni, mely szerint ezt a kapcsolatot csak akkor szükséges használnia, ha várhatóan egyik oszlop sem fog egyedi értékekkel rendelkezni, mert váratlan értékeket kaphat. Mivel mindkét irányban szűrni szeretne, válassza a kétirányú keresztszűrést.

Válassza az OK lehetőséget. Sikeresen létrehozott egy több-a-többhöz kapcsolatot.

Képernyőkép a több-a-többhöz kapcsolatról a Kapcsolat kezelése területen.

További információ: Több-a-többhöz kapcsolatok a Power BI-ban.