Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Questo articolo offre una panoramica di base del modo in cui le query M vengono elaborate e trasformate in richieste di origine dati.
script Power Query M
Qualsiasi query, creata da Power Query, scritta manualmente dall'utente nell'editor avanzato o immessa usando un documento vuoto, è costituita da funzioni e sintassi dal linguaggio di formula Power Query M. Questa query viene interpretata e valutata dal motore di Power Query per restituire i risultati. Lo script M funge da set di istruzioni necessarie per valutare la query.
Suggerimento
È possibile considerare lo script M come una ricetta che descrive come preparare i dati.
Il modo più comune per creare uno script M consiste nell'usare l'editor di Power Query. Ad esempio, quando ci si connette a un'origine dati, ad esempio un database SQL Server, si può notare che è presente una sezione denominata passaggi applicati sul lato destro della schermata. In questa sezione vengono visualizzati tutti i passaggi o le trasformazioni usate nella query. In questo senso, l'editor di Power Query funge da interfaccia per creare lo script M appropriato per le trasformazioni successive e garantisce che il codice usato sia valido.
Annotazioni
Lo script M viene usato nell'editor Power Query per:
- Visualizzare la query come una serie di passaggi e consentire la creazione o la modifica di nuovi passaggi.
- Visualizzare una visualizzazione diagramma.
L'immagine precedente evidenzia la sezione passaggi applicati, che contiene i passaggi seguenti:
- Origine: stabilisce la connessione all'origine dati. In questo caso, si tratta di una connessione a un database SQL Server.
- Navigazione: consente di passare a una tabella specifica nel database.
- Rimosse altre colonne: consente di selezionare le colonne della tabella da mantenere.
- Righe ordinate: ordina la tabella usando una o più colonne.
- Righe principali mantenute: filtra la tabella in modo da mantenere solo alcune righe dalla parte superiore della tabella.
Questo set di nomi di passaggi è un modo semplice per visualizzare lo script M che Power Query ha creato per te. Esistono diversi modi per visualizzare lo script M completo. In Power Query è possibile selezionare Editor avanzato nella scheda View. È anche possibile selezionare Editor avanzato dalla scheda Query nel gruppo Home. In alcune versioni di Power Query è anche possibile modificare la visualizzazione della barra della formula per visualizzare lo script di query passando alla scheda View e dal gruppo Layout, selezionare VisualizzazioneScript> ScriptQuery.
La maggior parte dei nomi presenti nel riquadro Passaggi applicati viene utilizzata esattamente come nello script M. I passaggi di una query vengono denominati usando un nome denominato identificatori nel linguaggio M. In alcuni casi i caratteri aggiuntivi vengono racchiusi tra i nomi dei passaggi in M, ma questi caratteri non vengono visualizzati nei passaggi applicati. Un esempio è #"Kept top rows", che viene categorizzato come identificatore tra virgolette a causa di questi caratteri aggiuntivi. È possibile usare un identificatore tra virgolette per consentire l'uso di qualsiasi sequenza di zero o più caratteri Unicode come identificatore, inclusi parole chiave, spazi vuoti, commenti, operatori e segni di punteggiatura. Per altre informazioni sugli identificatori nel linguaggio M, vedere Struttura lessicale.
Tutte le modifiche apportate alla query tramite l'editor di Power Query aggiornano automaticamente lo script M per la query. Ad esempio, usando l'immagine precedente come punto di partenza, se si modifica il nome del passaggio Mantieni le prime righe come prime 20 righe, questa modifica viene aggiornata automaticamente nella visualizzazione script.
Sebbene sia consigliabile usare l'editor di Power Query per creare automaticamente tutti o la maggior parte dello script M, è possibile aggiungere o modificare manualmente parti dello script M. Per altre informazioni sulla lingua M, visitare il sito ufficiale della documentazione per la lingua M.
Annotazioni
Lo script M, detto anche codice M, è un termine usato per qualsiasi codice che usa il linguaggio M Power Query. Nel contesto di questo articolo, lo script M si riferisce anche al codice che si trova all'interno di una query Power Query ed è accessibile tramite la finestra dell'editor avanzato o tramite la visualizzazione script nella barra delle formule.
Valutazione delle query in Power Query
Il diagramma seguente illustra il processo che si verifica quando una query viene valutata in Power Query.
- Lo script M, disponibile nell'editor avanzato, viene inviato al motore di Power Query. Sono incluse anche altre informazioni importanti, ad esempio credenziali e livelli di privacy dell'origine dati.
- Power Query determina quali dati devono essere estratti dall'origine dati e invia una richiesta all'origine dati.
- L'origine dati risponde alla richiesta da Power Query trasferendo i dati richiesti a Power Query.
- Power Query riceve i dati in ingresso dall'origine dati ed esegue qualsiasi trasformazione utilizzando il motore di Power Query, se necessario.
- I risultati derivati dal punto precedente vengono caricati in una destinazione.
Annotazioni
Anche se in questo esempio viene mostrata una query con un database SQL come origine dati, il concetto si applica alle query con o senza un'origine dati.
Quando Power Query legge lo script M, esegue lo script tramite un processo di ottimizzazione per valutare in modo più efficiente la query. In questo processo si determina quali passaggi (trasformazioni) della tua query possono essere delegati all'origine dati. Determina anche quali altri passaggi devono essere valutati usando il motore di Power Query. Questo processo di ottimizzazione viene chiamato query folding, in cui Power Query cerca di trasferire quanto più possibile dell'esecuzione nell'origine dati per ottimizzare l'esecuzione della query.
Importante
Vengono seguite tutte le regole del linguaggio Power Query formula M (noto anche come linguaggio M) . In maniera più evidente, la valutazione differita svolge un ruolo importante durante il processo di ottimizzazione. In questo processo, Power Query comprende quali trasformazioni specifiche della query devono essere valutate. Power Query comprende anche quali altre trasformazioni non devono essere valutate perché non sono necessarie nell'output della query.
Inoltre, quando sono coinvolte più origini, il livello di privacy dei dati di ogni origine dati viene preso in considerazione durante la valutazione della query. Altre informazioni: Dietro le quinte del Firewall per la privacy dei dati
Il diagramma seguente illustra i passaggi da eseguire in questo processo di ottimizzazione.
- Lo script M, disponibile nell'editor avanzato, viene inviato al motore di Power Query. Vengono fornite anche altre informazioni importanti, ad esempio le credenziali e i livelli di privacy dell'origine dati.
- Il meccanismo di ripiegamento delle query invia richieste di metadati all'origine dati per determinare le sue funzionalità, gli schemi delle tabelle, le relazioni tra tabelle diverse e altro ancora.
- In base ai metadati ricevuti, il meccanismo di riduzione delle query determina quali informazioni estrarre dall'origine dati e quale set di trasformazioni deve essere eseguito all'interno del motore di Power Query. Invia le istruzioni a due altri componenti che si occupano di recuperare i dati dall'origine dati e di trasformare i dati in ingresso nel motore di Power Query, se necessario.
- Quando i componenti interni di Power Query ricevono le istruzioni, Power Query invia una richiesta all'origine dati usando una query dell'origine dati.
- L'origine dati riceve la richiesta da Power Query e trasferisce i dati al motore di Power Query.
- Quando i dati si trovano all'interno di Power Query, il motore di trasformazione all'interno di Power Query (noto anche come motore mashup) esegue le trasformazioni che non possono essere deferite o scaricate sull'origine dati.
- I risultati derivati dal punto precedente vengono caricati in una destinazione.
Annotazioni
A seconda delle trasformazioni e dell'origine dati usata nello script M, Power Query determina se trasmette o memorizza nel buffer i dati in ingresso.
Panoramica della riduzione delle query
L'obiettivo dell'integrazione delle query mira a trasferire il più possibile la valutazione di una query a un'origine dati in grado di calcolare le operazioni della query.
Il meccanismo di riduzione delle query raggiunge questo obiettivo traducendo il tuo script M in un linguaggio che l'origine dati può interpretare ed eseguire. Trasferisce quindi la valutazione all'origine dati e invia il risultato di tale valutazione a Power Query.
Questa operazione offre spesso un'esecuzione di query più veloce rispetto all'estrazione di tutti i dati necessari dall'origine dati e all'esecuzione di tutte le trasformazioni necessarie nel motore di Power Query.
Quando si utilizza l'esperienza di acquisizione dati get, Power Query guida nel processo per connettersi all'origine dati. In questo caso, Power Query usa una serie di funzioni nel linguaggio M classificate come accessing data functions. Queste funzioni specifiche usano meccanismi e protocolli per connettersi all'origine dati usando un linguaggio comprensibile per l'origine dati.
Tuttavia, i passaggi che seguono nella query sono i passaggi o le trasformazioni che il meccanismo di riduzione delle query tenta di ottimizzare. Controlla quindi se possono essere trasferiti all'origine dati invece di essere elaborati usando il motore Power Query.
Importante
Tutte le funzioni dell'origine dati, comunemente visualizzate come passaggio Origine di una query, interrogano i dati presso l'origine nel suo linguaggio nativo. Il meccanismo di piegatura delle query viene usato in tutte le trasformazioni applicate alla query dopo la funzione dell'origine dati. Possono quindi essere tradotti e combinati in una singola query di origine dati o in un numero di trasformazioni che possono essere scaricate nell'origine dati.
A seconda della struttura della query, potrebbero esserci tre possibili risultati per il meccanismo di riduzione delle query:
- Piegature complete delle query: quando tutte le trasformazioni di query vengono eseguite nell'origine dati e l'elaborazione minima si verifica nel motore di Power Query.
- Riduzione parziale delle query: quando solo alcune trasformazioni nella query, e non tutte, possono essere applicate all'origine dati. In questo caso, solo un subset delle trasformazioni viene eseguito nell'origine dati e le altre trasformazioni di query si verificano nel motore di Power Query.
- Nessuna riduzione delle query: quando la query contiene trasformazioni che non possono essere convertite nel linguaggio di query nativo dell'origine dati, perché le trasformazioni non sono supportate o il connettore non supporta la riduzione delle query. In questo caso, Power Query ottiene i dati non elaborati dall'origine dati e usa il motore di Power Query per ottenere l'output desiderato elaborando le trasformazioni necessarie a livello di motore di Power Query.
Annotazioni
Il meccanismo di riduzione delle query è disponibile principalmente nei connettori per origini dati strutturate, ad esempio SQL Server e OData Feed. Durante la fase di ottimizzazione, il motore potrebbe talvolta riordinare i passaggi nella query.
L'uso di un'origine dati con più risorse di elaborazione e con funzionalità di riduzione delle query può accelerare i tempi di caricamento delle query man mano che l'elaborazione avviene nell'origine dati e non nel motore di Power Query.