共用方式為


什麼是 Lakehouse 架構(預覽)?

Lakehouse 支援建立自定義架構。 架構可讓您將資料表分組在一起,以取得更好的資料探索、訪問控制等等。

建立 Lakehouse 結構描述

若要啟用 Lakehouse 的架構支援,請在建立 Lakehouse 架構時核取 Lakehouse 架構 (公開預覽) 的方塊。

顯示新增 lakehouse 對話方塊的螢幕擷取畫面。

重要

工作區名稱必須只包含英數位元,因為預覽限制。 如果在工作區名稱中使用特殊字元,某些 Lakehouse 功能將無法運作。

建立 Lakehouse 之後,您可以在資料表 底下找到名為 dbo 的預設架構。 此架構一律存在,且無法變更或移除。 若要建立新的架構,請將滑鼠停留在資料表 上方,選取...,然後選擇新增架構 輸入您的結構描述名稱並選取建立。 您會看到您的架構會依字母順序列在資料表 底下

顯示新增 Lakehouse 架構 對話框的螢幕擷取畫面。

將資料表儲存在 Lakehouse 架構中

您需要架構名稱,才能將資料表儲存在架構中。 否則,它會移至預設 dbo 架構。

df.write.mode("Overwrite").saveAsTable("contoso.sales")

您可以使用 Lakehouse Explorer 來排列資料表,並將資料表名稱拖放到不同的架構。

在架構之間移動資料表的動畫。

警告

如果您修改資料表,您也必須更新筆記本程式碼或資料流等相關項目,以確保它們符合正確的架構。

使用結構描述捷徑帶入多個資料表

若要從其他 Fabric Lakehouse 或外部儲存體參考多個 Delta 資料表,請使用結構描述捷徑,在所選的架構或資料夾下顯示所有資料表。 來源位置中資料表的任何變更也會出現在架構中。 若要建立結構描述捷徑,請將滑鼠停留在資料表上方,選取…,然後選擇新的結構描述捷徑。 然後選取另一個 Lakehouse 上的架構,或外部儲存體上具有 Delta 資料表的資料夾,例如 Azure Data Lake Storage (ADLS) Gen2。 這會使用您參考的資料表建立新的架構。

顯示新 Lakehouse 架構捷徑的螢幕擷取畫面。

存取 Power BI 報告的 Lakehouse 架構

若要建立語意模型,只要選擇您想要使用的資料表即可。 資料表可以位於不同的架構中。 如果來自不同架構的資料表共用相同的名稱,當您在模型檢視中看到資料表名稱旁邊的數位。

Notebook 中的 Lakehouse 架構

當您在筆記本物件總管中查看已啟用架構的 Lakehouse 時,您會看到資料表位於架構中。 您可以將資料表拖放到程式碼儲存格,並取得代碼段,該程式碼片段會參考資料表所在的架構。 使用此命名空間來參考程序代碼中的資料表:「workspace.lakehouse.schema.table」。 如果您省略任何項目,執行程式會使用預設設定。 例如,如果您只提供資料表名稱,它會針對筆記本使用預設 Lakehouse 的預設架構 (dbo)。

重要

如果您想要在程式碼中使用架構,請確定筆記本的預設 Lakehouse 已啟用架構。

跨工作區 Spark SQL 查詢

使用命名空間 「workspace.lakehouse.schema.table」 來參考程式碼中的資料表。 如此一來,如果執行程式碼的使用者有權限存取資料表,則可以聯結來自不同工作區的資料表。

SELECT * 
    FROM operations.hr.hrm.employees as employees 
    INNER JOIN global.corporate.company.departments as departments
    ON employees.deptno = departments.deptno;

重要

請確定您只從已啟用架構的 Lakehouse 聯結資料表。 從未啟用架構的 Lakehouse 聯結資料表將無法運作。

公開預覽限制

下面列出的不支援的功能/功能適用於目前版本的公開預覽。 在正式推出之前,這些版本將會在後續版本中解決。

不支援的功能/功能 備註
共用湖屋 在命名空間中使用共用 Lakehouses 的工作區將無法運作,例如 wokrkspace.sharedlakehouse.schema.table。 THe 用戶必須具有工作區角色,才能在 namaspace 中使用工作區。
非差異、受控資料表架構 不支援取得受控、非差異格式資料表的架構(例如 CSV)。 在 Lakehouse 總管中展開這些資料表並不會在 UX 中顯示任何架構資訊。
外部Spark資料表 不支援外部Spark資料表作業(例如探索、取得架構等)。 這些資料表在UX中無法辨認。
公用 API 已啟用架構的 Lakehouse 不支援公用 API(列出資料表、載入資料表、公開 defaultSchema 擴充屬性等)。 在已啟用架構的 Lakehouse 上呼叫的現有公用 API 會產生錯誤。
資料表維修 不支援。
更新資料表屬性 不支援。
包含特殊字元的工作區名稱 不支援具有特殊字元的工作區(例如空格、斜線)。 顯示使用者錯誤。
Spark 檢視 不支援。
Hive 特定的功能 不支援。
Spark.catalog API 不支援。 請改用 Spark SQL。
USE <schemaName> 無法跨工作區運作,但在同一個工作區內支援。
遷移 不支援將現有的非架構 Lakehouse 移轉至架構型 Lakehouses。