Mamy zaimportowane dane, teraz byłoby warto je w jakiś sposób ze sobą połączyć. Dlatego dzisiaj zajmiemy się tworzeniem i konfiguracją relacji między nimi.
Od razu na samym początku chciałbym Ci tylko powiedzieć, że to o czym tutaj będziemy rozmawiać to nawet nie jest czubek góry lodowej. Na temat tylko samej teorii związanej z tworzeniem modeli danych napisano setki tysięcy stron i moglibyśmy siedzieć i dywagować na ten temat już nawet nie godzinami i dniami a tygodniami.
Tutaj poruszam czysto techniczny aspekt relacji w Power BI a jeżeli temat Cię zainteresuje i będziesz chciał dowiedzieć się więcej to polecam lekturę – The Data Warehouse Toolkit: The Definitive Guide to Dimensional Modeling
Zaczynamy!
Co to jest model danych?
W Power BI model danych oznacza sposób, w jaki dane są połączone, przetworzone i udostępnione w raportach i analizach. Czyli nasz zbiór tabel, relacji pomiędzy nimi oraz ewentualnie hierarchii tworzonych na potrzeby prezentacji danych w raportach.
Każda z zaimportowanych przez nas tabel jest częścią obrazka. Musimy je połączyć ze sobą, aby móc ten obraz zobaczyć w całości.
Sposobem na ich połączenie jest stworzenie relacji, czyli logicznego połączenia ze sobą danych z różnych źródeł.
Modelowanie danych w Power BI
Przejdźmy do zakładki Model w naszym raporcie. Zobaczysz coś takiego:

Widzisz tutaj wszystkie zaimportowane wcześniej tabele. I pewnie domyślasz się, że nie wszystkie są takie same. Każda z nich zawiera inne informacje i każda z nich spełnia inne zadanie.
Więc jak możemy je podzielić?
Tabele faktów i wymiarów w Power BI
W Power BI, tabele faktów i wymiarów są podstawowymi elementami tworzenia modelu danych. Tabela faktów jest tabelą, w której przechowywane są dane liczbowe (np. suma sprzedaży, liczba sprzedanych produktów itp.), które chcesz analizować. Tabela wymiarów zawiera natomiast dane opisowe, takie jak kategorie produktów, dane demograficzne klientów itp., które służą do kategoryzowania i filtrowania danych liczbowych z tabeli faktów.
Na tej podstawie już możemy stwierdzić, że tabela ’Transakcje’ z pewnością jest tabelą faktów i to właśnie od niej możemy zacząć dalszą budowę.
Przyjrzyjmy się kolejnym tabelom.
- ’Kontakty’ – tutaj mamy informacje szczegółowe o naszych klientach.
- ’Lokale’ – informacje szczegółowe o lokalach
- ’Transze’ – informacje o tym, kiedy powinny wpływać pieniądze
- ’Wpłaty’ – informacje o tym, kiedy pieniądze wpłynęły
- ’Spotkania’ – informacje o tym kiedy i z jakim klientem obyło się spotkanie
Gdy już zidentyfikowaliśmy te informacje możemy przystępować do łączeniach ich ze sobą.
Na filmie zobaczysz cały proces tworzenia połączeń, tutaj chciałbym napisać więcej o czymś innym.
Schemat gwiazdy
Schemat gwiazdy to jeden z popularniejszych sposobów modelowania danych w systemach baz danych relacyjnych. Jest to szczególnie przydatny w przypadku, gdy chcemy przechowywać dane z różnych źródeł, które są ze sobą powiązane.
Schemat gwiazdy składa się z centralnej tabeli, zwanej faktami, oraz kilku dodatkowych tabel, zwanych wymiarami. Każda z tych tabel zawiera dane opisujące jedną ze składowych danych przechowywanych w tabeli faktów. Na przykład, jeśli przechowujemy informacje o sprzedaży produktów, tabela faktów mogłaby zawierać informacje o ilości sprzedanych produktów, cenie oraz datach sprzedaży, natomiast tabele wymiarów mogłyby zawierać informacje o produktach, klientach oraz sklepach, w których dokonano sprzedaży.
Jedną z głównych zalet schematu gwiazdy jest to, że pozwala on na łatwe i szybkie tworzenie raportów i analiz danych. Ponieważ dane są rozdzielone między różne tabele, łatwiej jest je filtrować i grupować, co pozwala na szybkie generowanie raportów i analiz. Dodatkowo, schemat gwiazdy jest również bardziej elastyczny niż inne modele danych, takie jak schemat sieciowy czy schemat hiperkubiczny, ponieważ pozwala na dodawanie nowych tabel bez konieczności zmieniania struktury istniejących tabel.
Jednakże, pomimo swoich zalet, schemat gwiazdy ma również pewne ograniczenia. Przede wszystkim, może on być mniej efektywny pod względem wydajności niż inne modele danych, ponieważ wymaga on stosowania licznych połączeń między tabelami, co może prowadzić do spowolnienia zapytań. Dodatkowo, schemat gwiazdy jest często trudniejszy w implementacji niż inne modele danych, ponieważ wymaga on dokładnego określenia relacji między tabelami.
Co do zasady jednak w ogromnej większości przypadków będziesz mieć do czynienia i tworzyć właśnie tego typu schematy danych.
Aby skonfigurować filtrowanie krzyżowe w Power BI, należy połączyć tabele za pomocą relacji, a następnie skonfigurować filtry dla poszczególnych kolumn. Można to zrobić przez użycie opcji „Filtrowanie krzyżowe” w oknie „Relacje” lub „Filtrowanie” w oknie „Pola”.
Aby dowiedzieć się więcej na temat kardynalności i typów relacji zajrzyj do #22 – Typy relacji i kierunek filtrowania