共用方式為


設定數據流記憶體以使用 Azure Data Lake Gen 2

與 Power BI 搭配使用的數據預設會儲存在 Power BI 所提供的內部記憶體中。 透過整合數據流和 Azure Data Lake Storage Gen 2 (ADLS Gen2),您可以將數據流儲存在組織的 Azure Data Lake Storage Gen2 帳戶中。 此功能基本上可讓您「攜帶您自己的記憶體」到 Power BI 數據流,並在租使用者或工作區層級建立連線。

使用 ADLS Gen 2 工作區或租用戶連線的原因

附加數據流之後,Power BI 會設定並儲存參考,以便您現在可以將數據讀取和寫入您自己的 ADLS Gen 2。 Power BI 會以通用數據模型 (CDM) 格式儲存數據,除了數據流本身所產生的實際數據之外,還擷取您數據的元數據。 這項功能可解鎖許多強大的能力,並使CDM格式的數據和相關的元數據得以用於擴充性、自動化、監控和備份方案。 當您在自己的環境中提供並廣泛存取這些資料時,它可讓您將組織內建立的洞察力和資料普及化。 它也解鎖了您創建具有各種複雜度的進一步解決方案的能力。 您的解決方案可以是Power Platform、Azure 中的CDM感知自定義應用程式和解決方案,以及透過合作夥伴和獨立軟體廠商 (ISV) 生態系統提供的解決方案。 或者,您可以建立應用程式來讀取 CSV。 您的數據工程師、數據科學家和分析師現在可以使用、使用及重複使用ADLS Gen 2 中策劃的一組常見數據。

有兩種方式可以設定要使用的ADLS Gen 2存放區:您可以使用租使用者指派的ADLS Gen 2 帳戶,或將自己的ADLS Gen 2存放區帶到工作區層級。

先決條件

  • 若要使用您自己的 ADLS Gen 2 帳戶,您必須在儲存帳戶層擁有 擁有者 許可權。 資源群組或訂用帳戶層級的許可權將無法運作。 如果您是系統管理員,您仍必須自行指派擁有者許可權。 目前不支援防火牆後方的 ADLS Gen2 記憶體帳戶

  • 必須建立記憶體帳戶,並啟用 階層命名空間 (HNS)

  • 儲存體帳戶必須在與 Power BI 租戶 相同的 Microsoft Entra 租戶中建立。

  • 用戶必須具有記憶體 Blob 數據擁有者角色、記憶體 Blob 數據讀取者角色,以及記憶體帳戶層級的擁有者角色(範圍應 此資源 且未繼承)。 任何套用的角色變更可能需要幾分鐘的時間才能同步處理,而且必須先同步處理,才能在Power BI服務中完成下列步驟。

  • Power BI 工作區租用戶區域應該與記憶體帳戶區域相同。

  • 需要 TLS(傳輸層安全性)1.2 版(或更新版本)來保護您的端點。 使用 TLS 1.2 之前 TLS 版本的網頁瀏覽器和其他用戶端應用程式將無法連線。

  • 不支援在多重要素驗證後方附加具有 ADLS Gen 2 的數據流(MFA)。

  • 最後,您可以從系統管理入口網站 連線到任何 ADLS Gen 2,但如果您直接連線到工作區,您必須先確定工作區中沒有數據流,再連線。

注意

攜帶您自己的記憶體 (Azure Data Lake Gen 2) 不適用於美國政府 GCC 客戶的 Power BI 服務。 如需了解哪些功能可用,哪些功能不可用的詳細資訊,請參閱 美國政府客戶的 Power BI 功能可用性

下表描述 ADLS Gen 2 和 Power BI 所需的 ADLS 和 Power BI 許可權:

行動 ADLS 許可權 Power BI 許可權下限
將 ADLS Gen 2 連線至 Power BI 租戶 擁有者 Power BI 系統管理員
將 ADLS Gen 2 連線至工作區 擁有者 工作區管理員
建立 Power BI 數據流,回寫至連線的 ADLS 帳戶 不適用 工作區參與者
取用 Power BI 數據流 不適用 工作區查看器

在工作區層級連線到 Azure Data Lake Gen 2

流覽至沒有數據流的工作區。 選取 [工作區設定]。 選擇 [Azure 連線] 索引標籤,然後選取 [儲存區段]。

[Azure 連線] 索引標籤上 [工作區設定] 窗格的螢幕快照。

如果系統管理員已設定租戶指派的 ADLS Gen 2 帳戶,則可以看到 [使用預設的 Azure 連線] 選項。 您有兩個選項:

  • 若要使用租用戶設定的 ADLS Gen 2 帳戶,請選取名為 使用預設 Azure 連線的方塊,或
  • 選取 [連線至 Azure] 以指向新的 Azure 儲存帳戶。

當您選取 [連線至 Azure時,Power BI 會擷取您有權存取的 Azure 訂用帳戶清單。 請選擇下拉選單中的選項。 然後選擇已啟用階層命名空間選項的有效 Azure 訂用帳戶、資源群組和記憶體帳戶,也就是 ADLS Gen2 旗標。 用來連線至 Azure 的個人帳戶只會使用一次,以設定初始連線,並授與 Power BI 服務帳戶讀取和寫入數據的許可權,之後不再需要原始用戶帳戶才能讓連線保持作用中。

選擇 [連線至 Azure] 後,[設定] 視窗的螢幕快照。

選擇選取之後,請選取 儲存,現在您已成功將工作區連接至您自己的 ADLS Gen2 帳戶。 Power BI 會自動設定具有必要許可權的記憶體帳戶,並設定將寫入數據的 Power BI 文件系統。 此時,此工作區內的每個數據流數據都會直接寫入此文件系統,此文件系統可以與其他 Azure 服務搭配使用。 您現在擁有所有組織或部門數據的單一來源。

Azure 連線設定

設定 Azure 連線是選擇性設定,具有可選擇性設定更多屬性的選擇性設定:

  • 租用戶層級儲存,可讓您設定預設值和/或
  • 工作區層級記憶體,可讓您指定每個工作區的連線

如果您希望只使用集中式資料湖,或者想將該儲存設為預設選項,您可以選擇性地設定租用戶層級儲存。 我們不會自動使用預設設定,以便於提供配置彈性,讓您可以按照需求設置使用此連線的工作區。 如果您設定租使用者指派的ADLS Gen 2 帳戶,您仍然需要將每個工作區設定為使用這個預設選項。

您可以選擇性地或附加地將工作區層級的儲存權限設定為一個獨立的選項,以提供完全的彈性,依據各個工作區設定特定的 ADLS Gen 2 帳戶。

總而言之,如果允許租用戶層級記憶體和工作區層級記憶體許可權,則工作區系統管理員可以選擇使用預設的 ADLS 連線,或選擇設定與預設不同的另一個記憶體帳戶。 如果未設定租用戶記憶體,則工作區系統管理員可以選擇性地依工作區設定 ADLS 帳戶。 最後,如果選取租用戶層級記憶體且不允許工作區層級記憶體,則工作區系統管理員可以選擇性地設定其數據流以使用此連線。

ADLS Gen 2 工作區連線的結構和格式

在ADLS Gen 2 儲存器帳戶中,所有數據流都會儲存在文件系統的 powerbi 容器中。

powerbi 容器的結構如下所示:<workspace name>/<dataflow name>/model.json<workspace name>/<dataflow name>/model.json.snapshots/<all snapshots><workspace name>/<dataflow name>/<table name>/<tablesnapshots>

無論工作區位於共用容量或「Premium」容量,數據流在 ADLS Gen 2 資料夾階層中儲存數據的位置都是相同的。

下列範例使用 Northwind Odata 範例的 Orders 數據表。

顯示 Northwind OData 範例中的 Orders 資料表使用情況的檔案總管螢幕快照。

在上圖中:

  • model.json 是最新版的數據流。
  • model.json.snapshots 都是舊版數據流。 如果您需要舊版的混搭版本或累加設定,這個歷史記錄會很有用。
  • tablename 是包含數據流重新整理完成後所產生數據的資料夾。

我們只會寫入此儲存體帳戶,且目前不會刪除數據。 因此,即使在卸離之後,我們也不會從ADLS帳戶中刪除,因此先前清單中提及的所有檔案仍會儲存。

注意

數據流允許連結或參考其他數據流中的數據表。 在這類數據流中,model.json 檔案可以參考相同或其他工作區中另一個數據流的另一個 model.json

在 ADLS Gen 2 儲存帳戶之間或內部移動檔案

當您將數據流從某個 ADLS Gen2 儲存體帳戶移至另一個記憶體帳戶時,您必須確定 model.json 檔案中的路徑已更新,以反映新的位置。 這是因為 model.json 檔案包含數據流的路徑和數據的路徑。 如果您未更新路徑,數據流將無法找到數據並造成許可權錯誤。 若要更新路徑,您可以使用下列步驟:

  • 在文字編輯器中開啟 model.json 檔案。
  • 尋找記憶體帳戶 URL,並將它取代為新的記憶體帳戶 URL。
  • 儲存檔案。
  • 覆寫 ADLS Gen2 記憶體帳戶中現有的 model.json 檔案。

ADLS Gen 2 工作區連線的擴充性

如果您要將 ADLS Gen 2 連線到 Power BI,您可以在工作區或租用戶層級執行此動作。 請確定您具有正確的存取層級。 詳情請見 必要條件

記憶體結構遵守 Common Data Model 格式。 若要深入瞭解記憶體結構和 CDM,請流覽 什麼是分析數據流的記憶體結構使用 Common Data Model 將 Azure Data Lake Storage Gen2優化。

正確設定之後,數據和元數據將由您掌控。 許多應用程式都瞭解CDM,而且可以使用 Azure、PowerApps 和 Power Automate 來擴充數據。 您也可以藉由符合格式或讀取原始數據,來使用第三方生態系統。

從工作區或租使用者卸離 Azure Data Lake Gen 2

若要移除工作區層級的連線,您必須先確定工作區中的所有數據流都已刪除。 拿掉所有數據流之後,請選取工作區設定中的 [中斷連線 ]。 同樣適用於租使用者,但您必須先確定所有工作區也已中斷與租用戶記憶體帳戶的連線,才能在租用戶層級中斷連線。

停用 Azure Data Lake Gen 2

管理入口網站數據流下,您可以停用使用者使用此功能的存取權,而且不允許工作區系統管理員攜帶自己的 Azure 記憶體。

從 Azure Data Lake Gen 2 還原

在數據流記憶體設定為使用 Azure Data Lake Gen 2 之後,無法自動還原。 返回至由 Power BI 管理的儲存空間的流程是手動的。

若要還原您對 Gen 2 所做的移轉,您需要刪除資料流,並在相同的工作區中重新建立它們。 然後,因為我們不會從ADLS Gen 2 刪除數據,請移至資源本身並清除數據。 此動作會牽涉到下列步驟。

  1. 從 Power BI 匯出數據流的複本。 或者,複製 model.json 檔案。 model.json 檔案會儲存在ADLS中。

  2. 刪除數據流。

  3. 解除連結 ADLS。

  4. 使用匯入重新建立數據流。 增量刷新資料(如果適用)必須在匯入之前刪除。 刪除 model.json 檔案中的相關分割區,即可完成此動作。

  5. 設定重新整理/重建增量更新原則。

使用 ADLS Gen 2 連接器連線到數據

本檔的範圍描述 ADLS Gen 2 數據流連線,而不是 Power BI ADLS Gen 2 連接器。 使用 ADLS Gen 2 連接器是獨立的、可能附加的情境。 ADLS 連接器只會使用ADLS作為數據源。 因此,使用 Power Query Online 來查詢該數據不需要採用 CDM 格式,它可以是客戶想要的任何數據格式。 如需詳細資訊,請參閱 Azure Data Lake Storage Gen2

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