Rejestrowanie diagnostyki zapytań w Power BI

Podczas tworzenia zapytania w Power Query podstawowym przepływem pracy jest nawiązanie połączenia ze źródłem danych, zastosowanie niektórych przekształceń, potencjalnie odświeżenie danych w edytorze Power Query, a następnie załadowanie go do modelu Power BI. Gdy dane są w modelu Power BI, możesz je odświeżyć od czasu do czasu w programie Power BI Desktop (jeśli używasz programu Desktop do wyświetlania analiz), oprócz wszystkich odświeżeń, które wykonujesz w usłudze.

Chociaż pod koniec procesu tworzenia, podczas odświeżania w edytorze lub odświeżania w samym Power BI można uzyskać podobny wynik, oprogramowanie przeprowadza bardzo różne oceny dla różnych środowisk użytkownika, które udostępnia. Ważne jest, aby wiedzieć, czego oczekiwać podczas wykonywania diagnostyki zapytań w tych różnych przepływach pracy, dzięki czemu nie jesteś zaskoczony różnymi danymi diagnostycznymi.

Aby uruchomić diagnostykę zapytań, przejdź do karty Narzędzia na wstążce edytora Power Query. Zostanie wyświetlonych kilka różnych opcji.

Zrzut ekranu przedstawiający wstążkę edytora Power Query.

Dostępne są dwie podstawowe opcje: Diagnozowanie krok po kroku i Rozpocznij diagnostykę (w połączeniu z Zatrzymaj diagnostykę). Pierwsza opcja udostępnia informacje dotyczące zapytania do wybranego kroku i jest najbardziej przydatna do zrozumienia, jakie operacje są wykonywane lokalnie lub zdalnie w zapytaniu. Ta ostatnia opcja zapewnia lepszy wgląd w różne inne przypadki omówione w poniższej sekcji.

Specyfika łącznika

Ten artykuł nie może obejmować wszystkich różnych permutacji dostępnych w diagnostyce zapytań. Wiele elementów może zmienić widoczne wyniki, w tym:

  • Connector
  • Zastosowane przekształcenia
  • System, na którym działasz
  • Konfiguracja sieci
  • Zaawansowane opcje konfiguracji
  • Konfiguracja ODBC

Aby zapewnić jak najszerszy zakres omówienia, artykuł skupia się na diagnostyce zapytań dla tabeli Northwind Customers, zarówno w SQL, jak i w OData. Informacje o OData korzystają z publicznego punktu końcowego znajdującego się na stronie OData.org, natomiast serwer SQL musisz zapewnić samodzielnie. Wiele źródeł danych różni się znacznie od tych źródeł. Z czasem Microsoft dodaje dokumentację specyficzną dla łącznika.

Uruchamianie i zatrzymywanie diagnostyki

Polecenia Uruchom diagnostykę i Zatrzymaj diagnostykę obejmują więcej scenariuszy niż Krok diagnozowania. Zawierają one również więcej informacji, które należy sortować. Na przykład uruchomienie diagnostyki, odświeżenie podglądu, a następnie zatrzymanie diagnostyki zapewnia równoważne informacje dotyczące uruchamiania kroku diagnozowania na każdym kroku. Ta równoważność istnieje ze względu na sposób działania Power Query w edytorze w celu niezależnego odświeżania każdego kroku.

Aby rozpocząć nagrywanie, wybierz pozycję Rozpocznij diagnostykę, wykonaj wybrane oceny (tworzenie, odświeżanie w wersji zapoznawczej, pełne odświeżanie), a następnie wybierz pozycję Zatrzymaj diagnostykę.

Tworzenie

Proces tworzenia różni się od innych procesów przede wszystkim tym, że zazwyczaj generuje więcej oddzielnych ocen. Jak opisano w głównym artykule dotyczącym diagnostyki zapytań, te obliczenia są wynikiem wypełniania różnych elementów interfejsu użytkownika, takich jak nawigator lub listy rozwijane filtrów.

W tej sekcji przedstawiono przykład. W przykładzie użyto łącznika OData, ale podczas przeglądania danych wyjściowych przyjrzysz się również wersji sql tej samej bazy danych. W przypadku obu źródeł danych nawiąż połączenie ze źródłem danych za pośrednictwem opcji Nowe źródło, Ostatnie źródła lub Pobierz dane. W przypadku połączenia SQL musisz wprowadzić dane uwierzytelniające serwera, ale w przypadku publicznego punktu końcowego OData możesz wprowadzić podany wcześniej punkt końcowy.

Zrzut ekranu przedstawiający połączenie OData.

Po nawiązaniu połączenia i wybraniu uwierzytelniania wybierz tabelę Customers (Klienci ) z usługi OData.

Zrzut ekranu przedstawiający nawigację Northwind.

Tabela Customers (Klienci) zostanie wyświetlona w interfejsie Power Query. Załóżmy, że chcesz wiedzieć, ilu przedstawicieli sprzedaży istnieje w różnych krajach lub regionach. Najpierw kliknij prawym przyciskiem myszy pozycję Przedstawiciel ds. sprzedaży w kolumnie Tytuł kontaktu , umieść wskaźnik myszy nad filtrami tekstowymi i wybierz pozycję Równa się.

Zrzut ekranu przedstawiający opcję filtru tekstu.

Teraz wybierz pozycję Grupuj według z wstążki i wykonaj grupowanie według Kraju, a następnie dokonaj agregacji jako Liczba.

Zrzut ekranu przedstawiający operację Group By.

Te same dane są widoczne na poniższej ilustracji.

Zrzut ekranu przedstawiający wyniki.

Na koniec wróć do karty Narzędzia na wstążce i wybierz pozycję Zatrzymaj diagnostykę. Ta akcja zatrzymuje śledzenie i kompiluje plik diagnostyczny. Podsumowanie i szczegółowe tabele są wyświetlane po lewej stronie.

Jeśli prześledzisz całą sesję tworzenia, zazwyczaj zobaczysz ocenę zapytania źródłowego, następnie oceny związane z odpowiednim nawigatorem, a potem co najmniej jedno zapytanie generowane dla każdego zastosowanego kroku (a potencjalnie więcej, w zależności od dokładnych działań użytkownika w interfejsie). W niektórych konektorach oceny równoległe są wykonywane ze względów wydajnościowych i zwracają podobne zestawy danych.

Odśwież podgląd

Po zakończeniu przekształcania danych należy utworzyć sekwencję kroków w zapytaniu. Po wybraniu pozycji Odśwież podgląd lub Odśwież wszystko w edytorze Power Query nie widzisz tylko jednego kroku w diagnostyce zapytań. Odświeżanie w Edytor Power Query jawnie odświeża zapytanie kończące się ostatnim krokiem. Następnie cofa się przez zastosowane kroki i odświeża zapytanie aż do tego etapu, aż do źródła.

Ten proces oznacza, że jeśli zapytanie zawiera pięć kroków, w tym Source i Navigator, w danych diagnostycznych zobaczysz pięć różnych wyników oceny. Pierwsza ocena, chronologicznie, często (ale nie zawsze) trwa najdłużej. Dwa różne przyczyny tego dłuższego czasu trwania:

  • Potencjalnie buforuje dane wejściowe w pamięci podręcznej, do których zapytania wykonywane po nim (reprezentujące wcześniejsze kroki w zapytaniu użytkownika) mogą szybciej uzyskiwać lokalny dostęp.
  • Zastosowano do niego przekształcenia, które znacząco obcinają ilość zwracanych danych.

Po wybraniu pozycji Odśwież wszystko odświeża wszystkie zapytania. Musisz odfiltrować te, które Cię interesują, jak można się spodziewać.

Pełne odświeżanie

Diagnostyka zapytań może służyć do diagnozowania tak zwanego końcowego zapytania, które jest wysyłane podczas odświeżania w Power BI, a nie tylko działania edytora Power Query. W tym celu należy najpierw załadować dane do modelu raz. Jeśli planujesz to zrobić, upewnij się, że wiesz, iż po wybraniu opcji Zamknij i zastosuj okno edytora zostanie zamknięte (przerywając śledzenie), więc musisz zrobić to przy drugim odświeżeniu albo wybrać ikonę menu rozwijanego pod Zamknij i zastosuj i zamiast tego wybrać Zastosuj.

Zrzut ekranu przedstawiający przycisk stosowania zmian zapytania.

Tak czy inaczej, wybierz pozycję Rozpocznij diagnostykę w sekcji Diagnostyka na karcie Narzędzia w edytorze. Po wybraniu tej opcji możesz odświeżyć model, a nawet tylko tabelę, która Cię interesuje.

Zrzut ekranu przedstawiający opcję odświeżania danych.

Po zakończeniu ładowania danych do modelu wybierz pozycję Zatrzymaj diagnostykę.

Zobaczysz kombinację metadanych i zapytań dotyczących danych. Wywołania metadanych pobierają ze źródła danych tyle informacji, ile mogą. Pobieranie danych dotyczy uzyskiwania dostępu do źródła danych, emitowania końcowego skompilowanego zapytania źródła danych za pomocą złożonych operacji, a następnie przeprowadzania jakichkolwiek ocen na górze, lokalnie.

Należy pamiętać, że tylko dlatego, że w diagnostyce jest widoczny zasób (baza danych, internetowy punkt końcowy itd.) lub zapytanie źródła danych, nie oznacza to, że musi wykonywać działania sieciowe. Power Query może pobrać te informacje z pamięci podręcznej.

Krok diagnozowania

Funkcja Krok diagnozy zapewnia wgląd w to, jakie ewaluacje są przeprowadzane do konkretnego kroku. Te informacje pomagają ocenić, jak kształtuje się wydajność do tego etapu oraz które części zapytania są wykonywane lokalnie, a które zdalnie.

Jeśli użyjesz kroku Diagnose Step dla zapytania utworzonego wcześniej, zobaczysz, że zwraca ono około 10 wierszy. Jeśli spojrzysz na ostatni wiersz z zapytaniem źródła danych, zobaczysz jasny obraz tego, jak wygląda ostateczne zapytanie emitowane do źródła danych. W takim przypadku zobaczysz, że Power Query zdalnie filtruje przedstawiciela sprzedaży, ale grupowanie odbywa się lokalnie.

Zrzut ekranu przedstawiający przefiltrowaną i pogrupowaną tabelę Klienci.

Jeśli uruchomisz i zatrzymasz diagnostykę i odświeżysz to samo zapytanie, otrzymasz 40 wierszy. Jak wspomniano wcześniej, Power Query pobiera informacje o każdym kroku, a nie tylko ostatnim kroku. To zachowanie utrudnia uzyskanie wglądu w jedną konkretną część zapytania.