共用方式為


# 語意模型中的語意數據傳播

當您將語意模型FabricDataFrame 時,語意模型中的元數據和批注等語意資訊會自動附加至 FabricDataFrame。 在本文中,您將瞭解 SemPy Python 連結庫如何保留附加至語意模型數據表和數據行的批注。

pandas 用戶的語意傳播

SemPy Python 連結庫是語意連結功能的一部分,並提供 pandas 使用者。 SemPy 支援 pandas 可讓您對資料執行的作業。

SemPy 也可讓您從您操作的語意模型傳播語意數據。 藉由傳播語意數據,您可以在執行切割、合併和串連等作業時,保留附加至語意模型中數據表和數據行的批註。

您可以使用下列兩種方式之一建立 FabricDataFrame 資料結構

  • 您可以將資料表或量值輸出從語意模型讀入 FabricDataFrame。

    當您從語意模型讀取到 FabricDataFrame 時,Power BI 中的元數據會自動凍結或填入 FabricDataFrame。 換句話說,FabricDataFrame 會保留模型數據表或量值的語意資訊。

  • 您可以使用記憶體內部數據來建立 FabricDataFrame,就像對 pandas DataFrame 所做的一樣。

    當您從記憶體內部數據建立 FabricDataFrame 時,您需要提供 FabricDataFrame 可從中提取元數據資訊的語意模型名稱。

SemPy 保留語意數據的方式會根據您執行的作業和您操作之 FabricDataFrame 的順序等因素而有所不同。

使用合併進行語意傳播

當您合併兩個 FabricDataFrame 時,DataFrame 的順序會決定 SemPy 如何傳播語意資訊。

  • 如果 同時標註這兩個 FabricDataFrame,則左側 FabricDataFrame 的數據表層級元數據優先。 相同的規則適用於個別數據行;左 FabricDataFrame 中的數據行批注優先於右邊 DataFrame 中的數據行批注。

  • 如果 只標註一個 FabricDataFrame,SemPy 會使用其元數據。 相同的規則適用於個別數據行;SemPy 會使用批注式 FabricDataFrame 中存在的數據行批注。

使用串連的語意傳播

當您針對每個數據行串連多個 FabricDataFrame 時,SemPy 會從符合數據行名稱的第一個 FabricDataFrame 複製元數據。 如果有多個相符專案且元數據不相同,SemPy 會發出警告。

您也可以先放置 FabricDataFrame,以傳播 FabricDataFrame 與一般 pandas DataFrame 的串連。

Spark 使用者的語意傳播

語意連結 Spark 原生連接器會凍結 Spark 數據行的元數據字典(或填入)。 目前,對語意傳播的支援有限,而且受限於Spark的內部實作架構信息傳播方式。 例如,數據行匯總會等量元數據。