共用方式為


使用最佳化功能區的 DirectQuery 最佳化案例

在本文中,我們將介紹幾個 DirectQuery 報表製作案例,展示如何簡化 Power BI Desktop 中最佳化功能區的體驗。 使用最佳化功能區,您可以使用 [暫停視覺效果] 和 [重新整理視覺效果] 功能控制視覺效果何時重新整理,使用 [最佳化預設] 快速套用預先定義的設定,並輕鬆啟動效能分析器以更深入地了解査詢本身,包括 DirectQuery 產生的 SQL 査詢。 我們還將展示如何在 [模型] 檢視的 [屬性] 窗格中直接編輯關聯性,而無需 執行査詢來預覽或驗證資料。

在瀏覽這些案例之前,請務必首先查看 Power BI Desktop 中的最佳化功能區,該功能區為這些精彩功能提供了很好的介紹。

執行査詢的情况下變更 DirectQuery 報表

首先,讓我們看看如何透過暫停視覺效果來提高報表製作效能,以便每次我們進行變更時,它們不會向資料來源傳送査詢。 在最佳化功能區中,我們選取 [暫停視覺效果]。 暫停時,視覺效果只有在不需要傳送査詢時才會更新。 如果視覺效果確實需要傳送査詢,則視覺效果將進入擱置狀態。 處於擱置狀態時,視覺效果仍然顯示在引入變更之前的外觀 (爲了內容)、工具提示也會停用,因此它們也不會傳送任何査詢。 現在,我們可以在欄位中新增或移除多資料行或度量,重新排序欄位,甚至使用 [篩選] 窗格篩選視覺效果,並且不會傳送任何査詢!

完成所有變更後,我們在視覺效果上選取 [重新整理] 以僅傳送一次査詢,在橫幅或功能區上選取 [重新整理] 以使頁面上的所有視覺效果僅傳送一次査詢,或在橫幅上選取 [繼續視覺效果査詢] 或在最佳化功能區中選取 [已暫停的視覺效果],以使所有視覺效果立即傳送査詢進行更新,並繼續傳送包含任何其他變更的査詢。

讓我們進一步探討暫停視覺效果工作流程:

提示:有時很難看到頁面上影像的詳細資料。 請務必使用瀏覽器的縮放功能!

暫停視覺效果流程圖

在以下動畫中,我們展示將兩個度量票價每次行程的平均票價新增至頁面上的兩個視覺效果工具提示中,在欄位井中重新排序,然後從橫幅中繼續視覺效果。

在準備好動畫之前,在不執行査詢的情况下對現有 directquery 報表進行變更

如果沒有暫停視覺效果,每次在欄位中新增或移動度量時,都會向 DirectQuery 資料來源傳送新的視覺效果査詢。 每個視覺效果有三個査詢,因此在這種情況下傳送了個査詢。 透過使用暫停視覺效果,每次新增或移動度量時,都不會傳送任何査詢。 繼續報表時只傳送兩個査詢。 對於此簡單的報表變更,不執行四個額外的査詢可以節省時間,也不會浪費寶貴的資料來源資源。

無需執行査詢即可建立新的視覺效果

最佳化功能區中,我們選取 [暫停視覺效果]。 然後,我們從 [視覺效果] 窗格中新增矩陣視覺效果,然後將 [行程]、[週中的日] 和 [一天中的時間] 新增至我們的新矩陣視覺效果中。 暫停時,矩陣視覺效果將進入擱置狀態 - 不傳送任何査詢。 現在,我們重新排序欄位,但同樣沒有傳送任何査詢。 讓我們開啟 [篩選] 窗格,引入年份,然後篩選至 2013 年。 此時,在進行任何變更之前,查看視覺效果會有所幫助。 我們可以在擱置視覺效果橫幅中選取 [重新整理],或開啟 [選取項目] 窗格以重新整理其中的視覺效果。 我們只傳送了一個査詢,並且該査詢已預先篩選,加快了傳回時間並减少了對資料來源的影響。 我們可以對視覺效果進行格式變更,甚至在報表暫停狀態下顯示這些變更,因為不需要 DAX 査詢。 但是,新增背景色彩格式變更確實需要査詢,因此視覺效果將進入擱置狀態。 就緒後,我們可以重新整理或繼續視覺效果査詢,以查看最終的矩陣視覺效果。

在建立新視覺效果時使用暫停視覺效果

建立新的視覺效果

在沒有使用暫停視覺效果的情況下,每次在欄位中新增或移動度量或資料行時,都會向 DirectQuery 資料來源傳送新的視覺效果査詢。 這是在我們開始格式化之前的個査詢,其中五個是在我們將視覺效果篩選至單一年份之前。 現在,藉由暫停視覺效果,每次新增或移動度量或資料行時,都不會傳送任何査詢。 當重新整理視覺效果或繼續報表時,只傳送個査詢,並且它們是經過篩選的査詢。 對於此新的視覺效果新增,避免額外的査詢不僅節省了時間,也沒有浪費寶貴的資料來源資源,我們還執行了更小、更有具目標性的査詢,並以最小的中斷對視覺效果進行了格式化。

重新整理視覺效果的情况下建立度量

與先前的案例一樣,在最佳化功能區中,我們選取 [暫停視覺效果],使報表進入暫停狀態。 通常,在 DirectQuery 報表中,每當建立新度量時,報表頁面上的所有視覺效果都會重新整理。 但是,在報表處於暫停狀態時,我們可以在不傳送査詢的情况下建立新的度量。 相反,視覺效果處於擱置狀態。 我們可以將這些度量新增至待定的視覺效果中。 然後,我們可以重新整理個別視覺效果,查看新度量的結果,或者在完成後簡單地繼續視覺效果査詢。

在建立新度量時使用暫停視覺效果

在 DirectQuery 模型中建立度量,無需重新整理視覺效果,直到您準備好動畫

在不使用暫停視覺效果的情况下,每次建立度量時,所有視覺效果都會向 DirectQuery 資料來源傳送査詢。 這是頁面上的五個視覺效果,每個模型變更都會傳送五個査詢。 當只建立個新度量並將這些度量新增至單一視覺效果中時,會有很多査詢! 藉由暫停視覺效果,每次建立度量或將度量新增至視覺效果時,都不會傳送任何査詢。 重新整理單一視覺效果時,只傳送六個査詢,然後繼續報表。 對於這些模型化變更,我們看到査詢和等待這些査詢傳回資料的時間大大减少。 我們還大大减少了資料來源的工作負載。

編輯 DirectQuery 資料表之間的關聯性

若要在 Power BI Desktop 的 [模型] 檢視中編輯兩個 DirectQuery 資料表之間的關聯性,我們現在只需在 [屬性] 窗格中選取這些資料表之間的關聯性行即可進行編輯! 我們可以變更資料表、資料行、基數、方向,使其處於使用中或非使用中狀態,如果確信每個資料表都沒有缺少另一個資料表中存在的值,則甚至可以啟用參考完整性。 完成後,我們選取 [套用變更]。 我們還可以按住 Ctrl 以選取多個關聯性,在 [屬性] 窗格中進行大量變更,或使用 Delete 鍵删除它們。

在 [屬性] 窗格中編輯關聯性

在 [屬性] 窗格中編輯關聯性動畫

無法在 [屬性] 窗格中編輯關聯性,每次變更關聯性時,都會在開啟對話方塊以顯示資料預覽時傳送査詢。 每當資料表或資料行發生變更時,都會傳送査詢以驗證關聯性的基數和方向。 現在,藉由最佳化,在 [屬性] 窗格中編輯關聯性時,我們不會傳送任何査詢,只有在準備就緒並且我們選取了 [套用變更] 按鈕時,才會驗證關聯性。

套用査詢縮小設定

如果我們在最佳化功能區中選取 [最佳化預設] 下拉式清單,然後為我們的報表選取 [査詢縮小],則會出現描述套用之設定的對話方塊。

針對査詢縮小畫面影像進行了最佳化

交叉醒目提示和交叉篩選是在選取資料點時視覺效果相互互動的方式。 預設 Power BI Desktop 交叉醒目提示。 我們可以透過移至 [檔案]>[選項和設定]>[選項]>[報表設定],然後選取 [將預設視覺效果互動從交叉醒目提示變更為交叉篩選],將預設變更為交叉篩選。

交叉篩選報表設定

最佳化預設僅關閉預設的交叉醒目顯示和交叉篩選,因此使用編輯互動在視覺效果層級進行的任何自訂都不會受到影響。 如果我們選取任何視覺效果 (1) 來顯示格式功能區,然後選取 [編輯互動] (2),則會在報表中顯示其他視覺效果的選項 (3)。 然後,我們可以决定在視覺效果中選取資料點時它們將如何變更。 在這種情況下,從交叉篩選或交叉醒目提示到完全不互動。 讓我們深入探討工作流程:

編輯互動畫面影像

如果我們自訂了任何編輯互動,預設停用交叉醒目提示和交叉篩選的最佳化預設不會變更此自訂。 視覺效果之間的任何自訂編輯互動仍然像以前一樣有效。

然後,我們將 [套用] 按鈕新增至交叉分析篩選器中。 我們報表中的每個交叉分析篩選器現在都有 [套用] 按鈕,使用者可以在每個交叉分析篩選器中選取或取消選取多個選項,並且在選取 [套用] 按鈕之前不讓報表中的任何其他視覺效果傳送査詢。 交叉分析篩選器仍然彼此獨立,因此如果我們有兩個具有 [套用] 按鈕的交叉分析篩選器,則必須選取每個 [套用] 按鈕來套用交叉分析篩選器選取項目。

交叉分析篩選器上的 [套用] 按鈕

[應用] 按鈕新增至篩選窗格。 [篩選窗格] 按鈕為窗格中的所有篩選選取項目新增了控制項,但只有一個 [套用] 按鈕。 若要深入了解,請參閱 Power BI 報表中的格式篩選 - 套用篩選按鈕

變更査詢縮小設定

最佳化功能區中,我們選取 [最佳化預設],然後選取 [自訂] 以變更任何設定。 在我們的報表中,交叉分析篩選器用於單一選取,[套用] 按鈕在多重選取中更實用,因此我們可以保留其他設定,並透過 [自訂] 使交叉分析篩選器立即套用。

還原以立即套用交叉分析篩選器

最佳化預設自訂動畫

資料來源變更後還原至完全互動性

最佳化功能區中,我們選取 [最佳化預設],然後為報表選取 [互動性]。 這些是 Power BI Desktop 中的預設設定,因此,如果我們選擇了 [査詢縮小] 或 [自訂] 來變更最佳化預設,這就是我們恢復預設的方式。 對話方塊確認了我們的設定。

設定互動性最佳化預設。

最佳化預設互動性動畫

在這種情況下,我們專門呼叫 DirectQuery 報表案例,但它們也可以用於其他報表案例。

對於特定視覺效果,我們可以透過使用效能分析器查看是否有直接査詢列來確定它是否使用 DirectQuery。 您可以在此處看到,DirectQuery 用於為我們的視覺效果傳回資料:

效能分析器畫面影像中的 DirectQuery 報表案例

社群

您已經在這些案例中看到了如何透過 [屬性] 窗格中的最佳化功能區和關聯性編輯來簡化 Power BI Desktop 中的製作體驗。 請務必用您自己的 DirectQuery 報表來嘗試一下。

想要深入了解,或者有自己的案例可以分享嗎? Power BI 擁有充滿活力的社群,MVP、BI 專業人員和同行在討論群組、影片、部落格等中分享專長。 請務必查看 Power BI 社群

您也可以參與!! 藉由 Microsoft Learn,本文這樣的 Power BI 文件為開放原始碼。 若要深入了解如何參與,請務必查看 Microsoft Learn 文件參與者指南