Oceń wydajność kodu DAX w DAX Studio

W tym samouczku dowiesz się, jak ocenić wydajność kodu DAX przy użyciu opcji Uruchom test porównawczy w DAX Studio.

Opcja Uruchom test porównawczy umożliwia dostosowanie liczby zimnych i ciepłych wykonań pamięci podręcznej w zapytaniu.

Oceń wydajność kodu DAX w DAX Studio

Po kliknięciu tej opcji zostanie otwarty kreator testu porównawczego. Możesz określić, ile razy chcesz uruchomić zapytanie w zimnej lub ciepłej pamięci podręcznej.

Oceń wydajność kodu DAX w DAX Studio

Zimna pamięć podręczna oznacza, że ​​DAX Studio najpierw wyczyści pamięć podręczną, a następnie uruchomi zapytanie na podstawie określonej liczby. Z drugiej strony ciepła pamięć podręczna oznacza, że ​​DAX Studio nie wyczyści pamięci podręcznej przed uruchomieniem zapytania.

Przykład użycia kodu DAX

W tym samouczku użyjemy poniższego kodu, który generuje CallbackDataID:

Oceń wydajność kodu DAX w DAX Studio

Zanim skorzystamy z opcji Uruchom test porównawczy, wykonajmy kod i przejrzyjmy dane chronometrażu serwera.

Oceń wydajność kodu DAX w DAX Studio

Jak widać, wykonanie kodu zajmuje 134 milisekundy. Zawiera również CallbackDataID.

Spis treści

  1. Korzystanie z opcji Uruchom test porównawczy w celu uzyskania wydajności kodu DAX
  2. Porównanie wydajności kodu DAX za pomocą wykresów
  3. Wniosek

Korzystanie z opcji Uruchom test porównawczy w celu uzyskania wydajności kodu DAX

Po kliknięciu opcji Uruchom test porównawczy i uruchomieniu zapytania z 5 wykonaniami zimnej pamięci podręcznej zobaczysz pasek postępu u dołu kreatora testu porównawczego. Czyści pamięć podręczną, a następnie uruchamia kod pięć razy.

Następnie w okienku Wyniki zostaną otwarte dwie zakładki. Pierwsza zakładka, Podsumowanie, zawiera tabelę z informacjami dotyczącymi typu pamięci podręcznej, jej statystyki, całkowitego czasu trwania i czasu trwania SE.

Wyniki testu porównawczego

Typ pamięci podręcznej Czas trwania (ms) Statystyki
Zimna pamięć podręczna 134 Brak optymalizacji
Ciepła pamięć podręczna 3.9 Wszystkie dane w pamięci

Porównując dane między zimną pamięcią podręczną a ciepłą pamięcią podręczną, widać, że wyczyszczenie pamięci podręcznej nie ma znaczącej różnicy w czasie trwania działania

Zmienny czas trwania pamięci podręcznej

Uruchommy inny kod języka DAX, aby zobaczyć, jak wpływa on na chronometraż zapytania.

Widać, że wyczyszczenie pamięci podręcznej i wykonanie kodu zajmuje tylko 13 milisekund.

Następnie kliknij opcję Uruchom test porównawczy. Odznacz pole i wykonaj 10 wykonań zarówno dla zimnej, jak i ciepłej pamięci podręcznej.

Oceń wydajność kodu DAX w DAX Studio

W okienku wyników widać, że uruchomienie w zimnej pamięci podręcznej trwa 12,8 milisekundy, a w ciepłej pamięci podręcznej – 3,9 milisekundy.

Oceń wydajność kodu DAX w DAX Studio

Czas trwania aparatu pamięci masowej nie jest mierzalny w ciepłej pamięci podręcznej, ponieważ odpowiedzi na zapytania pochodzą z samej pamięci podręcznej danych.

Na karcie Szczegóły możesz zobaczyć, że jest łącznie 20 egzekucji; 10 na zimno i 10 na ciepło. Czas trwania zimna jest zawsze dłuższy niż czas trwania ciepła.

Oceń wydajność kodu DAX w DAX Studio

Przewijając do prawej kolumny, możesz zobaczyć, że pasująca pamięć podręczna VertiPaq zawiera 0 dla zimnej pamięci podręcznej i 1 dla ciepłej pamięci podręcznej.

Porównanie wydajności kodu DAX za pomocą wykresów

Aby uzyskać bardziej wnikliwe dane, możesz utworzyć wykres liniowy z wyników z opcji Benchmark. Możesz utworzyć porównanie, używając interwałów 10. Oznacza to, że uruchamiasz test porównawczy, używając 10, 20, 30 itd. zarówno dla zimnej, jak i ciepłej pamięci podręcznej. Pomoże to zrozumieć, ile czasu zajmuje wykonanie zapytania na podstawie liczby wierszy.

Możesz także zacząć od małej bazy danych i stopniowo uruchamiać kod bardziej złożonej bazy danych. Następnie utwórz wykres liniowy, aby zobaczyć wydajność kodu.

Ułatwia to określenie, czy czas trwania zwiększył się, czy zmniejszył w odniesieniu do liczby wierszy w zapytaniu języka DAX.

Wniosek

Optymalizacja wydajności kodu DAX jest ważna. Różnica 0,5 milisekundy na wiersz kodu może niewiele znaczyć. Ale gdy masz do czynienia z wieloma wierszami kodu, które w rezultacie dają milion wierszy, to 0,5 ms zrobi wielką różnicę.

Użycie opcji Uruchom test porównawczy umożliwia zebranie danych czasowych kodu. Możesz użyć tego do porównania między różnymi wierszami kodu. Możesz również użyć tego, aby uzyskać przydatne informacje o tym, która część kodu DAX wymaga optymalizacji.

14 Comments

  1. Bartek -

    Dobra robota! Czasami mam problem z dostosowaniem mojego kodu DAX, ale po przeczytaniu tego artykułu czuję, że mogę spróbować nowych technik.

  2. Monika K. -

    Chciałabym wiedzieć, jakie są Wasze doświadczenia z używaniem DAX Studio. Ktoś miał jakieś przykre niespodzianki na początku

  3. Piotr z Wrocławia -

    Bardzo ciekawe informacje! Chciałem dodać, że korzystając z DAX Studio, zauważyłem znaczny wzrost wydajności moich raportów. Każdemu polecam!

  4. Kasia -

    Świetny artykuł! Używam DAX Studio od jakiegoś czasu i naprawdę pomaga w optymalizacji kodu. Dzięki za podzielenie się tymi wskazówkami

  5. Stasia Miau -

    Wow! Wow! To, co można osiągnąć w DAX Studio, jest niesamowite! Nigdy nie przypuszczałam, że wydajność można tak poprawić

  6. Jacek_szef -

    Hej, czy ktoś może podzielić się swoimi wynikami po zastosowaniu wskazówek z tego artykułu? Chciałbym porównać efekty

  7. Marek IT -

    Dzięki za wartościowe informacje! Wydajność kodu DAX to kluczowa sprawa, szczególnie przy dużych zbiorach danych

  8. Aga&Rafał -

    W artykule brakuje mi informacji o analizowaniu wydajności przy pomocy narzędzi wbudowanych w Power BI. Czy ktoś może to wyjaśnić

  9. Wojtek 123 -

    Czy ktoś może polecić dobre praktyki dotyczące wydajności kodu DAX? Zastanawiam się, jak najlepiej zoptymalizować swoje zapytania

  10. Hanka Z. -

    Fajnie by było zobaczyć więcej przykładów praktycznych w przyszłych wpisach. To zawsze pomaga zrozumieć teorię!

  11. Ola Kwiat -

    Czy ten artykuł dotyczy również wersji DAX Studio na Mac? Szukam rozwiązań dla moich projektów

  12. Lukasz 2022 -

    Również zauważyłem, że DAX Studio znacznie usprawnia proces analizy! Każdemu go polecam, nawet początkującym

  13. Lenka -

    Ostatnio testowałam kilka metod optymalizacji i DAX Studio naprawdę bardzo się przydał. Dzięki za tę inspirację

  14. Michał -

    Super artykuł! Fajnie byłoby dodać w przyszłych wpisach więcej grafiki i wizualizacji związanych z DAX. To by bardzo pomogło!

Leave a Comment

Dodawaj, usuwaj i zmieniaj nazwy kolumn w R za pomocą Dplyr

Dodawaj, usuwaj i zmieniaj nazwy kolumn w R za pomocą Dplyr

W tym samouczku omówimy pakiet dplyr, który umożliwia sortowanie, filtrowanie, dodawanie i zmianę nazw kolumn w języku R.

Funkcje zbierania w Microsoft Power Automate

Funkcje zbierania w Microsoft Power Automate

Odkryj różnorodne funkcje zbierania, które można wykorzystać w Power Automate. Zdobądź praktyczne informacje o funkcjach tablicowych i ich zastosowaniu.

Oceń wydajność kodu DAX w DAX Studio

Oceń wydajność kodu DAX w DAX Studio

Z tego samouczka dowiesz się, jak ocenić wydajność kodów DAX przy użyciu opcji Uruchom test porównawczy w DAX Studio.

Czym jest self w Pythonie: przykłady z życia wzięte

Czym jest self w Pythonie: przykłady z życia wzięte

Czym jest self w Pythonie: przykłady z życia wzięte

Jak zapisać i załadować plik RDS w R

Jak zapisać i załadować plik RDS w R

Dowiesz się, jak zapisywać i ładować obiekty z pliku .rds w R. Ten blog będzie również omawiał sposób importowania obiektów z R do LuckyTemplates.

Powrót do pierwszych N dni roboczych — rozwiązanie języka kodowania DAX

Powrót do pierwszych N dni roboczych — rozwiązanie języka kodowania DAX

Z tego samouczka języka kodowania DAX dowiesz się, jak używać funkcji GENERUJ i jak dynamicznie zmieniać tytuł miary.

Zaprezentuj spostrzeżenia przy użyciu wielowątkowej techniki dynamicznych wizualizacji w usłudze LuckyTemplates

Zaprezentuj spostrzeżenia przy użyciu wielowątkowej techniki dynamicznych wizualizacji w usłudze LuckyTemplates

W tym samouczku omówiono sposób korzystania z techniki wielowątkowych wizualizacji dynamicznych w celu tworzenia szczegółowych informacji na podstawie dynamicznych wizualizacji danych w raportach.

Wprowadzenie do filtrowania kontekstu w usłudze LuckyTemplates

Wprowadzenie do filtrowania kontekstu w usłudze LuckyTemplates

W tym artykule omówię kontekst filtra. Kontekst filtrowania to jeden z głównych tematów, z którym każdy użytkownik usługi LuckyTemplates powinien zapoznać się na początku.

Najlepsze wskazówki dotyczące korzystania z aplikacji w usłudze online LuckyTemplates

Najlepsze wskazówki dotyczące korzystania z aplikacji w usłudze online LuckyTemplates

Chcę pokazać, jak usługa online LuckyTemplates Apps może pomóc w zarządzaniu różnymi raportami i spostrzeżeniami generowanymi z różnych źródeł.

Analizuj zmiany marży zysku w godzinach nadliczbowych — Analizuj za pomocą LuckyTemplates i DAX

Analizuj zmiany marży zysku w godzinach nadliczbowych — Analizuj za pomocą LuckyTemplates i DAX

Dowiedz się, jak obliczyć zmiany marży zysku przy użyciu technik, takich jak rozgałęzianie miar i łączenie formuł języka DAX w usłudze LuckyTemplates.