Εισαγωγή στο Power BI Performance Analyzer

Εισαγωγή στο Power BI Performance Analyzer

September 29, 2022 0 Von admin

Αυτό το ιστολόγιο περιγράφει τον τρόπο χρήσης και ερμηνείας των πληροφοριών που παρέχονται από το Power BI Performance Analyzer, εντοπίζοντας τα σημεία συμφόρησης σε αργές αναφορές.

Τι είναι το Power BI Performance Analyzer;

Το Power BI Performance Analyzer είναι μια δυνατότητα που περιλαμβάνεται στην έκδοση Μαΐου 2019 του Power BI Desktop που απλοποιεί τον τρόπο με τον οποίο μπορείτε να συλλέγετε τα ερωτήματα DAX που δημιουργούνται από το Power BI. Μπορείτε να χρησιμοποιήσετε το DAX Studio για να τα καταγράψετε, αλλά το Performance Analyzer που είναι ενσωματωμένο στο Power BI είναι πιο απλό και παρέχει μερικές πληροφορίες σχετικά με το χρόνο που καταναλώνεται σε άλλες δραστηριότητες, όπως ο χρόνος απόδοσης οποιωνδήποτε γραφικών.

Μπορείτε να ενεργοποιήσετε το Power BI Performance Analyzer κάνοντας κλικ στο πλαίσιο ελέγχου Performance Analyzer στην κορδέλα Power BI Desktop View.

1

Μπορείτε να βρείτε περισσότερες λεπτομέρειες σχετικά με τη διεπαφή χρήστη στο Τεκμηρίωση Performance Analyzer από τη Microsoft. Αυτό το ιστολόγιο στοχεύει να επικεντρωθεί στις μετρήσεις που παρέχονται από αυτήν τη δυνατότητα και να σας βοηθήσει να ερμηνεύσετε σωστά τα δεδομένα.

Για παράδειγμα, ας ξεκινήσουμε με την καταγραφή του χρονισμού των γραφικών.

  1. Ανοίξτε το αρχείο PBIX
  2. Ενεργοποιήστε το παράθυρο Performance Analyzer,
  3. Κάντε κλικ στο Start Recording στο παράθυρο Performance Analyzer

2

Μετάβαση σε διαφορετική σελίδα στην αναφορά,

3

Το παράθυρο „Αναλυτής απόδοσης“ καταγράφει τη διάρκεια σε χιλιοστά του δευτερολέπτου για κάθε εικόνα στη σελίδα. Η απεικόνιση Matrix είναι η πιο αργή – αν και ο χρονισμός μπορεί να διαφέρει σε διαφορετικό υλικό – αλλά κάθε απεικόνιση μπορεί να δείχνει περίπου 2 δευτερόλεπτα διάρκειας.

4

Κάντε κλικ στο κουμπί Ανανέωση γραφικών στο παράθυρο Performance Analyzer και κάντε κύλιση προς τα κάτω για να δείτε τη διάρκεια των γραφικών για τη δεύτερη εκτέλεση. Το Matrix εξακολουθεί να είναι το πιο αργό οπτικό, αλλά ο χρόνος εκτέλεσης κάθε απεικόνισης έχει μειωθεί από την πρώτη εκτέλεση.

5

Σε αυτό το σημείο, έχετε δύο εκτελέσεις των ίδιων γραφικών στο παράθυρο Performance Analyzer. Η πρώτη ομάδα σχετίζεται με α Άλλαξε σελίδα συμβάν και η διάρκεια είναι τουλάχιστον δύο δευτερόλεπτα για σχεδόν κάθε οπτικό. Επιλέγοντας ένα από αυτά τα γραφικά, βλέπετε ότι το μεγαλύτερο μέρος του χρόνου αφιερώνεται στην ενότητα „Άλλα“.

7

Η Διάρκεια κάθε εικόνας είναι ο χρόνος που αφιερώνεται σε τρεις κατηγορίες:

  • Ερώτημα DAX: κάθε απεικόνιση δημιουργεί μία ή περισσότερες προτάσεις EVALUATE σε ένα μόνο αίτημα που αποστέλλεται στη μηχανή Tabular. Αυτός είναι ο χρόνος που μεσολάβησε μεταξύ του αιτήματος που στάλθηκε στον κινητήρα και της πρώτης σειράς του αποτελέσματος που έλαβε το Power BI. Ορισμένα γραφικά δεν δημιουργούν ερωτήματα DAX. Αυτός ο χρόνος διάρκειας μπορεί να εκτελεστεί παράλληλα με τις ενέργειες που απαιτούνται από άλλα γραφικά.
  • Οπτική οθόνη: αυτός είναι ο χρόνος που απαιτείται για την απόδοση της εικόνας. Αυτός ο χρόνος που δαπανάται μόνο από την πλευρά του πελάτη και στο μεμονωμένο νήμα της διεπαφής χρήστη.
  • Αλλα: αυτός είναι ο χρόνος αναμονής για την ολοκλήρωση άλλων λειτουργιών. Αυτός είναι συνήθως ο χρόνος συγχρονισμού μεταξύ διαφορετικών γραφικών στην ίδια σελίδα και δεν πρέπει να θεωρείται ως σημείο συμφόρησης της εικόνας που αναλύεται. Συνήθως είναι χρόνος αναμονής που προκαλείται από άλλες εκκρεμείς λειτουργίες που εκτελούνται από άλλα οπτικά.

Ας υποθέσουμε ότι συγκρίνετε τη διάρκεια της πρώτης εκτέλεσης της σελίδας Sales με τη δεύτερη εκτέλεση. Σε αυτή την περίπτωση, μπορείτε να δείτε ότι η τελευταία έχει μικρότερη διάρκεια, επειδή μειώνει την Αλλα διάρκεια κάθε εικόνας. Ο λόγος είναι ότι η πρώτη εκτέλεση γραφικών και ερωτημάτων στο μοντέλο δεδομένων απαιτεί μια κατανομή νέων δομών στη μνήμη. δεν μπορεί να μειωθεί εκτός εάν μειώσετε τον αριθμό των γραφικών και το μέγεθος των πινάκων μοντέλων δεδομένων. Για αυτόν τον λόγο, θα πρέπει να εστιάσετε κυρίως στον χρονισμό Διάρκειας που δημιουργείται όταν κάνετε κλικ στο Ανανέωση οπτικών. Με αυτόν τον τρόπο, αγνοείτε τον αρχικό χρόνο φόρτωσης τόσο της αναφοράς όσο και του μοντέλου δεδομένων.

Ας υποθέσουμε ότι η διάρκεια της οπτικής εμφάνισης είναι μεγάλη. Σε αυτήν την περίπτωση, θα πρέπει να εξετάσετε εάν μπορείτε να το βελτιώσετε μειώνοντας την ποσότητα των δεδομένων που περιλαμβάνονται στην απεικόνιση (π.χ., μειώνοντας τον αριθμό των σημείων δεδομένων σε έναν χάρτη ή ένα γράφημα) ή αντικαθιστώντας την απεικόνιση με άλλη. Είναι φυσιολογικό να βλέπετε μεγαλύτερη διάρκεια για προσαρμοσμένα γραφικά σε σύγκριση με τα εγγενή γραφικά στο Power BI. Ωστόσο, κάθε εικόνα έχει κόστος μνήμης και CPU. Η παρουσία πολλών γραφικών σε μια μεμονωμένη σελίδα Power BI μπορεί να επηρεάσει την απόδοση, επειδή η απόδοση κάθε απεικόνισης είναι μια διαδοχική λειτουργία που εκτελείται σε ένα νήμα. Όπως βλέπετε στο παρακάτω στιγμιότυπο οθόνης, ακόμη και ένα απλό πλαίσιο κειμένου απαιτεί σχεδόν 100 χιλιοστά του δευτερολέπτου, επομένως η αναμονή για αρκετά δευτερόλεπτα μόνο και μόνο επειδή μια σελίδα έχει δεκάδες γραφικά δεν είναι ασυνήθιστο.

9

Ένα αργό Ερώτημα DAX έχει μεγάλη διάρκεια και αξίζει περαιτέρω διερεύνηση. Ο λόγος μπορεί να είναι μια αργή μέτρηση, ένα αργό μοντέλο δεδομένων ή μια αργή πηγή δεδομένων – ειδικά όταν χρησιμοποιείτε το DirectQuery. Για παράδειγμα, το ακόλουθο στιγμιότυπο οθόνης δείχνει ότι η πιο αργή απεικόνιση του δείγματος αναφοράς (Matrix) έχει ένα πολύ αργό ερώτημα DAX.

10

Μπορείτε να αντιγράψετε το ερώτημα στο πρόχειρο πατώντας Αντιγραφή ερωτήματος. Επικολλήστε το ερώτημα στο DAX Studio για να επαναλάβετε την εκτέλεση του ερωτήματος, ενεργοποιώντας αυτήν τη φορά περισσότερα διαγνωστικά εργαλεία χρησιμοποιώντας τις επιλογές ανίχνευσης σχεδίου ερωτήματος και χρονισμών διακομιστή. Ενδεχομένως, εκτελέστε το ερώτημα DAX στο DAX Studio εκκαθαρίζοντας πρώτα την προσωρινή μνήμη – Το Performance Analyzer δεν εκκαθαρίζει τη μνήμη cache του μηχανισμού Tabular πριν από κάθε εκτέλεση.

Αυτός είναι ο κώδικας που δημιουργείται για τη συμπλήρωση της απεικόνισης Matrix:

11

Το ερώτημα καλεί το μέτρο Πελάτες, το οποίο ορίζεται ως εξής:

12

Ο στόχος αυτού του ιστολογίου δεν είναι να εξηγήσει λεπτομερώς γιατί το συγκεκριμένο μέτρο Πελατών αργεί. Μπορούμε απλά να αναφέρουμε ότι η χρήση ενός φίλτρου πίνακα σε συνδυασμό με μια συγκέντρωση DISTINCTCOUNT δημιουργεί ένα αναποτελεσματικό σχέδιο ερωτήματος. Η τροποποίηση του κώδικα χρησιμοποιώντας ένα σημασιολογικά ισοδύναμο φίλτρο στήλης παράγει ένα βέλτιστο σχέδιο ερωτήματος:

13

Με την ανανέωση της εικόνας, μπορείτε να δείτε τη σημαντική βελτίωση που έγινε στο DAX Query, το οποίο τώρα εκτελείται σε λιγότερο από 10 χιλιοστά του δευτερολέπτου

14

Ωστόσο, η διάρκεια του Άλλου έχει πλέον αυξηθεί λόγω της παρουσίας πολλαπλών γραφικών και το Matrix δεν είναι πλέον το πιο αργό ερώτημα στη σελίδα αναφοράς.

Λόγω της φύσης της, η Διάρκεια που αναφέρεται στο Άλλο θα πρέπει να αγνοηθεί. Το μεγαλύτερο μέρος του Άλλου χρόνου δεν προστίθεται μεταξύ των γραφικών. Επειδή η συνολική Διάρκεια της οπτικής έκθεσης αναφέρει το άθροισμα των τριών κατηγοριών, αυτό καθιστά πιο δύσκολη την απομόνωση του πιο αργού ερωτήματος που εκτελείται. Θα ήταν καλή ιδέα να μπορείτε να απομονώσετε τη διάρκεια Άλλο, αθροίζοντας μόνο τις διάρκειες του ερωτήματος DAX και της οπτικής εμφάνισης για κάθε οπτική απεικόνιση, καθιστώντας έτσι ταχύτερο τον εντοπισμό του κύριου σημείου συμφόρησης σε μια αναφορά.

Καλή Ανάγνωση. Σας ευχαριστώ όλους για τα σχόλιά σας. Αυτό είναι το 11ο Blog μου σε 3 μήνες. Όταν έγραφα το πρώτο μου blog, δεν πίστευα ποτέ ότι θα έγραφα 10+ blog σε ένα τέταρτο. Ελπίζουμε ότι αυτό θα παρακινήσει τους ανθρώπους να δημιουργήσουν περισσότερα ιστολόγια στο μέλλον. Ευχαριστώ!