Sprawdź najnowszy, #40. odcinek mojego podcastu „Dane Są Wszędzie”.
Tym razem Gościnią była Dominika Grajewska. Rozmawialiśmy m. in. o polskich modelach językowych z rodziny PLLuM.
Zapraszam serdecznie do sprawdzenia!
👉🏻 YouTube  👉🏻 Spotify  👉🏻 Apple Podcasts

Narzędzia zewnętrzne do Power BI

Power BI kojarzy się głównie z wizualizacją, ale w większych organizacjach równie często pełni rolę warstwy serwującej dane, a robi to poprzez modele semantyczne. (O modelu semantycznym pisałem np. tutaj i kilkukrotnie w ramach Newslettera). Schemat wygląda zwykle tak: zespół IT buduje hurtownię danych albo lakehouse, na tym źródle powstaje model semantyczny, a analitycy biznesowi podłączają się do gotowego modelu i tworzą na nim własne raporty.

Pracuję głównie po stronie backendu rozwiązań BI i przy takim podziale ról sama aplikacja Power BI Desktop szybko przestaje wystarczać. Model trzeba porównywać między środowiskami, wdrażać zmiany, sprawdzać jego rozmiar, testować reguły bezpieczeństwa czy szukać obiektów, z których nikt nie korzysta. Tego w Desktopie po prostu nie zrobimy.

Tutaj z pomocą przychodzą narzędzia zewnętrzne do pracy z Power BI. Większość z nich działa nie tylko z Power BI, ale też z SQL Server Analysis Services i Azure Analysis Services, więc przydadzą się również tym, którzy pracują jeszcze na rozwiązaniach on-premise. Poniżej przegląd tych, które moim zdaniem warto znać.

DAX Studio

To darmowe narzędzie, rozwijane m.in. przez zespół SQLBI. Łączy się zarówno z modelami tworzonymi lokalnie w Power BI Desktop, jak i z tymi opublikowanymi w usłudze Power BI Service (przez XMLA endpoint).

Co można w nim zrobić:

  • generować zapytania DAX. Query builder pozwala wybierać obiekty metodą przeciągnij i upuść, a gotowe zapytania można potem wykorzystać w innych rozwiązaniach,
  • testować miary bez zmieniania modelu. Miary tworzone w DAX Studio zostają tylko w aplikacji i nie trafiają do modelu,
  • testować Row Level Security. Można się podłączyć jako inny użytkownik, co bardzo pomaga, gdy ktoś z biznesu zgłasza, że widzi nie te dane, co trzeba (lub że nie widzi czegoś, co powinien widzieć 😉 ),
  • eksportować dane z modelu do Excela lub pliku CSV, na przykład żeby pokazać użytkownikom, na jakich danych źródłowych liczy się dana miara,
  • analizować rozmiar modelu i przeglądać jego metadane.

To ostatnie ma duże znaczenie praktyczne. Zdarza się, że administrator tenanta mówi, że model jest za duży i zużywa za dużo zasobów, albo że nie mieścimy się w limitach licencji. Wtedy DAX Studio jest punktem wyjścia do optymalizacji rozmiaru modelu semantycznego. Istotne jest też zrozumienie metadanych modelu semantycznego, możesz zerknąć na mój artykuł tutaj.

ALM Toolkit

Z tego narzędzia często korzystałem w fazach proof of concept, gdy rozwiązanie jest jeszcze w budowie, nie ma pipeline’u wdrożeniowego ani strategii pracy z repozytorium kodu, a zmiany trzeba szybko wgrać i testować.

ALM Toolkit działa na poziomie metadanych modelu semantycznego. Pozwala porównać wersję lokalną z tą, która jest w Power BI Service, i wdrożyć różnice. Przydaje się, gdy zrobił się bałagan i nie wiadomo już, co gdzie jest. Trzeba pamiętać, że narzędzie nie pokaże zmian w samych raportach, tylko w modelu. Ponieważ model często serwuje dane wielu raportom i wielu zespołom, w praktyce to zwykle wystarcza.

Tabular Editor

Wersja 2 jest darmowa i moim zdaniem daje bardzo dużo. Można w niej pracować na plikach lokalnych albo bezpośrednio na modelu w Power BI Service. Tu jedno zastrzeżenie: wszystko zależy od dojrzałości procesu developmentu. Przy małym rozwiązaniu, które budujecie sami, zmiany na środowisku developerskim są w porządku. Jeśli natomiast korzystacie z repozytorium i pipeline’ów wdrażających zmiany na kolejne środowiska, trzeba uważać.

Najczęściej używam go do:

  • zmian opisów obiektów i wgrywania definicji miar,
  • podglądu definicji miar, widocznych i ukrytych obiektów oraz transformacji z Power Query,
  • uruchamiania skryptów w C#. W jednym z projektów zbudowaliśmy w ten sposób prosty framework testowy, który sprawdzał, czy wszystkie miary w modelu się kompilują i zwracają oczekiwane wartości. Skrypty C# świetnie nadają się też do żmudnych, powtarzalnych zmian, jak masowa podmiana nazw, gdzie o pomyłkę łatwo ze zmęczenia. Skrypt można też wygenerować z pomocą modelu językowego,
  • definiowania zestawu dobrych praktyk, na przykład że nazwy tabel zaczynają się wielką literą albo że w modelu nie ma relacji wiele do wielu. Narzędzie pokaże wtedy, gdzie te reguły są łamane.

Istnieje też płatny Tabular Editor 3 z bardziej zaawansowanymi funkcjami, między innymi głębszym debugowaniem miar DAX. Jest 30-dniowy trial, więc można sprawdzić, czy się przyda, zwłaszcza przy dużych modelach.

Measure Killer

Narzędzie ma wersję darmową i płatną. Już darmowa pomaga w optymalizacji modeli pod kątem raportów: pokazuje, czy wszystkie dane w modelu są faktycznie używane. To ważne, bo zakres danych bywa tematem długich dyskusji z użytkownikami biznesowymi, a modele często zawierają sporo rzeczy, z których nikt nie korzysta. Measure Killer potrafi też wygenerować kod, który usuwa znalezione problemy.

Sprawdza się najlepiej tam, gdzie jest jeden raport i jeden model. W dużych organizacjach jeden model obsługuje zwykle wiele raportów, więc analiza jest trudniejsza.

Bravo

Kolejne darmowe narzędzie od SQLBI. Również pomaga optymalizować model pod kątem tego, jak dane są używane. Optymalizacja rozmiaru modeli jest dla mnie jedną z bardziej satysfakcjonujących prac, bo daje wymierne oszczędności. Modele semantyczne leżą na pojemności (dawniej Premium Capacity, obecnie Microsoft stopniowo przenosi klientów na Fabric Capacity), którą się kupuje i którą trzeba rozsądnie zarządzać. Jeśli mamy dużo ciężkich modeli, z których część waży dużo bez powodu, musimy kupować coraz wyższy poziom. Po optymalizacji można zejść niżej, co widać w budżecie i łatwo pokazać przełożonemu albo klientowi.

To samo dotyczy mniejszych rozwiązań. Na licencji Pro obowiązuje limit rozmiaru modelu (około 1 GB), więc gdy model się do niego zbliża, warto sięgnąć po opisane tu narzędzia.

SQL Server Management Studio (SSMS)

Wiele osób zna SSMS jako klienta baz SQL Server, ale może on także łączyć się z Analysis Services. Silnik pod spodem jest w praktyce ten sam w SQL Server Analysis Services, Azure Analysis Services i modelach semantycznych Power BI.

Przez SSMS można:

  • wysyłać zapytania DAX/ MDX do modelu,
  • odświeżyć tylko wybraną tabelę zamiast całego modelu, co się przydaje, gdy pełne odświeżenie trwa długo,
  • podejrzeć metadane, na przykład datę ostatniego odświeżenia czy rozmiar modelu.

Połączenie idzie przez XMLA endpoint. Każdy obszar roboczy w Power BI Service ma swój unikatowy adres, a po połączeniu widać modele semantyczne z tego obszaru.

VertiPaq Analyzer

To kolejne darmowe rozwiązanie od SQLBI: skoroszyt Excela z makrami, do którego wczytuje się dane wyeksportowane na przykład z DAX Studio. Metadane modelu można wtedy analizować w tabelach przestawnych, które większość użytkowników dobrze zna. To dobry początek pracy nad optymalizacją większych rozwiązań.

Excel

Do modelu semantycznego można podłączyć się zwykłym Excelem. Użytkownicy biznesowi bardzo to lubią, bo mogą robić analizy ad hoc na tabelach przestawnych, w interfejsie, który znają od lat. Działa to też z Azure Analysis Services i SQL Server Analysis Services. Dla adopcji BI w organizacji to duży plus i dobry argument przy przekonywaniu kogoś do Power BI.

Jest jedno zastrzeżenie. Excel komunikuje się z modelem przez MDX, a miary w Power BI piszemy w DAX-ie, więc w niektórych szczególnych scenariuszach tabela przestawna może zachować się inaczej, niż byśmy oczekiwali.

PowerShell

Dla osób myślących bardziej programistycznie: PowerShell pozwala automatyzować odświeżanie modeli czy wgrywanie zmian. Tabular Editor ma też interfejs wiersza poleceń (cli), więc w pipeline można zbudować skrypty, które same wdrażają modele na wybrane środowiska. To już zaawansowany temat i wrócę do niego osobno.

Które narzędzia zewnętrzne do Power BI polecam?

To oczywiście zależy od wielkości rozwiązania, z którym pracujesz, a także tego na ile zarządzasz budową modelu semantycznego Power BI. Zestaw startowy, od którego możesz zacząć od DAX Studio, dzięki czemu usprawnisz swoją pracę związaną z modelami. Zachęcam też do sprawdzenia artykułu tutaj, odnośnie działania z DAX Studio właśnie.

Na co dzień korzystam też z Tabular Editora, a wersja darmowa, tj. 2, pozwala już bardzo zoptymalizować Twoją pracę z developmentem w obszarze modeli semantycznych. Możemy zautomatyzować powtarzalną pracę czy też w prosty sposób zmieniać ustawienia w modelu semantycznym. Do automatyzacji mogą posłużyć też skrypty C#, które dość prosto jesteśmy sobie w stanie budować w oparciu o LLMy.

Jeżeli potrzebujesz narzędzia do szybkiego wdrażania zmian w obszarze metadanych, bez konieczności odświeżania modelu semantycznego Power BI, to zachęcam do skorzystania z ALM Toolkit. Bardzo doceniam jego możliwości, zwłaszcza w fazie poć projektu, gdzie badamy możliwości i często zmieniamy definicję obiektów obecnych w modelu semantycznym np. miar.

Chcesz wiedzieć więcej o narzędziach zewnętrznych do Power BI?

Ten zestaw obejmuje podstawowe narzędzia, które warto znać, budując rozwiązania BI oparte o Power BI, zarówno te małe, jak i duże. Większość z nich jest darmowa, więc nic nie stoi na przeszkodzie, żeby je wypróbować na własnym modelu.

Szkolenie narzędzia zewnętrzne Power BI w ramach Dane Są Wszędzie

Jeśli chcesz zobaczyć, jak to wygląda w praktyce, na prawdziwych przykładach, w sklepie Dane Są Wszędzie znajdziesz szkolenie poświęcone narzędziom zewnętrznym do Power BI. Wszystkie szczegóły znajdziesz tutaj.

Poniżej opinia dotyczących szkolenia:

Uczestnik szkolenia z narzędzi zewnętrzych Power BI

Ja tam bardzo lubie sposób przekazywania wiedzy, nie powtarzasz podstaw i czuję ze traktujesz nas jak ludzi umiejących myśleć krytycznie i samodzielnie. Dziękuję

W ramach mojego podcastu „Dane Są Wszędzie” również opowiadam o narzędziach zewnętrznych do pracy z Power BI.

Zachęcam do sprawdzenia 🙂

Odcinek podcastu znajdziesz też na YouTube:

A jak wygląda Twoja praca z tymi narzędziami? Daj znać w komentarzu albo napisz na kontakt@daneswszedzie.pl 

Dane są wszędzie, wiesz?

Zapisz się, jeśli interesujesz się Power BI'em i danymi. Co jakiś czas odezwę się z ciekawymi materiałami.

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Wymagane pola są oznaczone *