Επισκόπηση της αξιολόγησης ερωτημάτων και της αναδίπλωσης ερωτημάτων στο Power Query

Power Query αξιολογεί ένα ερώτημα M για να προσδιορίσει τα δεδομένα και τους μετασχηματισμούς που απαιτούνται για το αποτέλεσμά του. Κατά τη διάρκεια της αξιολόγησης, γίνεται προσπάθεια αναδίπλωσης ερωτήματος για μετάφραση υποστηριζόμενων μετασχηματισμών σε λειτουργίες που μπορεί να εκτελέσει μια προέλευση δεδομένων. Μετασχηματισμοί που δεν είναι δυνατό να αναδιπλωθούν εκτελούνται στον μηχανισμό Power Query.

Τι είναι μια δέσμη ενεργειών Power Query M;

Μια δέσμη ενεργειών M, που ονομάζεται επίσης κώδικας M, είναι το σύνολο Power Query συναρτήσεων και σύνταξης της γλώσσας τύπων M που Power Query αξιολογεί την παραγωγή ενός αποτελέσματος ερωτήματος. Κάθε ερώτημα έχει μια δέσμη ενεργειών M, είτε την δημιουργεί Power Query, την γράφετε στο προηγμένο πρόγραμμα επεξεργασίας, είτε την καταχωρείτε σε ένα κενό ερώτημα.

Συμβουλή

Μπορείτε να θεωρήσετε τη δέσμη ενεργειών M ως μια συνταγή που περιγράφει τον τρόπο προετοιμασίας των δεδομένων σας.

Ο πιο συνηθισμένος τρόπος για να δημιουργήσετε μια δέσμη ενεργειών M είναι χρησιμοποιώντας το πρόγραμμα επεξεργασίας Power Query. Για παράδειγμα, όταν συνδέεστε σε μια προέλευση δεδομένων, όπως μια SQL Server βάση δεδομένων, παρατηρήστε στη δεξιά πλευρά της οθόνης σας ότι υπάρχει μια ενότητα που ονομάζεται εφαρμοσμένα βήματα. Αυτή η ενότητα εμφανίζει όλα τα βήματα ή τους μετασχηματισμούς που χρησιμοποιούνται στο ερώτημά σας. Με αυτή την έννοια, το πρόγραμμα επεξεργασίας Power Query λειτουργεί ως διασύνδεση για να σας βοηθήσει να δημιουργήσετε την κατάλληλη δέσμη ενεργειών M για τους μετασχηματισμούς που θέλετε και εξασφαλίζει ότι ο κώδικας που χρησιμοποιείτε είναι έγκυρος.

Σημείωση

Η δέσμη ενεργειών M χρησιμοποιείται στο πρόγραμμα επεξεργασίας Power Query για τα εξής:

  • Εμφανίστε το ερώτημα ως μια σειρά βημάτων και σας επιτρέπει να δημιουργήσετε ή να τροποποιήσετε βήματα.
  • Εμφάνιση προβολής διαγράμματος.

Στιγμιότυπο οθόνης των εφαρμοσμένων βημάτων και της προβολής προεπισκόπησης δεδομένων.

Σε αυτό το SQL Server παράδειγμα, το τμήμα παραθύρου Εφαρμοσμένα βήματα περιέχει τα παρακάτω βήματα:

  • Προέλευση: Πραγματοποιεί τη σύνδεση στην προέλευση δεδομένων. Σε αυτήν την περίπτωση, πρόκειται για μια σύνδεση με μια βάση δεδομένων του SQL Server.
  • Περιήγηση: Μεταβαίνει σε έναν συγκεκριμένο πίνακα στη βάση δεδομένων.
  • Καταργήθηκε άλλες στήλες: Επιλέγει τις στήλες του πίνακα που θα διατηρηθεί.
  • Ταξινομημένες γραμμές: Ταξινομεί τον πίνακα χρησιμοποιώντας μία ή περισσότερες στήλες.
  • Διατήρηση πρώτων γραμμών: Φιλτράρει τον πίνακα ώστε να διατηρούνται μόνο ορισμένες γραμμές από την κορυφή του πίνακα.

Προβολή και επεξεργασία μιας δέσμης ενεργειών M σε Power Query

Αυτό το σύνολο ονομάτων βημάτων είναι ένας φιλικός τρόπος για να προβάλετε τη δέσμη ενεργειών M που δημιούργησε το Power Query για εσάς. Μπορείτε να προβάλετε την πλήρη δέσμη ενεργειών M με πολλούς τρόπους. Στο Power Query, επιλέξτε Προηγμένο πρόγραμμα επεξεργασίας στην καρτέλα Προβολή. Μπορείτε επίσης να επιλέξετε Προηγμένο πρόγραμμα επεξεργασίας από την ομάδα Ερώτημα στην Αρχική καρτέλα. Σε ορισμένες εκδόσεις του Power Query, μπορείτε επίσης να αλλάξετε την προβολή της γραμμής τύπων για να εμφανίσετε τη δέσμη ενεργειών ερωτήματος, μεταβαίνετε στην καρτέλα Προβολή και από την ομάδα Διάταξη, επιλέξτε Προβολή> δέσμηςενεργειών Δέσμη ενεργειών Ερώτημα.

Στιγμιότυπο οθόνης που περιέχει την πλήρη δέσμη ενεργειών M και τα αντίστοιχα ονόματα των εφαρμοσμένων βημάτων.

Τα περισσότερα από τα ονόματα που βρίσκετε στο τμήμα παραθύρου Εφαρμοσμένα βήματα χρησιμοποιούνται επίσης όπως στη δέσμη ενεργειών M. Μπορείτε να ονομάσετε τα βήματα ενός ερωτήματος χρησιμοποιώντας αναγνωριστικά στη γλώσσα M. Ορισμένες φορές, επιπλέον χαρακτήρες αναδιπλώνουν τα ονόματα βημάτων στην M, αλλά αυτοί οι χαρακτήρες δεν εμφανίζονται στα εφαρμοσμένα βήματα. Ένα παράδειγμα είναι #"Kept top rows", το οποίο έχει κατηγοριοποιηθεί ως αναγνωριστικό σε εισαγωγικά εξαιτίας αυτών των επιπλέον χαρακτήρων. Ένα αναγνωριστικό σε εισαγωγικά επιτρέπει τη χρήση οποιασδήποτε ακολουθίας μηδενικών ή περισσότερων χαρακτήρων Unicode ως αναγνωριστικού, συμπεριλαμβανομένων λέξεων-κλειδιών, κενών διαστημάτων, σχολίων, τελεστών και σημείων στίξης. Για να μάθετε περισσότερα σχετικά με τα αναγνωριστικά στη γλώσσα M, ανατρέξτε στο θέμα Λεκτική δομή.

Τυχόν αλλαγές που κάνετε στο ερώτημά σας μέσω του προγράμματος επεξεργασίας Power Query ενημερώνουν αυτόματα τη δέσμη ενεργειών M για το ερώτημά σας. Για παράδειγμα, εάν αλλάξετε το όνομα βήματος Διατηρήθηκε στις πρώτες γραμμές σε Πρώτες 20 γραμμές, το όνομα αλλάζει επίσης στην προβολή δέσμης ενεργειών ερωτήματος.

Στιγμιότυπο οθόνης του εφαρμοσμένου ονόματος βήματος που άλλαξε στις πρώτες 20 γραμμές, το οποίο ενημερώνει επίσης τη δέσμη ενεργειών M.

Παρόλο που συνιστούμε να χρησιμοποιήσετε το πρόγραμμα επεξεργασίας Power Query για να δημιουργήσετε όλη ή το μεγαλύτερο μέρος της δέσμης ενεργειών M για εσάς, μπορείτε να προσθέσετε ή να τροποποιήσετε με μη αυτόματο τρόπο τμήματα της δέσμης ενεργειών M. Για να μάθετε περισσότερα, ανατρέξτε στην αναφορά γλώσσας M.

Σε αυτό το άρθρο, η δέσμη ενεργειών M αναφέρεται στον κώδικα Power Query M σε ένα ερώτημα, στον οποίο μπορείτε να αποκτήσετε πρόσβαση μέσω του προηγμένου προγράμματος επεξεργασίας ή της προβολής δέσμης ενεργειών ερωτήματος στη γραμμή τύπων.

Πώς αξιολογεί Power Query ένα ερώτημα M

Power Query αξιολογεί μια δέσμη ενεργειών M, προσδιορίζοντας το απαιτούμενο αποτέλεσμα και τον τρόπο παραγωγής της. Για τα ερωτήματα που χρησιμοποιούν μια εξωτερική προέλευση δεδομένων, η αξιολόγηση περιλαμβάνει την αίτηση δεδομένων από την προέλευση, την επεξεργασία τυχόν μετασχηματισμών που εκτελούνται στον μηχανισμό Power Query και τη φόρτωση του αποτελέσματος σε έναν προορισμό.

Το παρακάτω διάγραμμα διερευνά τη διαδικασία που προκύπτει όταν ένα ερώτημα αξιολογείται στο Power Query.

Διάγραμμα που εμφανίζει τη διαδρομή μιας αξιολόγησης ερωτήματος από τη δέσμη ενεργειών M έως το τελικό αποτέλεσμα.

  1. Η δέσμη ενεργειών M, που βρίσκεται μέσα στο προηγμένο πρόγραμμα επεξεργασίας, υποβάλλεται στον μηχανισμό Power Query. Περιλαμβάνονται επίσης και άλλες σημαντικές πληροφορίες, όπως διαπιστευτήρια και επίπεδα προστασίας προσωπικών δεδομένων προέλευσης δεδομένων.
  2. Το Power Query καθορίζει ποια δεδομένα πρέπει να εξαχθούν από την προέλευση δεδομένων και υποβάλλει μια αίτηση στην προέλευση δεδομένων.
  3. Η προέλευση δεδομένων ανταποκρίνεται στην αίτηση από το Power Query μεταφέροντας τα ζητούμενα δεδομένα στο Power Query.
  4. Το Power Query λαμβάνει τα εισερχόμενα δεδομένα από την προέλευση δεδομένων και κάνει οποιουσδήποτε μετασχηματισμούς χρησιμοποιώντας τον μηχανισμό Power Query, εάν είναι απαραίτητο.
  5. Power Query φορτώνει το μετασχηματισμένο αποτέλεσμα σε έναν προορισμό.

Σημείωση

Αυτή η ροή εμφανίζει ένα ερώτημα που διαβάζεται από μια SQL Server βάση δεδομένων. Για ένα ερώτημα χωρίς εξωτερική προέλευση δεδομένων, Power Query εξακολουθεί να αξιολογεί τη δέσμη ενεργειών M και παράγει ένα αποτέλεσμα, αλλά τα στάδια αίτησης και μεταφοράς προέλευσης δεδομένων δεν ισχύουν.

Πώς η αναδίπλωση ερωτήματος βελτιστοποιεί την αξιολόγηση ερωτήματος

Όταν το Power Query διαβάζει τη δέσμη ενεργειών M, εκτελεί τη δέσμη ενεργειών μέσω μιας διαδικασίας βελτιστοποίησης για να αξιολογήσει πιο αποτελεσματικά το ερώτημά σας. Σε αυτήν τη διαδικασία, προσδιορίζει τα βήματα (μετασχηματισμούς) από το ερώτημά σας που μπορούν να καταργηθούν στην προέλευση δεδομένων. Καθορίζει επίσης ποια άλλα βήματα πρέπει να αξιολογηθούν χρησιμοποιώντας τον μηχανισμό Power Query.

Αυτή η διαδικασία βελτιστοποίησης ονομάζεται αναδίπλωση ερωτήματος. Η αναδίπλωση ερωτήματος μεταφράζει τους υποστηριζόμενους μετασχηματισμούς M σε λειτουργίες που μπορεί να εκτελέσει η προέλευση δεδομένων. Power Query προσπαθεί να εκτελέσει όσο το δυνατόν μεγαλύτερο μέρος του ερωτήματος στην προέλευση δεδομένων και αξιολογεί τυχόν υπόλοιπους μετασχηματισμούς στον μηχανισμό Power Query.

Σημαντικό

Ακολουθούνται όλοι οι κανόνες από τη γλώσσα τύπων Power Query M (γνωστή και ως γλώσσα M). Κυρίως, η αργή αξιολόγηση παίζει σημαντικό ρόλο κατά τη διαδικασία βελτιστοποίησης. Σε αυτή τη διαδικασία, το Power Query κατανοεί ποιοι συγκεκριμένοι μετασχηματισμοί από το ερώτημά σας πρέπει να αξιολογηθούν. Το Power Query κατανοεί επίσης ποιοι άλλοι μετασχηματισμοί δεν χρειάζεται να αξιολογηθούν, επειδή δεν χρειάζονται στην έξοδο του ερωτήματός σας.

Επιπλέον, όταν εμπλέκονται πολλές προελεύσεις, το επίπεδο προστασίας προσωπικών δεδομένων κάθε προέλευσης δεδομένων λαμβάνεται υπόψη κατά την αξιολόγηση του ερωτήματος. Περισσότερες πληροφορίες: Στο παρασκήνιο του τείχους προστασίας προσωπικών δεδομένων

Το παρακάτω διάγραμμα παρουσιάζει τα βήματα που πραγματοποιήθηκαν σε αυτήν τη διαδικασία βελτιστοποίησης.

Διάγραμμα που δείχνει τη διαδικασία βελτιστοποίησης κατά την αξιολόγηση ερωτημάτων.

  1. Η δέσμη ενεργειών M, που βρίσκεται μέσα στο προηγμένο πρόγραμμα επεξεργασίας, υποβάλλεται στον μηχανισμό Power Query. Παρέχονται επίσης άλλες σημαντικές πληροφορίες, όπως διαπιστευτήρια και επίπεδα προστασίας προσωπικών δεδομένων προέλευσης δεδομένων.
  2. Ο μηχανισμός αναδίπλωσης ερωτήματος υποβάλλει αιτήσεις μετα-δεδομένων για να προσδιορίσει τις δυνατότητες της προέλευσης δεδομένων, τα σχήματα πίνακα, τις σχέσεις μεταξύ πινάκων στην προέλευση δεδομένων και άλλα μετα-δεδομένα.
  3. Με βάση τα μετα-δεδομένα που λαμβάνει, ο μηχανισμός αναδίπλωσης ερωτήματος καθορίζει ποιες πληροφορίες θα εξαχθούν από την προέλευση δεδομένων και ποιοι μετασχηματισμοί πρέπει να πραγματοποιούνται εντός του μηχανισμού Power Query. Στέλνει οδηγίες σε δύο άλλα στοιχεία που ανακτούν δεδομένα από την προέλευση δεδομένων και μετασχηματίζουν τα εισερχόμενα δεδομένα στον μηχανισμό Power Query, εάν είναι απαραίτητο.
  4. Αφού λάβουν τις οδηγίες τα εσωτερικά στοιχεία του Power Query, Power Query αποστέλλει μια αίτηση στην προέλευση δεδομένων χρησιμοποιώντας ένα ερώτημα προέλευσης δεδομένων.
  5. Η προέλευση δεδομένων λαμβάνει την αίτηση από το Power Query και μεταφέρει τα δεδομένα στον μηχανισμό Power Query.
  6. Αφού τα δεδομένα είναι εντός Power Query, ο μηχανισμός μετασχηματισμού εντός του Power Query (γνωστό και ως μηχανή συνδυασμού δεδομένων) κάνει τους μετασχηματισμούς που δεν ήταν δυνατό να αναδιπλωθούν στην προέλευση δεδομένων.
  7. Power Query φορτώνει το μετασχηματισμένο αποτέλεσμα σε έναν προορισμό.

Σημείωση

Ανάλογα με τους μετασχηματισμούς και την προέλευση δεδομένων που χρησιμοποιούνται στη δέσμη ενεργειών M, Power Query καθορίζει εάν θα γίνει ροή ή αποθήκευση σε buffer των εισερχόμενων δεδομένων.

Τι κάνει η αναδίπλωση ερωτήματος στο Power Query

Ο στόχος της αναδίπλωσης ερωτήματος είναι η μείωση φόρτου ή η προώθηση τόσο μεγάλου μέρους της αξιολόγησης ενός ερωτήματος σε μια προέλευση δεδομένων που μπορεί να υπολογίσει τους μετασχηματισμούς του ερωτήματός σας.

Ο μηχανισμός αναδίπλωσης ερωτήματος επιτυγχάνει αυτόν τον στόχο μεταφράζοντας τη δέσμη ενεργειών M σε μια γλώσσα που η προέλευση δεδομένων σας μπορεί να ερμηνεύσει και εκτελέσει. Στη συνέχεια, ωθεί την αξιολόγηση στην προέλευση δεδομένων σας και στέλνει το αποτέλεσμα αυτής της αξιολόγησης στο Power Query.

Αυτή η λειτουργία παρέχει συχνά ταχύτερη εκτέλεση ερωτήματος από την εξαγωγή όλων των απαιτούμενων δεδομένων από την προέλευση δεδομένων σας και την εκτέλεση όλων των μετασχηματισμών που απαιτούνται στον μηχανισμό Power Query.

Όταν χρησιμοποιείτε την εμπειρία get data, Power Query σας καθοδηγεί στη διαδικασία που τελικά σας επιτρέπει να συνδεθείτε στην προέλευση δεδομένων σας. Όταν το κάνει αυτό, Power Query χρησιμοποιεί μια σειρά συναρτήσεων στη γλώσσα M που κατηγοριοποιούνται ως συναρτήσεις πρόσβασης δεδομένων. Αυτές οι συγκεκριμένες συναρτήσεις χρησιμοποιούν μηχανισμούς και πρωτόκολλα για να συνδεθούν στην προέλευση δεδομένων σας χρησιμοποιώντας μια γλώσσα που μπορεί να κατανοήσει η προέλευση δεδομένων σας.

Για μετασχηματισμούς μετά τη συνάρτηση προέλευσης δεδομένων, ο μηχανισμός αναδίπλωσης ερωτήματος ελέγχει εάν μπορεί να τους απενεργοποιήσει στην προέλευση δεδομένων αντί να τους επεξεργαστεί στον μηχανισμό Power Query.

Σημαντικό

Οι συναρτήσεις προέλευσης δεδομένων, που συνήθως εμφανίζονται ως το βήμα Προέλευση ενός ερωτήματος, υποβάλλουν ερωτήματα σε δεδομένα στην προέλευση δεδομένων στην εγγενή γλώσσα της. Για μετασχηματισμούς μετά τη συνάρτηση προέλευσης δεδομένων, Power Query επιχειρεί αναδίπλωση ερωτήματος μόνο όταν η σύνδεση και οι μετασχηματισμοί την υποστηρίζουν. Ο μηχανισμός μπορεί να μεταφράσει και συνδυάσει υποστηριζόμενους μετασχηματισμούς σε ένα μεμονωμένο ερώτημα προέλευσης δεδομένων.

Αποτελέσματα αναδίπλωσης ερωτήματος σε Power Query

Ανάλογα με τον τρόπο δομής του ερωτήματος, μπορεί να υπάρχουν τρία πιθανά αποτελέσματα στον μηχανισμό αναδίπλωσης ερωτήματος:

Αποτέλεσμα αναδίπλωσης ερωτήματος Επεξεργασία στην προέλευση δεδομένων Επεξεργασία στον μηχανισμό Power Query
Πλήρης αναδίπλωση ερωτήματος Η προέλευση δεδομένων επεξεργάζεται όλους τους μετασχηματισμούς ερωτημάτων. Πραγματοποιείται ελάχιστη επεξεργασία στον μηχανισμό Power Query.
Μερική αναδίπλωση ερωτήματος Η προέλευση δεδομένων επεξεργάζεται τους μετασχηματισμούς που μπορούν να μεταφράσουν Power Query στην εγγενή γλώσσα ερωτημάτων. Ο Power Query μηχανισμός επεξεργάζεται τους υπόλοιπους μετασχηματισμούς.
Δεν υπάρχει αναδίπλωση ερωτήματος Η προέλευση δεδομένων επιστρέφει τα ζητούμενα δεδομένα προέλευσης χωρίς την επεξεργασία μετασχηματισμών ερωτημάτων. Ο μηχανισμός Power Query επεξεργάζεται όλους τους απαιτούμενους μετασχηματισμούς.

Προελεύσεις δεδομένων που υποστηρίζουν αναδίπλωση ερωτήματος

Η υποστήριξη αναδίπλωσης ερωτήματος εξαρτάται από τη σύνδεση, την προέλευση δεδομένων και τους μετασχηματισμούς στο ερώτημα. Συνδέσεις για δομημένες προελεύσεις δεδομένων με δυνατότητες επεξεργασίας ερωτημάτων, όπως SQL Server και Τροφοδοσία OData, συνήθως υποστηρίζουν αναδίπλωση ερωτημάτων. Οι προελεύσεις χωρίς μηχανή ερωτημάτων, όπως αρχεία CSV και Excel, δεν υποστηρίζουν αναδίπλωση ερωτήματος.

Κατά τη διάρκεια της βελτιστοποίησης, ο μηχανισμός Power Query ενδέχεται να αναδιατάξετε τα βήματα ερωτήματος. Η χρήση μιας προέλευσης δεδομένων με περισσότερους πόρους επεξεργασίας και δυνατότητες αναδίπλωσης ερωτημάτων μπορεί να μειώσει τους χρόνους φόρτωσης ερωτημάτων, επειδή πραγματοποιείται επεξεργασία στην προέλευση δεδομένων αντί στον μηχανισμό Power Query.

Επαλήθευση αναδίπλωσης ερωτήματος στο Power Query Online

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

Όταν είναι διαθέσιμο, χρησιμοποιήστε την Προβολή εγγενούς ερωτήματος ή την Προβολή ερωτήματος προέλευσης δεδομένων για να ελέγξετε την αίτηση που Power Query αποστέλλει στην προέλευση δεδομένων. Η διαθεσιμότητα εξαρτάται από τη σύνδεση.