Folosește analizorul de performanță pentru a diagnostica problemele
Înainte să poți rezolva o problemă de performanță, trebuie să o găsești. Analizatorul de performanță este principalul instrument de diagnostic integrat în Power BI pentru identificarea a ceea ce este lent într-un raport și de ce. Măsoară cât durează încărcarea fiecărui vizual și împarte acel timp pe categorii, astfel încât să poți identifica exact unde este blocajul.
Analizor de performanță deschis
În Power BI Desktop, selectați panglica Optimize, apoi selectați analizor de performanță. Panoul analizorului de performanță se deschide în partea dreaptă a pânzei raportului. Odată ce panoul este vizibil, ești gata să începi înregistrarea.
Notă
Analizatorul de performanță este disponibil și în Power BI service. Deschide un raport în modul editare, selectează meniul Vizualizare , apoi selectează Performance analyzer. Detaliile de sincronizare și funcțiile de interogare de tip copy funcționează la fel.
Înregistrare și măsurare a performanței
Pentru a colecta datele de sincronizare, urmează acești pași:
- Selectează Start înregistrare în panoul analizorului de performanță.
- Interacționează cu raportul: reîmprospătează vizualurile, ajustează slicerele sau navighează între pagini.
- Observă rezultatele temporizării care apar în timp real pentru fiecare vizual.
- Selectează Oprește când ai colectat suficiente date.
Fiecare interacțiune (cum ar fi schimbarea unui slicer sau reîmprospătarea unei pagini) creează o secțiune în panou. Sub fiecare secțiune vezi vizualurile individuale și timpii lor de încărcare.
Sfat
Șterge cache-ul vizual înainte de a măsura pentru a obține rezultate exacte. În Power BI Desktop, găsești această opțiune în panoul Performance analyzer. Datele stocate în cache pot masca performanța reală a interogărilor, așa că ștergerea lor asigură că măsori timpul real de execuție.
Poți măsura și o singură vizuală. Când analizatorul de performanță înregistrează, selectează pictograma Analizează această vizuală în colțul din dreapta sus al oricărei imagini pentru a reîmprospăta și captura individual datele de performanță.
Înțelege metricile de sincronizare
Analizatorul de performanță împarte timpul de încărcare al fiecărui vizual în mai multe categorii:
| Măsurătoare | Ce măsoară |
|---|---|
| Interogare DAX | Este timpul ca vizualul să trimită o interogare modelului semantic și să primească rezultate. Acesta este cel mai comun blocaj de blocaj. |
| Afișaj vizual | Timpul pentru ca vizualul să se redare pe ecran, inclusiv recuperarea imaginilor web sau geocodarea. |
| Interogare directă | Timpul pentru interogările trimise către o sursă de date externă atunci când se folosește modul de stocare DirectQuery. |
| Altele | Timp pentru procesarea în fundal, inclusiv așteptarea finalizării altor imagini, pregătirea interogărilor și overhead de rețea. |
Valoarea Duration (ms) reprezintă timpul total de la început până la sfârșit pentru fiecare operație. Deoarece majoritatea operațiunilor se execută secvențial pe un singur fir UI, duratele raportate pot include timpul petrecut în așteptare în coadă în timp ce alte elemente vizuale se termină.
Când diagnostichezi un raport lent, concentrează-te mai întâi pe cel mai mare contributor. Dacă timpul de interogare DAX domină, problema se află în model sau în măsură. Dacă timpul de afișare vizual este mare, vizualul în sine redă prea multe date. Dacă timpul de interogare directă este mare, sursa de date externă sau plierea interogărilor ar putea fi problema.
Exportă și analizează interogările DAX
Una dintre cele mai utile caracteristici ale analizorului de performanță este capacitatea de a extrage exact interogarea DAX pe care o vizuală o trimite modelului semantic. Acest lucru îți permite să analizezi de ce o anumită interogare este lentă.
Pentru a exporta o interogare DAX:
- Extinde intrarea unui vizual în panoul analizorului de performanță.
- Selectează Rulează în vizualizarea interogării DAX pentru a deschide interogarea într-o filă nouă automat sau selectează Copiază interogarea pentru a o copia în clipboard.
- În vizualizarea interogărilor DAX, rulează interogarea și revizuiește rezultatele.
Grila de rezultate arată datele pe care le folosește vizualul. Poți inspecta structura interogărilor, identifica operațiuni costisitoare și testa optimizările direct în vizualizarea interogărilor DAX.
Interogarea DAX generată de un vizual este adesea mai detaliată decât o interogare scrisă de mână. Include VAR-uri suplimentare, wrapper-uri TOPN și referințe de coloane care suportă comutarea vizuală a tipurilor. Dacă Copilot este disponibil, acesta poate ajuta la simplificarea structurii interogărilor în vizualizarea interogărilor DAX. Încearcă un prompt de genul "Elimină VAR-urile și TOPN și simplifică această interogare DAX."
Notă
În Power BI service, butonul Rulează în vizualizarea de interogare DAX nu este disponibil. În schimb, copiază interogarea, selectează Modelul de date deschis pentru a deschide experiența de modelare web, apoi treci la vizualizarea de interogare DAX pentru a o lipi și rula. Interogările din web nu sunt salvate după ce închizi browserul.
Folosește DAX Studio pentru diagnostice mai detaliate
DAX Studio este un instrument gratuit, open-source, care se conectează la modelul semantic local sau la un model semantic publicat printr-un endpoint XMLA. DAX Studio oferă capabilități dincolo de vizualizarea de interogare DAX încorporată:
- Server Timings: separă execuția interogărilor în timp pentru formula engine (FE) și storage engine (SE), arătând exact unde motorul își investește efortul.
- Planul de interogare: afișează planul logic și fizic de interogare, care ajută la identificarea operațiunilor ineficiente în măsuri complexe.
- Metrici de model: analizează dimensiunile tabelelor și coloanelor, cardinalitatea și statisticile de compresie pentru a identifica cei mai mari contributori la dimensiunea modelului.
DAX Studio este deosebit de util când ai nevoie de diagnostice la nivel de motor pe care Performance analyzer și DAX query view nu le expun, sau când nu ai acces la Copilot pentru simplificarea interogărilor. Fluxul de lucru este același: copiezi o interogare DAX din Performance Analyzer, o lipești în DAX Studio și folosești timpii serverului și planurile de interogare pentru a înțelege unde își dedică motorul timpul.
Interpretează rezultatele eficient
Doar cifrele brute nu spun întreaga poveste. Un diagnostic eficient necesită compararea rezultatelor în context:
- Compară timpii relativi între imagini. Dacă un vizual durează 5.000 ms și toate celelalte sub 200 ms, acel vizual este zona de focalizare.
- Identifică categoria de blocaj. Un vizual cu 4.800 ms în timp de interogare DAX și 200 ms în afișare vizuală are o problemă cu modelul sau măsura datelor, nu o problemă de randare.
- Testează cu date reprezentative. Măsurătorile performanței pe un set de date de dezvoltare cu 1.000 de rânduri nu reflectă cu acuratețe performanța producției pe un set de date cu 10 milioane de rânduri.
- Repetă măsurătorile. O singură măsurătoare poate fi afectată de caching, variabilitatea rețelei sau procese de fundal. Rulează măsurarea de mai multe ori și observă tiparul.
Ia în considerare acest exemplu: o pagină de raport are cinci elemente vizuale. După ștergerea cache-ului și reîmprospătarea tuturor aspectelor vizuale, rezultatele arată astfel:
| Visual | Interogare DAX (ms) | Afișare vizuală (ms) | Total (ms) |
|---|---|---|---|
| Venituri pe regiuni (grafic cu bare) | 120 | 80 | 200 |
| Tendință lunară (grafic cu linii) | 150 | 90 | 240 |
| Detalii despre produs (tabel) | 4,500 | 300 | 4,800 |
| Cardul KPI | 50 | 30 | 80 |
| Clienți de top (clasament) | 180 | 110 | 290 |
Tabelul de detaliu al produsului este clar excepția. Timpul său de interogare DAX de 4.500 ms indică o măsură costisitoare sau o solicitare excesivă de date. Următorul pas este să copiezi acea interogare, să o analizezi în vizualizarea interogării DAX și să determini dacă problema este un calcul complex, un tipar de filtrare ineficient sau prea multe date returnate.
Cele mai bune practici pentru măsurarea performanței
Urmează aceste ghiduri pentru a obține rezultate fiabile și acționabile de la analizorul de performanță:
- Șterge cache-ul vizual înainte de fiecare test. Rezultatele cache-ului maschează timpul real de execuție al interogărilor.
- Izolează variabilele. Schimbă un lucru pe rând, apoi măsoară din nou.
- Testează scenarii realiste. Folosește date de dimensiune de producție și selecții tipice de filtre.
- Documentează liniile de bază. Înregistrează rezultatele de sincronizare înainte și după modificări ca să poți cuantifica îmbunătățirile.
- Concentrează-te pe vizualuri care să influențeze utilizatorul. Prioritizează vizualurile pe pagina de destinație implicită și pe paginile de raport folosite frecvent.
Analizatorul de performanță este punctul tău de plecare în fluxul de lucru de depanare. Îți spune ce este lent și care categorie (DAX, vizual, DirectQuery) contribuie cel mai mult. Următorul pas este să rezolvăm problema: să începem cu optimizarea DAX.