分享方式:


聯機到 Microsoft OneLake

Microsoft OneLake 可讓您透過現有的 Azure Data Lake Storage (ADLS) Gen2 API 和 SDK,開啟所有網狀架構專案的存取權。 您可以改為使用 OneLake URI,透過任何與 ADLS Gen2 相容的 API、SDK 或工具,存取 OneLake 中的數據。 您可以透過 Azure 儲存體 Explorer 將數據上傳至 Lakehouse,或透過 Azure Databricks 的快捷方式讀取差異數據表。

由於 OneLake 是軟體即服務 (SaaS),因此某些作業,例如管理許可權或更新專案,必須透過網狀架構體驗來完成,而不是 ADLS Gen2 API。 如需這些 API 變更的完整清單,請參閱 OneLake API 同位

URI 語法

由於 OneLake 存在於整個 Microsoft Fabric 租使用者中,您可以依租使用者的工作區、專案和路徑來參考租使用者中的任何專案:

https://onelake.dfs.fabric.microsoft.com/<workspace>/<item>.<itemtype>/<path>/<fileName>

注意

因為您可以跨多個項目類型重複使用項目名稱,因此您必須在延伸模組中指定項目類型。 例如, .lakehouse 針對湖屋和 .datawarehouse 倉儲。

OneLake 也支持參考具有全域唯一標識碼 (GUID) 的工作區和專案。 OneLake 指派 GUID 和 GUID 不會變更,即使工作區或專案名稱變更也一樣。 您可以在網狀架構入口網站的 URL 中找到工作區或專案的相關聯 GUID。 您必須針對工作區和專案使用 GUID,而且不需要項目類型。

https://onelake.dfs.fabric.microsoft.com/<workspaceGUID>/<itemGUID>/<path>/<fileName>

採用用於 OneLake 而非 ADLS Gen2 的工具時,請使用下列對應:

  • 帳號名稱一律 onelake為 。
  • 容器名稱是您工作區名稱。
  • 數據路徑會從項目開始。 例如: /mylakehouse.lakehouse/Files/

OneLake 也支援 Azure Blob 檔案系統驅動程式 (ABFS),以便與 ADLS Gen2 和 Azure Blob 儲存體 更具相容性。 ABFS 驅動程式會使用自己的配置標識碼 abfs 和不同的 URI 格式來尋址 ADLS Gen2 帳戶中的檔案和目錄。 若要透過 OneLake 使用此 URI 格式,請交換文件系統的工作區,並包含專案和項目類型。

abfs[s]://<workspace>@onelake.dfs.fabric.microsoft.com/<item>.<itemtype>/<path>/<fileName>

abfs 驅動程式 URI 不允許工作區名稱中的特殊字元,例如空格。 在這些情況下,您可以參考具有全域唯一標識符 (GUID) 的工作區和專案,如本節稍早所述。

授權

您可以通過授權標頭,使用 Microsoft Entra 識別碼來驗證 OneLake API。 如果工具支援登入您的 Azure 帳戶以啟用令牌傳遞,您可以選取任何訂用帳戶。 OneLake 只需要您的使用者令牌,且不關心您的 Azure 訂用帳戶。

直接透過 DFS API 呼叫 OneLake 時,您可以使用Microsoft Entra 帳戶的持有人令牌進行驗證。 若要深入瞭解如何要求和管理貴組織的持有人令牌,請參閱 Microsoft 驗證連結庫

如需使用直接 API 呼叫進行 OneLake 的快速臨機操作測試,以下是使用 PowerShell 登入 Azure 帳戶、擷取記憶體範圍令牌,並將其複製到剪貼簿以方便其他地方使用的簡單範例。 如需使用PowerShell擷取存取令牌的詳細資訊,請參閱 Get-AzAccessToken

注意

OneLake 只支持物件中的 Storage 令牌。 在下列範例中,我們會透過 ResourceTypeName 參數設定物件。

Connect-AzAccount
$testToken = Get-AzAccessToken -ResourceTypeName Storage
# Retrieved token is of string type which you can validate with the "$testToken.Token.GetTypeCode()" command.
$testToken.Token | Set-Clipboard

資料落地

如果您使用全域端點 (''https://onelake.dfs.fabric.microsoft.com) 來查詢與您工作區區域不同的區域中的數據,則數據可能會在端點解析程序期間離開您的區域。 如果您擔心數據落地,請針對工作區使用正確的區域端點,以確保您的數據會保留在其目前區域內,且不會跨越任何區域界限。 您可以檢查工作區所連結的容量區域,以探索正確的區域端點。

OneLake 區域端點全都遵循相同的格式: https://<region>-onelake.dfs.fabric.microsoft.com。 例如,連結至美國西部區域容量的工作區可透過區域端點 https://westus-onelake.dfs.fabric.microsoft.com存取。

常見問題

如果與ADLS Gen2相容的工具或套件無法透過 OneLake 運作,最常見的問題是 URL 驗證。 由於 OneLake 使用與 ADLS Gen2 不同的端點 (dfs.fabric.microsoft.comdfs.core.windows.net),因此某些工具無法辨識 OneLake 端點並加以封鎖。 某些工具可讓您使用自定義端點(例如 PowerShell)。 否則,將 OneLake 的端點新增為支援的端點通常是簡單的修正。 如果您發現 URL 驗證問題或連線到 OneLake 的任何其他問題, 請告訴我們

範例

建立檔案

要求 https://onelake.dfs.fabric.microsoft.com/{workspace}/{item}.{itemtype}/Files/sample?resource=file
標題 Authorization: Bearer <userAADToken>
回應 ResponseCode: 201 Created
標頭:
x-ms-version : 2021-06-08
x-ms-request-id : 272526c7-0995-4cc4-b04a-8ea3477bc67b
x-ms-content-crc64 : OAJ6r0dQWP0=
x-ms-request-server-encrypted : true
ETag : 0x8DA58EE365
本文