Procedure consigliate per prestazioni più veloci nell'analisi incorporata di Power BI
Questo articolo contiene suggerimenti su come velocizzare il rendering di report, dashboard e riquadri nell'applicazione.
Nota
Tenere presente che il tempo di caricamento dipende principalmente dagli elementi rilevanti per il report e dai dati, inclusi gli oggetti visivi, le dimensioni dei dati e la complessità delle query e delle misure. Per altre informazioni, vedere la Guida all'ottimizzazione per Power BI.
Aggiornare strumenti e pacchetti SDK
Mantenere gli strumenti e i pacchetti SDK aggiornati.
- Usare la versione più recente di Power BI Desktop.
- Installare la versione più recente dell'SDK del client Power BI. Vengono continuamente rilasciati miglioramenti aggiuntivi, quindi è opportuno verificarne regolarmente la disponibilità.
- Usare la versione più recente di Tabular Editor.
Inizializzare l'incorporamento
Precaricamento
Usare powerbi.preload()
per migliorare le prestazioni per l'utente finale. Il metodo powerbi.preload()
scarica JavaScript, file con estensione css e altri elementi, che vengono usati in seguito per l'incorporamento di un report.
Se non si incorpora immediatamente il report, chiamare powerbi.preload()
. Ad esempio, se il contenuto di Power BI incorporato non viene visualizzato nella home page, usare powerbi.preload()
per scaricare e memorizzare nella cache gli elementi usati per incorporare il contenuto.
Bootstrap dell'iFrame
Nota
Per eseguire il bootstrap dell'iFrame è necessario Power BI client SDK versione 2.9.
powerbi.bootstrap(element, config)
consente di iniziare l'incorporamento prima che siano disponibili tutti i parametri necessari. L'API di bootstrap prepara e inizializza l'iFrame.
Quando si usa l'API di bootstrap, è comunque necessario chiamare powerbi.embed(element, config)
sullo stesso elemento HTML.
Ad esempio uno dei casi d'uso di questa funzionalità è l'esecuzione in parallelo del bootstrap dell'iFrame e delle chiamate back-end per l'incorporamento.
Suggerimento
Usare l'API di bootstrap quando è possibile generare l'iFrame prima che sia visibile per l'utente finale.
Quando si incorporano un report o altri elementi di Power BI, assicurarsi che il contenitore di incorporamento faccia parte del DOM e che l'attributo CSS di visualizzazione non sia impostato su nessuno perché ciò può causare comportamenti imprevisti. Se si vuole nascondere il contenitore di incorporamento, è consigliabile usare l'attributo CSS di visibilità.
Parametri di incorporamento
Il metodo powerbi.embed(element, config)
riceve un elemento e un parametro di configurazione. Il parametro config include campi con implicazioni sulle prestazioni.
URL di incorporamento
Evita di generare manualmente l'URL di incorporamento. Assicurarsi invece di ricevere l'URL di incorporamento chiamando l'API Get Reports, Get dashboards o Get tiles. Il parametro config nell'URL viene usato per migliorare le prestazioni.
Autorizzazioni
Concedere le autorizzazioni per la visualizzazione se non si prevede di incorporare un report in modalità di modifica. In questo modo, non viene dedicato tempo all'inizializzazione dei componenti usati solo in modalità di modifica.
Filtri, segnalibri e filtri dei dati
In genere, gli oggetti visivi del report vengono salvati con i dati memorizzati nella cache. I report eseguono il rendering dei dati memorizzati nella cache durante l'esecuzione delle query. Se vengono specificati filtri, segnalibri o filtri dei dati, i dati memorizzati nella cache non sono usati e il rendering degli oggetti visivi viene eseguito solo dopo il termine della query.
Se si incorporano report con gli stessi filtri, segnalibri e filtri dei dati, salvare il report con i filtri, i segnalibri e i filtri dei dati già applicati. Quando si salva il report in questo modo, viene eseguito il rendering usando i dati memorizzati nella cache che includono i filtri, i segnalibri e i filtri dei dati, migliorando così le prestazioni.
Spostamento tra report
Quando si incorporano più report nello stesso iFrame, non generare un nuovo iFrame per ogni report. Invece, incorporare il nuovo report nello stesso iFrame per sovrascrivere il report precedente. Usare powerbi.embed(element, config)
con una configurazione diversa per incorporare il nuovo report.
Nota
L'incorporamento di report usando l'incorporamento per i clienti (noto anche come scenario "I dati sono di proprietà dell'app") richiede l'uso di un token di incorporamento con autorizzazioni per tutti i report e i modelli semantici. Per altre informazioni, vedere Generate token API (Generare token dell'API).
Più oggetti visivi
Quando si incorporano più oggetti visivi dello stesso report, non generare un nuovo iFrame per ogni oggetto visivo. Usare un singolo iFrame per eseguire il rendering del report con gli oggetti visivi specificati.
Quando si incorporano più oggetti visivi in un singolo iFrame, considerare i punti seguenti:
Power BI usa iFrame per incorporare un report. In alcuni casi potrebbe essere necessario aggiungere altri contenuti tra gli oggetti visivi, ad esempio testo o grafica che non provengono dal report. In tal caso, potrebbe essere necessario un iFrame diverso per eseguire il rendering di oggetti visivi diversi. Per ottenere prestazioni ottimali, provare a disporre gli oggetti visivi in modo da usare il minor numero possibile di iFrame. Per ridurre il numero di iFrame, è consigliabile usare la funzionalità di layout personalizzato.
Se si hanno oggetti visivi di report o modelli semantici diversi, è consigliabile unire i modelli semantici e creare un nuovo report in modo che sia possibile includere tutti gli oggetti visivi nello stesso iFrame.
Un'altra alternativa, se sono presenti aree non contigue o dati da più modelli semantici, consiste nel creare un dashboard e aggiungere gli oggetti visivi. In questo modo è possibile:
- Incorporare i singoli riquadri in iFrame non contigui. I riquadri del dashboard sono più leggeri rispetto ai report e vengono caricati più velocemente.
- Incorporare l'intero dashboard in un iFrame. In questo modo è possibile avere oggetti visivi di report o modelli semantici diversi in un iFrame senza creare un nuovo report.
Tenere presente, tuttavia, che i riquadri del dashboard non sono interattivi e non si aggiornano con la stessa frequenza degli oggetti visivi.
Memorizzazione di query nella cache
Le organizzazioni con capacità Power BI Premium o Power BI Embedded possono sfruttare la memorizzazione di query nella cache per velocizzare la produzione di report associati a un modello semantico.
Altre informazioni sulla memorizzazione di query nella cache in Power BI.
Misurare le prestazioni
Eventi di prestazioni
Per misurare le prestazioni incorporate, è possibile usare due eventi:
- Evento caricato: tempo di inizializzazione del report. Il logo di Power BI scomparirà al termine del caricamento.
- Evento con rendering: tempo necessario per il rendering completo del report usando i dati effettivi. L'evento con rendering viene generato ogni volta che il report viene di nuovo sottoposto a rendering, ad esempio, dopo l'applicazione di filtri. Per misurare un report, assicurarsi di eseguire i calcoli sul primo evento generato.
Il rendering dei dati memorizzati nella cache viene eseguito quando disponibile ma non viene generato un altro evento.
Altre informazioni sulla gestione degli eventi.
Analizzatore prestazioni
Per esaminare le prestazioni degli elementi del report, è possibile usare l'analizzatore prestazioni in Power BI Desktop. L'analizzatore prestazioni consente di visualizzare e registrare log che misurano le prestazioni di ogni report.
Altre informazioni sull'analizzatore prestazioni.
Nota
Ricordarsi sempre di confrontare le prestazioni del report incorporato con le prestazioni in powerbi.com. Questo può essere utile per comprendere l'origine dei problemi di prestazioni