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.
Esplora dati di Azure è un servizio di esplorazione dati rapido e a scalabilità elevata per dati di log e di telemetria. Power BI è una soluzione di analisi aziendale che consente di visualizzare i dati e condividere i risultati nell'organizzazione. Con i parametri M dinamici, è possibile creare report di Power BI che consentono ai visualizzatori di usare filtri o filtri dei dati per impostare i valori per i parametri di query KQL.
In questo articolo si inizierà con un nuovo progetto di Power BI e si useranno i dati di esempio per creare un report che usa un filtro dei dati per filtrare i dati, in una query M dinamica collegata a una funzione KQL.
Prerequisiti
Per completare questo articolo, è necessario quanto segue:
- Un account Microsoft o un'identità utente di Microsoft Entra per accedere al cluster della Guida.
- Power BI Desktop (selezionare SCARICA GRATUITAMENTE)
- Abilitazione dei parametri di query M dinamici
Aggiungere una connessione direct query alla funzione KQL
Prima di tutto, configurare un connettore per Power BI.
Nella scheda Home di Power BI Desktop selezionare Recupera dati e quindi Altro.
Cercare Azure Esplora dati, selezionare Azure Esplora dati e quindi Connetti.
Nella schermata del connettore compilare il modulo con le informazioni seguenti.
Impostazione Valore Descrizione campo Cluster https://help.kusto.windows.net L'URL del cluster della guida. Per altri cluster, l'URL è nel formato https://<ClusterName>.<Area>.kusto.windows.net. Database Lasciare vuoto Un database ospitato nel cluster con cui si effettua la connessione. Questo verrà selezionato in un passaggio successivo. Nome tabella Lasciare vuoto Una delle tabelle nel database o una query come StormEvents | take 1000
. Questo verrà selezionato in un passaggio successivo.Opzioni avanzate Lasciare vuoto Opzioni per le query, ad esempio dimensioni del set di risultati. Modalità connettività dati DirectQuery Determina se Power BI importa i dati o si connette direttamente per le query M dinamiche. Nota
In modalità importazione i dati vengono spostati in Power BI. In modalità DirectQuery , i dati vengono sottoposti a query direttamente dal cluster.
Usare la modalità importazione quando:
- Il set di dati è di piccole dimensioni.
- Non sono necessari dati quasi in tempo reale.
- I dati sono già aggregati o si eseguono aggregazioni in Kusto
Usare la modalità DirectQuery quando:
- Il set di dati è molto grande.
- Sono necessari dati quasi in tempo reale.
Opzioni avanzate
Impostazione Valore di esempio Descrizione campo Limitare il numero di record dei risultati della query 300000
Numero massimo di record da restituire nel risultato Limitare le dimensioni dei dati dei risultati della query 4194304
Dimensione massima dei dati in byte da restituire nel risultato Disabilitare il troncamento del set di risultati true
Abilitare/disabilitare il troncamento dei risultati usando l'opzione di richiesta di notruncation Istruzioni set aggiuntive set query_datascope=hotcache
Imposta le proprietà della richiesta per la durata della query. Le proprietà della richiesta controllano il modo in cui una query viene eseguita e restituisce i risultati. Se non si ha già una connessione al cluster della guida, accedere. Accedere con un account aziendale e quindi selezionare Connetti.
Nella schermata Strumento di navigazione eseguire le operazioni seguenti:
- Espandere il database Samples .
- Selezionare la funzione EventsByStates .
- Per EventTypeParam immettere High Wind e quindi selezionare Applica per visualizzare in anteprima i dati.
- Selezionare Trasforma dati.
La funzione viene aperta come query M dinamica in editor di Power Query, in cui si procede alla creazione di un parametro da usare con la query M dinamica.
Nota
La funzione EventsByStates è una funzione di esempio di sola lettura che è possibile usare per testare le funzionalità dei parametri di query Dynamic M. Definisce la versione finale che supporta più valori e seleziona tutti i valori per il parametro . Se si vuole testare la funzionalità di selezione singola nel proprio cluster e testare progressivamente la funzionalità, è possibile iniziare con la definizione di selezione singola seguente della funzione.
.create-or-alter function EventsByStates (EventTypeParam:string) { StormEvents | where EventType == EventTypeParam | summarize Events=count() by EventType, State }
Nella editor di Power Query eseguire le operazioni seguenti:
Selezionare Gestisci parametri>Nuovo parametro.
Compilare i dettagli con le informazioni seguenti e quindi selezionare OK.
Impostazione Valore suggerito Description Name Type_Param Nome del parametro. È consigliabile aggiungere un suffisso, ad esempio _Param, che consente di riconoscerlo e distinguerlo facilmente da altri parametri che è possibile creare. Type Text Il tipo di parametro. Il tipo del parametro deve corrispondere al tipo dichiarato nella funzione KQL. Il testo in Power BI equivale alla stringa in KQL. Valore corrente Alto vento Valore del parametro . È necessario specificare un valore predefinito per questo campo.
Nella schermata di spostamento sostituire il valore del parametro della funzione M con il nuovo parametro.
Facoltativamente, ripetere i passaggi per creare altri parametri e sostituirli nella query M dinamica.
Creare una tabella con valori per il filtro dei dati del report.
Nota
Nella tabella verranno elencati i tipi di evento da filtrare. È possibile importare la tabella o creare una nuova tabella e immettere manualmente i dati.
Nella scheda Home selezionare Origini recenti e quindi selezionare il cluster della Guida.
Nella schermata Strumento di navigazione espandere il database Samples , selezionare la tabella StormEvents e quindi selezionare OK.
Nella finestra di dialogo Impostazioni connessione selezionare Importa e quindi selezionare OK.
Fare clic con il pulsante destro del mouse sulla colonna EventType e quindi scegliere Rimuovi altre colonne.
Fare di nuovo clic con il pulsante destro del mouse sulla colonna EventType e quindi scegliere Rimuovi duplicati.
Facoltativamente, aggiungere un'altra colonna per definire l'ordinamento per i valori del filtro dei dati.
Rinominare la tabella in SlicerValues.
Nella scheda Home selezionare Chiudi e applica.
Nota
Viene visualizzato un avviso di finestra di dialogo relativo al rischio di sicurezza. Fare clic su OK per continuare. Il motivo per cui viene visualizzata la finestra di dialogo è che Power BI aggiunge una seconda origine dati. Per altre informazioni, vedere Livelli di privacy di Power BI Desktop. Tuttavia, il modo in cui vengono usate le origini dati in questo esempio è perfettamente sicuro.
Associare la colonna EventType nella tabella SlicerValues al parametro .
- Selezionare la visualizzazione Modello a sinistra.
- Nella tabella SlicerValues selezionare la colonna EventType.
- Nel riquadro Proprietà espandere Avanzate.
- In Associa al parametro selezionare Type_Param. In questo modo la colonna EventType viene associata al parametro .
Nota
Viene visualizzato un avviso di finestra di dialogo relativo al rischio di sicurezza. Fare clic su Continua per continuare. Il motivo per cui viene visualizzata la finestra di dialogo è che Power BI invia dati da un'origine a un'altra. Per altre informazioni, vedere Livelli di privacy di Power BI Desktop. Tuttavia, il modo in cui viene usato il parametro in questo esempio è perfettamente sicuro.
Visualizzare i dati in un report
Ora che sono presenti dati in Power BI Desktop, è possibile creare report basati su tali dati. Verrà creato un report semplice con una tabella che mostra il riepilogo degli eventi in base allo stato e un filtro dei dati per filtrare la tabella in base al tipo di evento.
Selezionare la visualizzazione Report a sinistra.
Aggiungere la tabella al report.
- Nel riquadro Visualizzazione selezionare Tabella. Viene aggiunta una tabella vuota all'area di disegno del report.
- Nel riquadro Campi espandere EventsByStatese selezionare Stato ed Eventi. È ora disponibile una tabella che mostra il riepilogo degli eventi in base allo stato.
Aggiungere il filtro dei dati al report.
- Nel riquadro Visualizzazione selezionare Filtro dei dati. Un filtro dei dati vuoto viene aggiunto all'area di disegno del report.
- Nel riquadro Campi espandere SlicerValues e selezionare EventType. È ora disponibile un filtro dei dati che mostra i tipi di evento.
Il report è ora pronto per essere visualizzato. Si noti che quando si selezionano i valori del tipo di evento nel filtro dei dati, la tabella basata sulla query M viene filtrata in base al tipo di evento associato al parametro della query M.
Salva il report.
Accettazione di più valori di parametro
Se si desidera filtrare in base a più valori di parametro nel filtro dei dati, è possibile ottenere questo risultato modificando le proprietà della colonna EventType e modificando la funzione KQL, come indicato di seguito:
Modificare le proprietà della colonna EventType nella tabella SlicerValues .
- Selezionare la visualizzazione Modello a sinistra.
- Nella tabella SlicerValues selezionare la colonna EventType.
- Nel riquadro Proprietà espandere Avanzate e attivare l'impostazione Selezione multipla.
Modificare la funzione KQL impostando il tipo di parametro su dinamico e modificando la
where
condizione per controllare l'elenco dei valori dei parametri..create-or-alter function EventsByStates (EventTypeParam:dynamic) { StormEvents | where EventType in (EventTypeParam) | summarize Events=count() by EventType, State }
È ora possibile tornare al report e selezionare più tipi di evento nel filtro dei dati.
Accettazione di tutti i valori dei parametri
Se si desidera filtrare in base a tutti i valori dei parametri nel filtro dei dati, è possibile ottenere questo risultato modificando le proprietà della colonna EventType , modificando la funzione KQL e aggiornando il controllo filtro dei dati, come indicato di seguito:
Modificare le proprietà della colonna EventType nella tabella SlicerValues .
- Selezionare la visualizzazione Modello a sinistra.
- Nella tabella SlicerValues selezionare la colonna EventType.
- Nel riquadro Proprietà espandere Avanzate e attivare l'impostazione Seleziona tutto.
- Facoltativamente, modificare l'impostazione Seleziona tutto il valore . In questo esempio si userà il valore predefinito SelectAll.
Aggiornare il controllo filtro dei dati per visualizzare l'opzione Seleziona tutto .
- Selezionare la visualizzazione Report a sinistra.
- Selezionare il filtro dei dati EventType.
- Nel riquadro Visualizzazioni selezionare Formato, espandere Controlli di selezione e attivare l'opzione Mostra "Seleziona tutto". Il filtro dei dati del tipo di evento mostra l'opzione seleziona tutto nella parte superiore dell'elenco.
Modificare la funzione KQL impostando il tipo di parametro su dinamico e modificando la
where
condizione per verificare la presenza del valore SelectAll o dell'elenco dei valori dei parametri..create-or-alter function EventsByStates (EventTypeParam:dynamic) { StormEvents | where ("__SelectAll__" in (EventTypeParam)) or (EventType in (EventTypeParam)) | summarize Events=count() by EventType, State }
È ora possibile tornare al report e selezionare tutti i tipi di evento nel filtro dei dati.
Considerazioni e limitazioni
Esistono alcune considerazioni e limitazioni da considerare quando si usano parametri di query M dinamici:
- Non è possibile associare un singolo parametro a più campi, né viceversa.
- I tipi di parametro seguenti non sono supportati:
- Any
- Durata
- True / False
- Binario
- I filtri seguenti non sono supportati:
- Filtro dei dati o filtro per intervallo di tempo relativo
- Data relativa
- Filtro dei dati della gerarchia
- Filtro di inclusione multicampo
- Escludi filtro/Non filtri
- Evidenziazione incrociata
- Filtro di drill-down
- Filtri di cross-drill
- Filtro Top N
Pulire le risorse
Se il report creato per questo articolo non è più necessario, eliminare il file di Power BI Desktop (con estensione pbix).