OneLake 捷徑
Microsoft OneLake 捷徑可讓您為整個企業建立單一虛擬資料湖,跨網域、雲端與帳戶統一資料。 所有 Fabric 體驗與分析引擎均可透過統一命名空間直接連線您的現有資料來源,例如 Azure、Amazon Web Services (AWS) 與 OneLake。 OneLake 會管理所有權限與憑證,因此您無需個別設定每個 Fabric 工作負載即可連線每個資料來源。 此外,您可使用捷徑來消除資料邊緣副本,減少與資料副本及分段相關的流程延遲。
什麼是捷徑?
捷徑是指向其他儲存位置的 OneLake 物件。 位置可位於 OneLake 內部或外部。 捷徑指向的位置稱為捷徑目標路徑。 捷徑出現的位置稱為捷徑路徑。 捷徑會顯示為 OneLake 資料夾,任何具 OneLake 存取權的工作負載或服務均可使用。 捷徑的行為就像符號連結。 其為獨立於目標的物件。 若刪除捷徑,目標將不受影響。 若移動、重新命名或刪除目標路徑,則捷徑可能中斷。
可在何處建立捷徑?
您可在 lakehouse 與 Kusto 查詢語言 (KQL) 資料庫建立捷徑。 此外,在這些項目建立的捷徑可指向其他 OneLake 位置、Azure Data Lake Storage (ADLS) Gen2、Amazon S3 儲存體帳戶或 Dataverse。 您甚至可使用 Fabric 內部部署資料閘道 (OPDG) 來針對內部部署或網路受限位置建立捷徑。
您可使用 Fabric UI 以互動方式建立捷徑,也可使用 REST API 以編程方式建立捷徑。
Lakehouse
在 lakehouse 建立捷徑時,您必須了解項目資料夾結構。 Lakehouse 由兩個頂層資料夾組成:資料表資料夾與檔案資料夾。 ** Tables 資料夾代表 lakehouse 的管理部分,專門負責處理結構化數據集。 雖然 Files 資料夾是 lakehouse 中無管理的部分,即是用於非結構化或半結構化數據。
在資料表資料夾,您僅能在最上層建立捷徑。 資料表資料夾的其他子目錄不支援捷徑。 [數據表] 區段中的快捷方式通常會指向 OneLake 中的內部來源,或連結到符合 Delta 數據表格式的其他數據資產。 若捷徑目標包含 Delta\Parquet 格式資料,則 lakehouse 會自動同步中繼資料,識別資料夾為資料表。
在檔案資料夾,捷徑建立位置無限制。 您可在資料夾階層的任何層級建立捷徑。 檔案資料夾不會搜尋資料表。 這裡的快捷方式可以指向具有任何格式數據的內部 (OneLake) 和外部儲存系統。
KQL 資料庫
當您在 KQL 資料庫建立捷徑時,其會顯示在資料庫的捷徑資料夾。 KQL 資料庫會視捷徑為外部資料表。 若要查詢捷徑,請使用 Kusto 查詢語言的 external_table
函式。
可在何處存取捷徑?
可在 OneLake 存取資料的任何 Fabric 或非 Fabric 服務均可使用捷徑。 對於任何透過 OneLake API 存取資料的任何服務,捷徑均為透明。 捷徑僅顯示為 Lake 的另一資料夾。 Apache Spark、SQL、即時智慧與 Analysis Services 均可在查詢資料時使用捷徑。
Apache Spark
Apache Spark 筆記本與 Apache Spark 工作可使用您在 OneLake 建立的捷徑。 相對檔案路徑可用於直接從捷徑讀取資料。 此外,若您在 lakehouse 的資料表區段建立捷徑,且其為 Delta 格式,則可使用 Apache Spark SQL 語法讀取其為受控資料表。
df = spark.read.format("delta").load("Tables/MyShortcut")
display(df)
df = spark.sql("SELECT * FROM MyLakehouse.MyShortcut LIMIT 1000")
display(df)
注意
Delta 格式不支援名稱包含空格字元的資料表。 名稱包含空格的任何捷徑均不會被識別為 lakehouse 的 Delta 資料表。
SQL
您也可透過 Lakehouse 的 SQL 分析端點讀取 lakehouse 資料表區段的捷徑。 您可透過 lakehouse 的模式選擇器或透過 SQL Server Management Studio (SSMS) 來存取 SQL 分析端點。
SELECT TOP (100) *
FROM [MyLakehouse].[dbo].[MyShortcut]
Real-Time Intelligence
KQL 資料庫捷徑會識別為外部資料表。 若要查詢捷徑,請使用 Kusto 查詢語言的 external_table
函式。
external_table('MyShortcut')
| take 100
Analysis Services
您可在 lakehouse 資料表區段,為包含捷徑的 lakehouse 建立語意模型。 當語意模型以 Direct Lake 模式執行時,Analysis Services 可直接從捷徑讀取資料。
非 Fabric
Fabric 以外的應用程式與服務也可透過 OneLake API 存取捷徑。 OneLake 支援 ADLS Gen2 與 Blob 儲存 API 子集。 若要進一步了解有關 OneLake API,請參閱使用 API 存取 OneLake。
https://onelake.dfs.fabric.microsoft.com/MyWorkspace/MyLakhouse/Tables/MyShortcut/MyFile.csv
捷徑類型
OneLake 捷徑支援多個檔案系統資料來源。 其中包括內部 OneLake 位置、Azure Data Lake Storage (ADLS) Gen2、Amazon S3、S3 相容、Google Cloud Storage(GCS) 和 Dataverse。
內部 OneLake 捷徑
內部 OneLake 捷徑可讓您參考現有 Fabric 項目資料。 這些項目包括 lakehouse、KQL 資料庫與資料倉儲。 捷徑可指向同一項目內的資料夾位置、在相同工作區內的項目之間,甚至跨不同工作區的項目。 當您跨項目建立捷徑時,項目類型不需匹配。 例如,您可在 lakehouse 建立捷徑,指向資料倉儲資料。
當使用者透過到另一個 OneLake 位置的捷徑存取資料時,呼叫使用者的身分識別會用於授權對捷徑目標路徑的資料存取*。 此使用者必須在目標位置具有權限才能讀取資料。
重要
透過 Power BI 語意模型或 T-SQL 存取捷徑時,呼叫使用者身分不會傳遞至捷徑目標,而會改為傳遞呼叫項目擁有者的身分,將存取權委派給呼叫使用者。
ADLS 捷徑
也可為 ADLS Gen2 儲存體帳戶建立捷徑。 在建立 ADLS 捷徑時,目標路徑可指向階層命名空間內的任何資料夾。 目標路徑至少必須包含容器名稱。
存取
ADLS 捷徑必須指向儲存體帳戶的 DFS 端點。
範例: https://accountname.dfs.core.windows.net/
若您的儲存體帳戶受到儲存體防火牆保護,您可設定受信任服務存取權。 請參閱受信任工作區存取權
授權
ADLS 捷徑使用委派授權模型。 在此模型,捷徑建立者會指定 ADLS 捷徑憑證,且該捷徑的所有存取權均由該憑證授權。 支援委派類型包括組織帳戶、帳戶金鑰、共用存取簽章 (SAS) 與服務主體。
- 組織帳戶 - 儲存體帳戶必須具儲存體 BLOB 資料讀取器、儲存體 Blob 資料參與者或儲存體 BLOB 資料擁有者角色
- 共用存取簽章 (SAS) - 至少必須包含下列權限:讀取、列舉及執行
- 服務主體 - 儲存體帳戶必須具儲存體 BLOB 資料讀取器、儲存體 Blob 資料參與者或儲存體 BLOB 資料擁有者角色
- 工作區身分 識別 - 必須在記憶體帳戶上具有記憶體 Blob 數據讀取器、記憶體 Blob 數據參與者或記憶體 Blob 數據參與者或記憶體 Blob 數據擁有者角色
注意
您必須在 ADLS Gen 2 儲存體帳戶啟用階層命名空間。
S3 捷徑
您也可建立 Amazon S3 帳戶捷徑。 在建立 Amazon S3 捷徑時,目標路徑必須至少包含貯體名稱。 S3 本身不支援階層命名空間,但您可使用前綴來模仿目錄結構。 您可在捷徑路徑包含前綴,進一步縮小透過捷徑存取的資料範圍。 當您透過 S3 捷徑存取資料時,前綴會表示為資料夾。
存取
S3 捷徑必須指向 S3 貯體的 https 端點。
範例: https://bucketname.s3.region.amazonaws.com/
注意
您不需要停用 S3 帳戶的 S3 封鎖公用存取設定,S3 快捷方式才能運作。
儲存體防火牆或 Virtual Private Cloud 不得封鎖 S3 端點的存取權。
授權
S3 捷徑使用委派授權模型。 在此模型,捷徑建立者會指定 S3 捷徑憑證,且該捷徑的所有存取權均由該憑證授權。 支援的委派憑證是 IAM 使用者的金鑰與密碼。
IAM 使用者必須在捷徑指向的貯體具有下列權限。
S3:GetObject
S3:GetBucketLocation
S3:ListBucket
注意
S3 捷徑為唯讀。 無論 IAM 使用者的權限為何均不支援寫入操作。
Google Cloud Storage 快捷方式
您可使用 GCS 的 XML API 建立 Google Cloud Storage (GCS) 捷徑。 建立 Google Cloud Storage 捷徑時,目標路徑必須至少包含貯體名稱。 您也可透過進一步指定要在儲存層次結構指向的前綴/資料夾來限制捷徑範圍。
存取
設定 GCS 快捷方式的連線時,您可以指定記憶體服務的全域端點或使用貯體特定端點。
- 全域端點範例:
https://storage.googleapis.com
- 貯體特定端點範例:
https://<BucketName>.storage.googleapis.com
授權
GCS 捷徑使用委派授權模型。 在此模型,捷徑建立者會指定 GCS 捷徑憑證,且該捷徑的所有存取權均由該憑證授權。 支援的委派憑證是服務帳戶或使用者帳戶的 HMAC 金鑰與密碼。
此帳戶必須擁有 GCS 貯體內資料存取權限。 若在捷徑連線使用貯體特定端點,則帳戶必須擁有下列權限:
storage.objects.get
stoage.objects.list
若在捷徑連線使用全域端點,則帳戶也必須擁有下列權限:
storage.buckets.list
注意
GCS 捷徑為唯讀。 無論使用帳戶權限為何,均不支援寫入操作。
Dataverse 捷徑
Dataverse 直接整合 Microsoft Fabric 可讓組織將其 Dynamics 365 企業應用程式與業務流程擴展至 Fabric。 此整合是透過捷徑來完成,可利用兩種方式建立捷徑:透過 PowerApps 製作器入口網站或直接透過 Fabric 建立。
透過 PowerApps 製作器入口網站建立捷徑
授權的 PowerApps 使用者可存取 PowerApps 製作器入口網站,使用連結 Microsoft Fabric 功能。 透過此單一動作在 Fabric 建立 Lakehouse,同時自動為 Dataverse 環境的每個資料表產生捷徑。 如需詳細資訊,請參閱 Dataverse 直接整合 Microsoft Fabric。
透過 Fabric 建立捷徑
Fabric 使用者也可建立 Dataverse 捷徑。 透過建立捷徑 UX,使用者可選取 Dataverse,提供其環境 URL,並瀏覽可用資料表。 此體驗可讓使用者選擇要納入哪些資料表至 Fabric,而非納入所有資料表。
注意
Dataverse 資料表必須先在 Dataverse Managed Lake 可用,然後才可見於 Fabric 建立捷徑 UX。 若您的資料表未顯示於 Fabric,請使用 PowerApps 製作器入口網站的連結至 Microsoft Fabric 功能。
授權
Dataverse 捷徑使用委派授權模型。 在此模型,捷徑建立者會指定 Dataverse 捷徑憑證,且該捷徑的所有存取權均由該憑證授權。 支援的委派憑證類型為組織帳戶 (OAuth2)。 組織帳戶必須擁有系統管理員權限,才能存取 Dataverse Managed Lake 資料。
注意
新增至 Fabric 工作區的服務主體必須擁有管理員角色,才能授權 Dataverse 捷徑。
快取功能
捷徑快取功能可用於降低關聯跨雲端資料存取的輸出成本。 當透過外部捷徑讀取檔案時,檔案會儲存在 Fabric 工作區快取。 後續讀取要求是由快取而非遠端儲存體提供者提供。 快取檔案保留期間為 24 小時。 每次存取檔案時,會重設保留期間。 若遠端儲存體提供者的檔案比快取檔案更新,則由遠端儲存體提供者提供要求,且更新檔案將儲存於快取。 如果檔案尚未存取超過 24 小時,則會從快取中清除。 不會快取大小大於 1 GB 的個別檔案。
注意
捷徑快取功能目前僅支援 GCS、S3 與 S3 相容捷徑。
若要啟用捷徑快取功能,請開啟工作區設定面板。 選擇 OneLake 索引標籤。將快取設定切換為 開啟,然後選取 儲存。
捷徑如何利用雲端連線
使用雲端連線委派 ADLS 與 S3 捷徑授權。 當建立新 ADLS 或 S3 捷徑時,您可建立新連線或為資料來源選取現有連線。 設定捷徑連線是繫結操作。 僅具連線權限的使用者才能執行繫結操作。 若您無連線權限,則無法使用該連線建立新捷徑。
捷徑安全性
需要某些權限才能管理及使用捷徑。 OneLake 捷徑安全性會檢視建立捷徑並用其存取資料所需的權限。
捷徑如何處理刪除?
捷徑不會執行層疊刪除。 當您針對捷徑執行刪除操作時,僅會刪除捷徑物件。 捷徑目標資料保持不變。 然而,若您對捷徑內檔案或資料夾執行刪除操作,且您在捷徑目標擁有執行刪除操作權限,則會刪除目標檔案和/或資料夾。 下列範例說明這點。
刪除範例
使用者 A 擁有 lakehouse,其中包含以下路徑:
MyLakehouse\Files\MyShortcut\Foo\Bar
MyShortcut 捷徑指向包含 Foo\Bar 目錄的 ADLS Gen2 帳戶。
刪除捷徑物件
使用者 A 在下列路徑執行刪除操作:
MyLakehouse\Files\MyShortcut
在此案例,MyShortcut 會從 lakehouse 刪除。 捷徑不會執行層疊刪除,因此 ADLS Gen2 帳戶 Foo\Bar 的文件與目錄保持不受影響。
刪除捷徑參考內容
使用者 A 在下列路徑執行刪除操作:
MyLakehouse\Files\MyShortcut\Foo\Bar
在此案例,若使用者 A 在 ADLS Gen2 帳戶具寫入權限,則 Bar 目錄將從 ADLS Gen2 帳戶刪除。
工作區譜系檢視
在工作區內多個 Fabric 項目之間建立捷徑時,您可透過工作區譜系檢視視覺化捷徑關係。 按一下工作區總管右上角的譜系檢視按鈕 ()。
注意
譜系檢視範圍僅限單一工作區。 將不會顯示所選工作區外位置的捷徑。
限制與考量
- 每個 Fabric 項目的捷徑數量上限為 100,000 個。 在此情況,項目一詞是指:應用程式、lakehouse、倉儲、報表等等。
- 單一 OneLake 路徑的捷徑數量上限為 10 個。
- 捷徑連結的直接捷徑數量上限為 5 個。
- ADLS 與 S3 捷徑目標路徑不能包含 RFC 3986 第 2.2 節的任何保留字元。 有關允許的字元,請參閱 RFC 3968 第 2.3 節。
- OneLake 捷徑名稱、上層路徑與目標路徑不能包含「%」或「+」字元。
- 捷徑不支援非拉丁字元。
- ADLS 或 S3 捷徑不支援複製 Blob API。
- 直接指向 ADLS 容器的捷徑不適用複製功能。 建議將 ADLS 捷徑建立在至少位於容器下一層級的目錄。
- 無法在ADLS或 S3 快捷方式內建立更多快捷方式。
- 目前無法使用數據倉儲和語意模型的快捷方式譜系。
- 數據表 API 最多可能需要一分鐘的時間才能辨識新的快捷方式。
- OneLake 捷徑尚不支援透過受控私人端點連接至 ADLS Gen2 儲存帳戶。如需深入瞭解,請參閱 Fabric 的受控私人端點 。