共用方式為


使用資料流程開發解決方案

Power BI 資料流程是企業導向的資料準備解決方案,可讓資料生態系統準備好用於取用、重複使用及整合。 本文提供一些常見案例,與其他文章的連結,可協助您了解並發揮資料流程的全部功能。

存取資料流程的進階功能

Premium 容量中的 Power BI 資料流程提供許多重要功能,可協助達到更大規模的資料流程和效能,例如:

  • 進階計算,可加速 ETL 效能並提供 DirectQuery 功能。
  • 累加式重新整理,可讓您載入從來源變更的資料。
  • 連結實體,可用來參考其他資料流程。
  • 計算實體,可用來建置包含更多商務邏輯之資料流程的可組合建置組塊。

基於這些原因,建議您盡可能在 Premium 容量中使用資料流程。 Power BI Pro 授權中使用的資料流程可用於簡單、小規模的使用案例。

解決方案

有兩種方式可存取這些資料流程的 Premium 功能

  • Premium 容量指定至指定的工作區,並且自備 Pro 授權以在此處撰寫資料流程。
  • 自備 Premium Per User (PPU) 授權,這需要工作區的其他成員也擁有 PPU 授權。

您無法在 PPU 環境外部 (例如 Premium 或其他 SKU 或授權) 取用 PPU 資料流程 (或任何其他內容)。

針對 Premium 容量,Power BI Desktop 中資料流程的取用者不需要明確的授權,即可取用及發佈至 Power BI。 但若要發佈至工作區或共用產生的語意模型,您至少需要 Pro 授權。

針對 PPU,建立或取用 PPU 內容的每個人都必須具有 PPU 授權。 這項需求會因 Power BI 的其餘部分而有所不同,因為您需要明確為每個人授權 PPU。 除非您將工作區移轉至 Premium 容量,否則您無法將免費、Pro 或甚至 Premium 容量與 PPU 內容混合在一起。

選擇模型通常取決於貴組織的大小和目標,但適用下列指導方針。

團隊類型 Premium per capacity Premium Per User,
>5,000 位使用者
<5,000 位使用者

針對小型小組,PPU 可以橋接每個容量的免費、Pro 和 Premium 之間的差距。 如果您有較大的需求,與具有 Pro 授權的使用者一起使用 Premium 容量是最佳方法。

建立已套用安全性的使用者資料流程

假設您需要建立用於取用的資料流程,但具有安全性需求:

描述案例的圖表。

在此案例中,您可能會有兩種類型的工作區:

  • 您開發資料流程並建置商務邏輯的後端工作區。

  • 您要將某些資料流程或資料表公開給特定使用者群組以供取用的使用者工作區:

    • 使用者工作區包含指向後端工作區中資料流程的連結資料表。
    • 使用者具有取用者工作區的檢視人員存取權,但是沒有後端工作區的存取權。
    • 當使用者使用 Power BI Desktop 存取使用者工作區中的資料流程時,他們可以看到資料流程。 但由於資料流程在 [導覽器] 中顯示為空白,因此連結資料表不會顯示。

了解連結資料表

連結資料表只是原始資料流程資料表的指標,而且會繼承來源的權限。 如果 Power BI 允許連結資料表使用目的地權限,則任何使用者可能會藉由在指向來源的目的地中建立連結資料表來規避來源權限。

解決方案:使用計算資料表

如果您有 Power BI Premium 的存取權,您可以在參考連結資料表的目的地中建立計算資料表,該資料表具有連結資料表的資料複本。 您可以透過預測移除資料行,並透過篩選移除資料列。 具有目的地工作區權限的使用者可以透過此資料表存取資料。

特殊權限個人的譜系也會顯示參考的工作區,並可讓使用者連結回去以完全了解父資料流程。 對於不具特殊權限的使用者,隱私權仍受到尊重。 只會顯示工作區的名稱。

下圖說明其設定方式。 左側是架構模式。 右側是顯示銷售資料分割並依區域保護的範例。

描述如何使用連結資料表和資料流程的圖表。

減少資料流程的重新整理時間

假設您有大型資料流程,但您想要從該資料流程建置語意模型,並減少重新整理所需的時間。 一般而言,從資料來源到資料流程再到語意模型的重新整理需要很長的時間才能完成。 冗長的重新整理難以管理或維護。

解決方案:針對參考資料表使用明確設定 [啟用載入] 且不會停用載入的資料表

Power BI 支援資料流程的簡單協調流程,如了解和最佳化資料流程重新整理中所定義。 利用協調流程需要明確設定為 [啟用載入] 的任何下游資料流程。

通常只有在載入更多查詢的額外負荷會抹消您所開發實體的優點時,停用負載才適當。

雖然停用負載表示 Power BI 不會評估指定的查詢,但當做成分使用時,也就是在其他資料流程中參考,也表示 Power BI 不會將其視為現有資料表,我們可以提供指標並執行摺疊和查詢最佳化。 從這個意義上來說,執行聯結或合併等轉換只是兩個資料來源查詢的聯結或合併。 這類作業可能會對效能產生負面影響,因為 Power BI 必須再次完全重新載入已經計算的邏輯,然後套用任何其他邏輯。

若要簡化資料流程的查詢處理,並確保引擎最佳化已就位,請啟用載入並確定 Power BI Premium 資料流程中的計算引擎已設定為預設設定,該設定是最佳化

啟用載入也會讓您保持譜系的完整檢視,因為 Power BI 會將非已啟用載入資料流程視為新項目。 如果譜系對您而言很重要,請勿停用連線至其他資料流程的實體或資料流程的載入。

減少語意模型的重新整理時間

假設您有大型資料流程,但您想要從中建置語意模型,並減少協調流程。 從資料來源到資料流程再到語意模型的重新整理需要很長的時間才能完成,這會增加延遲。

解決方案:使用 DirectQuery 資料流程

每當工作區的增強型計算引擎 (ECE) 設定明確設定為 [開啟] 時,就可以使用 DirectQuery。 當您有不需要直接載入 Power BI 模型的資料時,此設定很有用。 如果您是第一次將 ECE 設定為 [開啟],則允許 DirectQuery 的變更會在下一次重新整理期間發生。 當您啟用它以立即進行變更時,您需要重新整理它。 初始資料流程載入的重新整理可能會變慢,因為 Power BI 會將資料寫入儲存體和受控 SQL 引擎。

總結來說,搭配資料流程使用 DirectQuery 可為 Power BI 和資料流程處理序帶來下列增強功能:

  • 避免個別的重新整理排程:DirectQuery 會直接連線到資料流程,移除建立匯入語意模型的需求。 因此,搭配資料流程使用 DirectQuery 表示您不再需要針對資料流程和語意模型具備個別的重新整理流程來確保資料同步。
  • 篩選資料:在資料流程內部使用篩選資料檢視時,DirectQuery 相當實用。 若想要篩選資料,並以此在資料流程內使用較小部分的資料,您可使用 DirectQuery (以及 ECE) 來篩選資料流程資料及使用所需的篩選子集。

一般而言,相較於匯入模式,使用 DirectQuery 可在語意模型中獲得最新的資料,但報告效能較慢。 只有在下列情況下,才考慮此方法:

  • 您的使用案例需要來自資料流程的低延遲資料。
  • 資料流程資料很大。
  • 匯入太耗時。
  • 您願意以快取效能來交換最新的資料。

解決方案:使用資料流程連接器以針對匯入啟用查詢摺疊和累加式重新整理

統一資料流程連接器可以大幅減少針對計算實體所執行步驟的評估時間,例如執行聯結、相異、篩選和依作業分組。 以下是兩個特定優點:

  • 連線到 Power BI Desktop 中資料流程連接器的下游使用者可以在撰寫案例中利用更好的效能,因為新連接器支援查詢摺疊。
  • 語意模型重新整理作業也可以摺疊至增強型計算引擎,這表示即使是來自語意模型的累加式重新整理也可以摺疊至資料流程。 這項功能可改善重新整理效能,並且可能會降低重新整理週期之間的延遲。

若要為任何 Premium 資料流程啟用這項功能,請確定計算引擎已明確設定為 [開啟]。 然後使用 Power BI Desktop 中的資料流程連接器。 您必須使用 Power BI Desktop 的 2021 年 8 月版本或更新版本,才能利用這項功能。

若要將這項功能用於現有的解決方案,您必須在 Premium 或 Premium Per User 訂用帳戶上。 您可能也需要對資料流程進行一些變更,如使用增強型計算引擎中所述。 您必須將 [來源] 區段中的 PowerBI.Dataflows 取代為 PowerPlatform.Dataflows,將任何現有的 Power Query 查詢更新為使用新的連接器。

Power Query 中的複雜資料流程撰寫

假設您有數百萬個資料列的資料流程,但您想要使用它建置複雜的商務邏輯和轉換。 您想要遵循使用大型資料流程的最佳做法。 您也需要資料流程預覽,才能快速執行。 但是,您有數十個資料行和數百萬個資料列。

解決方案:使用結構描述檢視

您可以使用結構描述檢視,其設計目的是在處理結構描述層級作業時,將查詢的資料行資訊放在前面和中央以最佳化流程。 結構描述檢視提供內容相關的互動來塑造資料結構。 結構描述檢視也提供較低的延遲作業,因為只需要計算資料行中繼資料,而不用計算完整的資料結果。

使用較大的資料來源

假設您在來源系統上執行查詢,但您不想提供系統的直接存取權或將存取權普及化。 您打算將其放入資料流程中。

解決方案 1:針對查詢使用檢視或最佳化查詢

使用最佳化的資料來源和查詢是最佳選項。 資料來源通常是最適用於它的查詢。 Power Query 會推進查詢折疊功能,以委派這些工作負載。 Power BI 也提供 Power Query Online 中的步驟摺疊指標。 若要深入了解指標類型,請參閱步驟摺疊指標文件

解決方案2:使用原生查詢

您也可以使用 Value.NativeQuery() M 函式。 您可在第三個參數中設定 EnableFolding=true此網站上記載了 Postgres 連接器的原生查詢。 也適用於 SQL Server 連接器。

解決方案 3:將資料流程分成擷取和使用量資料流程,以利用 ECE 和連結實體

將資料流程分成擷取和使用量資料流程,您可以利用 ECE 和連結實體。 您可以在最佳做法文件中深入了解此模式和其他模式。

確保客戶盡可能使用資料流程

假設您有許多提供常見用途的資料流程,例如像是客戶、資料表、產品和地理位置的一致維度。 Power BI 的功能區中已經提供資料流程。 在理想情況下,您希望客戶主要使用您所建立的數據流。

解決方案:使用背書來認證及推廣資料流程

若要深入了解背書的運作方式,請參閱背書:推廣及認證 Power BI 內容

Power BI 資料流程中的可程式性和自動化

假設您有商務需求,可將匯入、匯出或重新整理以及 Power BI 外部的更多協調流程和動作自動化。 您可啟用幾個選項來完成此操作,如下表所述。

類型 機制
使用 PowerAutomate 範本 無程式碼
使用 PowerShell 中的自動化指令碼 自動化指令碼
使用 API 建置您自己的商務邏輯。 Rest API

如需重新整理的詳細資訊,請參閱了解和最佳化資料流程重新整理

請確定您保護下游資料資產

您可以使用敏感度標籤來套用資料分類,以及您在連線至資料流程的下游項目上設定的任何規則。 若要深入了解敏感度標籤,請參閱 Power BI 中的敏感度標籤。 若要檢閱繼承,請參閱 Power BI 的敏感度標籤下游繼承

多地理位置支援

現今許多客戶都需要符合資料主權和落地需求。 您可以完成資料流程工作區的手動設定,以成為多地理位置。

資料流程在使用自備儲存體帳戶功能時支援多地理位置。 此功能如將資料流程儲存體設定為使用 Azure Data Lake Gen 2 中所述。 工作區必須空白,才能連結這項功能。 透過此特定設定,您可以將資料流程資料儲存在您選擇的特定地理區域中。

請確定您在虛擬網路後方保護資料資產

現今許多客戶都需要在私人端點背後保護資料資產。 若要這樣做,請使用虛擬網路和閘道保持符合規範。 下表說明目前的虛擬網路支援,並說明如何使用資料流程保持符合規範並保護您的資料資產。

案例 狀態
透過內部部署閘道讀取虛擬網路資料來源。 透過內部部署閘道支援
使用內部部署閘道將資料寫入虛擬網路後方的敏感度標籤帳戶。 尚不支援

下列文章提供資料流程和 Power BI 的詳細資訊: