您可以使用 Azure Synapse Link 將 Microsoft Dataverse 資料連線到 Azure Synapse Analytics,以探索您的資料並加快洞察時間。 本文章將說明如何執行下列工作:
- 使用 Azure Synapse Link 服務,將您的 Dataverse 資料連接到 Azure Synapse Analytics 工作空間。
- 管理 Azure Synapse Link 中包含的 Dataverse 資料表。
- 監控您的 Azure Synapse Link。
- 解除你的Azure Synapse Link連結。
- 重新連結你的Azure Synapse Link。
- 在 Azure Synapse Analytics 中查看您的資料。
備註
Azure Synapse Link for Microsoft Dataverse 以前稱為 Export to data lake。 該服務於 2021 年 5 月起更名,並將持續匯出資料至 Azure Data Lake 及 Azure Synapse Analytics。
在 Power Apps 中,Azure Synapse Link 現在是連結資料頁面的一部分,並會出現在「其他連結」下。 你現有的連結會繼續運作,不需要遷移或重新連結。
若要建立新的 Azure Synapse Link,請前往 Link data,然後選取 Other Links>+ 新增連結。 你現在無法從 Tables>Analyze 選單建立 Azure Synapse Link。
必要條件
- Dataverse:您必須具備 Dataverse 系統管理員安全角色。
- 你想透過 Azure Synapse Link 匯出的資料表必須啟用「 追蹤變更 」屬性。 其他資訊: 進階選項
- 你連結的 Azure Synapse Workspace 不能啟用資料外洩保護。 更多資訊: 建立啟用資料外洩保護的工作區
Azure Data Lake Storage Gen2 的需求條件
您必須擁有 Azure Data Lake Storage Gen2 帳戶,且對該帳戶具有擁有者或自訂角色權限,才能建立連結。
受控身分識別的權限:
- 擁有者和儲存體帳戶參與者: 只有在初次設定期間需要,才能在儲存體帳戶中建立檔案系統,並在儲存體帳戶上指派。 設定之後,可以移除這些權限,而不會影響同步作業。
- 儲存體 Blob 資料貢獻者: 在一般同步處理期間,是進行正常 Blob 作業所需的。
- Storage Blob 資料擁有者:目前在涉及Azure Data Lake Storage Gen2情境下,管理資料與存取權限所必需。
您的儲存體帳戶必須為初始設定和差異同步啟用階層式命名空間。
只有初始設定才需要允許儲存體帳戶金鑰存取,因為服務會使用共用金鑰授權來執行特殊許可權作業,例如在切換至受控識別驗證之前建立檔案系統和建立連結。 設定之後,不再需要金鑰型存取。
您的儲存體帳戶必須將允許的複製作業範圍設定為 [從任何儲存體帳戶]。
- Synapse 工作區:你必須擁有 Synapse 工作區,以及 擁有者 或 自訂角色權限,另須具備 Synapse Studio 內的 Synapse 管理員角色存取權限。 Synapse 工作區必須與您的 Azure Data Lake Storage Gen2 帳戶位於相同的區域。 在 Synapse Studio 中,必須將儲存帳戶新增為連結的服務。 若要建立 Synapse 工作區,請移至建立 Synapse 工作區。
備註
- 儲存體帳戶與 Synapse 工作區必須與您的 Power Apps 租用戶位於同一個 Microsoft Entra 租用戶中。
- 若要將連結的儲存體帳戶與工作區的設定設為僅允許所選的虛擬網路和 IP 位址,您必須使用受控身分識別建立 Azure Synapse Link。 更多資訊:使用受管理的身份來操作 Azure 資料湖儲存(未設定管理身份時,初始設定和增量同步時必須啟用 公共網路存取,以便啟用 Azure 資源。)
- 不支援出現受管理的專用端點、資料外流保護或受管理虛擬網路的 Synapse 工作區。
- 您必須擁有具有儲存體帳戶和 Synapse 工作區的資源群組讀取者角色存取權。
- 當你在 Synapse 工作空間新增多個使用者時,他們必須在 Synapse Studio 中擁有 Synapse 管理員 角色權限,以及 Azure Data Lake Storage Gen2 帳號上的 Storage Blob 資料貢獻者角色。
- 在單一 DV 環境下建立 Synapse Link 設定檔的權限限制為最多 10 個。
自訂角色權限
你可以使用自訂的 Azure 角色,而非 Owner,來建立與現有且已設定 Azure 資源的連結。 在角色的 Actions 中包含以下權限,並將角色指派給在列出範圍內建立連結的使用者。
| 必要行動 | Scope | Purpose |
|---|---|---|
Microsoft.Storage/storageAccounts/read |
記憶體帳戶 | 仔細閱讀儲存帳號設定。 |
Microsoft.Storage/storageAccounts/blobServices/containers/read |
記憶體帳戶 | 查看容器資訊。 |
Microsoft.Authorization/roleAssignments/read |
儲存體帳戶與已連線的 Synapse 工作區 | 檢視現有的 Azure 角色指派。 |
Microsoft.Authorization/roleAssignments/write |
儲存體帳戶與連接的 Synapse 工作區 | 在建立連結時,為服務身份指派必要的 Azure 角色。 |
連結建立者還需要具備訂閱和資源群組的 Reader 存取權,才能在設定期間選取資源。 繼承的存取權就足夠了。 對於工作區連結,Synapse Studio 的 workspace scope 仍需使用 Synapse Administrator;自訂 Azure 角色不會取代這個 Synapse RBAC 角色。
對於僅限資料湖的連結,僅適用儲存帳戶權限。
這些自訂角色適用於連結建立,而非資源配置或對匯出資料的存取。
DataActions在創作者的自訂角色中,不需要「Storage」。
這很重要
Microsoft.Authorization/roleAssignments/write 可在該範圍授與其他角色。 僅指派所需資源。
請管理員建立並指派自訂角色。
將 Dataverse 連接至 Synapse 工作區
登入 Power Apps並選取您喜歡的環境。
在左側導覽窗格,選擇 連結資料,然後選擇 其他連結。 現有的 Azure Synapse 連結會出現在本區。 如果在側邊窗格中看不到連結資料,請選取…其他並選擇探索全部,然後在資料管理區段中選取連結資料。
在指令列中,選擇 + 新連結,然後選擇 Azure Synapse。
選擇 Connect to your Azure Synapse workspace 選項。
選取訂閱、資源群組、工作區名稱和儲存體帳戶。 請確定 Synapse 工作區和儲存體帳戶符合先決條件 區段中指定的需求。 選取 [下一步]。
備註
作為將環境連結到資料湖的一部分,你會授權 Azure Synapse Link 服務存取你的儲存帳號。 確保你已完成建立及設定 Azure 資料湖儲存帳戶的必要條件,並已為自己指派擁有者角色,或指派具有所需權限的自訂角色。 此外,您還會授予 Power Platform 資料流服務存取您儲存帳戶的權限。 其他資訊:使用資料流程的自助資料準備。
選擇要匯出的資料表,可以逐一選擇,也可以在搜尋框中輸入以逗號分隔的資料表清單,然後選擇儲存。 僅可匯出啟用了「追蹤變更」屬性的表。 更多資訊:進階選項。
你可以依照上述步驟,在你的 Azure 訂閱中,透過在 Synapse 工作區新增一個 Azure 資料湖作為連結服務,從一個環境建立到多個 Azure Synapse Analytics 工作區與 Azure Data Lake 的連結。 同樣地,你也可以在同一個租戶內,從多個環境建立連結到同一個 Azure Synapse Analytics 工作空間和 Azure 資料湖。
備註
Azure Synapse Link for Dataverse 服務已作為內建功能無縫整合至 Power Platform 中。 它符合為 Power Platform 資料儲存體和治理設定的安全性與治理標準。 其他資訊:資料儲存和治理
Azure Synapse Link 服務匯出的資料在傳輸時使用傳輸層安全(TLS)1.2 或更高版本加密,靜態時則在 Azure Data Lake Storage Gen2 加密。 此外,blob 儲存體中的臨時數據也會進行靜態加密。 Azure Data Lake Storage Gen2 中的加密功能幫助您保護資料、實施企業安全政策,並符合法規遵循要求。 更多資訊:Azure 靜態資料加密 更多資訊:配置Azure 儲存體防火牆與虛擬網路
管理資歷表資料至 Synapse 工作區
設定 Azure Synapse Link 之後,您可以使用下列兩種方式之一來管理匯出的資料表:
在 Power Apps(make.powerapps.com)中,進入連結資料>「其他連結」,然後在指令列選擇「管理資料表」來新增或移除一個或多個連結資料表。
在 Power Apps 製作者入口 資料表區域中,選擇資料表旁的 ...,然後選擇您要匯出資料表資料的連結資料湖。
監控您的 Azure Synapse Link
設定好 Azure Synapse Link後,你可以在 Tables 標籤中監控 Azure Synapse Link。
- 以下是資料表清單,這些資料表屬於您選擇的 Azure Synapse Link 的一部分。
- 同步狀態將會在不同階段循環進行。 NotStarted 表示該資料表正在等待同步處理。 表格初始同步完成時,將會有一個後續處理階段,不會發生累加式更新。 這可能需要幾個小時,需視資料大小而定。 當累加式更新開始進行時,將會定期更新上次同步的日期。
- 計數欄顯示寫入的列數。 當限附加設為否時,這為記錄的總數。 當限附加設為是時,這為變更的總數。
- 僅附加與分割策略欄位顯示了不同進階設定的使用方式。
取消 Azure Synapse Link 連結
選擇想要取消連結的 Azure Synapse Link。
從命令列選取取消連結。
若要同時刪除資料湖檔案系統以及 Synapse 資料庫,請鍵入連結名稱進行確認。
選取是,並等待幾分鐘讓所有東西取消連結並刪除。
這很重要
你在 Azure Synapse Link 資料庫中建立的自訂資料庫物件,一旦解除連結完成就會被刪除。
您將需要對其自訂資料庫物件指令碼實施自己的版本控制,以確保他們擁有備份。
重新連結 Azure Synapse Link
如果在解除連結時刪除了檔案系統,請依照上述步驟重新連結相同的 Synapse 工作區和資料湖。 如果在取消連結時未刪除檔案系統,則必須清除資料才能重新連結:
瀏覽至 Azure Synapse Analytics。
選取未連結資料庫的 ...,然後選取新增筆記本>空白筆記本。
從下拉式功能表中選取集區,將筆記本附加到 Apache Spark 集區中。 如果您未擁有 Apache Spark 集區,請選取管理集區以建立一個。
輸入以下指令碼,將 <DATABASE_NAME> 取代為要取消連結的資料庫名稱,並執行筆記本。
%%sql
DROP DATABASE <DATABASE_NAME> CASCADE
執行筆記本後,請從左面板重新整理資料庫清單。 如果資料庫仍然存在,請嘗試在資料庫上按一下滑鼠右鍵,然後選取刪除。
進入 Power Apps,重新連結 Synapse 工作區和資料湖。
存取近即時資料和唯讀快照資料
建立 Azure Synapse Link 後,兩個版本的資料表資料就會根據預設在 Azure 訂閱中的 Azure Synapse Analytics 和/或 Azure Data Lake Storage Gen2 中同步,以確保您可以在任何指定時間可靠地使用資料湖中已更新的資料:
- 近即時資料:透過 Azure Synapse Link 有效偵測自最初擷取或最後同步以來資料的變更,提供從 Dataverse 同步過的資料副本。
- 快照資料:提供定期更新的近即時資料複本 (在此案例中為每隔一小時)。
備註
- 近即時同步效能取決於多項因素,包括初始資料載入大小、資料流失率及變更量。 在交易量大的情況中,例如財務與營運應用程式中的流程在短時間內產生數百萬筆紀錄,或是像 Dynamics 365 供應鏈管理內建的總體規劃功能,會刪除並重建大量紀錄。 Synapse Link 必須同步所有變更,包括刪除。 在這些高流量情境下,無法保證近乎即時的數據可用性。
- 若要建立唯讀快照資料,請確定已在從任何儲存體帳戶設定複製作業的允許範圍。 其他資訊:設定複製作業的允許範圍
- 選擇想要的 Azure Synapse Link,然後從頂面板選擇 Go to Azure Synapse Analytics workspace。
- 從左面板展開 Lake Databases,選取 dataverse-environmentName-organizationUniqueName,然後展開資料表。
所有近即時資料資料表均已列出並可用於使用命名規範 DataverseTableName 進行分析。 所有快照集資料資料表均已列出並可用於使用命名規範 DataverseTableName_partitioned 進行分析。
也請參閱
將 Dataverse 的 Azure Synapse Link 與您的 Azure Data Lake 進行配置