在 Power BI 內嵌式分析中加快效能的最佳做法

本文提供在應用程式中更快轉譯報表、儀表板和磚的建議。

注意

請記住,載入時間主要取決於報表和資料本身的相關元素,包括視覺效果、資料大小,以及查詢和量值的複雜度。 如需詳細資訊,請參閱 Power BI 優化指南

更新工具和 SDK 套件

讓工具和 SDK 套件保持在最新狀態。

初始化內嵌

預先載入

使用 powerbi.preload() 來改善使用者效能。 方法 powerbi.preload() 會下載 JavaScript、css 檔案和其他 專案 ,稍後會用來內嵌報表。

如果您未立即內嵌報表,請呼叫 powerbi.preload() 。 例如,如果內嵌的 Power BI 內容未出現在首頁中,請使用 powerbi.preload() 下載和快取用於內嵌內容的專案。

啟動載入 iFrame

注意

需要 Power BI 用戶端 SDK 2.9 版才能啟動 iFrame。

powerbi.bootstrap(element, config) 可讓您在所有必要的參數可供使用之前開始內嵌。 啟動程式 API 會準備並初始化 iFrame。 使用啟動程式 API 時,仍然需要在相同的 HTML 元素上呼叫 powerbi.embed(element, config)

例如,這項功能的其中一個使用案例是平行執行 iFrame 啟動程式,以及內嵌的後端呼叫。

提示

盡可能使用啟動程式 API 來產生 iFrame,使用者才能看見它。

內嵌報表或其他 Power BI 專案時,請確定內嵌容器是 DOM 的一部分,而且顯示 CSS 屬性不會設定為 ,因為這可能會造成非預期的行為。 如果您想要隱藏內嵌容器,請考慮使用 visibility CSS 屬性。

內嵌參數

方法 powerbi.embed(element, config) 會接收專案和 config 參數。 config 參數包含具有效能影響的欄位。

內嵌 URL

請勿自行產生內嵌 URL。 相反地,請務必呼叫 取得報表 取得儀表板 取得磚 API 來取得內嵌 URL。 URL 中的組態 參數用於效能改善。

權限

如果您不打算在編輯模式中內嵌報表,請提供 檢視 許可權。 如此一來,不會花費時間初始化只用于編輯模式的元件。

篩選、書簽和交叉分析篩選器

報表視覺效果通常會與快取的資料一起儲存。 執行查詢時,報表會轉譯快取的資料。 如果提供篩選、書簽或交叉分析篩選器,則不會使用快取的資料,而且只有在視覺效果查詢結束之後才會轉譯視覺效果。

如果您使用相同的篩選、書簽和交叉分析篩選器來內嵌報表,請儲存已套用篩選、書簽和交叉分析篩選器的報表。 以這種方式儲存報表時,它會使用包含篩選、書簽和交叉分析篩選器的快取資料來轉譯,進而改善效能。

在報表之間切換

將多個報表內嵌至相同的空間時,請勿為每個報表產生新的 iFrame 。 請改為將新報表內嵌在相同的 iFrame 中,以覆寫先前的報表。 使用不同的 powerbi.embed(element, config) 組態來內嵌新報表。

注意

針對您的客戶使用內嵌來內嵌報表(也稱為「應用程式擁有資料」案例),需要使用內嵌權杖並具有所有報表和語意模型的許可權。 如需詳細資訊,請參閱 產生權杖 API

多個視覺效果

從相同的報表內嵌數個視覺效果時,請勿為每個視覺效果產生新的 iFrame 。 使用單一 iFrame 來 轉譯具有指定視覺效果的 報表 。

將多個視覺效果內嵌至單一 iFrame 時,請考慮下列幾點:

  • Power BI 會使用 iFrame 來內嵌報表。 有時候,您可能會想要在視覺效果之間新增更多內容(例如,不是來自報表的文字或圖形)。 在此情況下,您可能需要不同的 iFrame 來轉譯不同的視覺效果。 為了獲得最佳效能,請嘗試並排列視覺效果,以便盡可能使用最少的 iFrame。 若要減少 iFrame 的數目,請考慮使用 自訂版面配置功能

  • 如果您有來自不同報表的視覺效果或不同的語意模型,請考慮聯結語意模型並建立新的報表,讓您可以在相同的 iFrame 中包含所有視覺效果。

  • 如果您有非連續區域或來自多個語意模型的資料,另一個替代方法是建立 儀表板,並將視覺效果釘選到該儀表板 。 這可讓您:

    • 將個別 內嵌至非連續的 iFrame。 儀表板磚比報表更輕,載入速度較快。
    • 將整個儀表板內嵌至一個 iFrame。 這可讓您在一個 iFrame 中擁有不同報表或語意模型的視覺效果,而不需要建立新的報表。

    不過,請記住,儀表板磚不是互動式的,而且不會 以與視覺效果相同的頻率重新整理

查詢快取

具有 Power BI 進階版 容量或 Power BI Embedded 容量的組織可以利用查詢快取來加速與語意模型相關聯的報表。

深入瞭解 Power BI 中的查詢快取。

測量效能

效能事件

若要測量內嵌效能,您可以使用兩個事件:

  1. 載入事件:報表初始化前的時間(Power BI 標誌會在載入完成時消失)。
  2. 轉譯的事件:使用實際資料完整轉譯報表的時間。 每次重新轉譯報表時都會引發轉譯的事件(例如,套用篩選之後)。 若要測量報表,請確定您在第一個引發的事件上進行計算。

當可用但不會產生其他事件時,會轉譯快取的資料。

深入瞭解事件處理

效能分析器

若要檢查報表專案的效能,您可以使用 Power BI Desktop 中的效能分析器。 效能分析器可讓您查看和記錄記錄,以測量每個報表元素的執行方式。

深入瞭解效能分析器

注意

請務必記得將內嵌報表效能與 powerbi.com 上的效能進行比較。 這可能有助於瞭解效能問題的來源