簡介
建立絕佳的語意模型是數據分析師可以在 Microsoft Power BI 中執行的最重要工作之一。 藉由執行此作業,您可以讓其他人更輕鬆地了解您的資料,這可讓他們和您更輕鬆地建立有價值的 Power BI 報表。
本課程模組中頁面的資訊僅供教學使用,並不提供任何資料檔案。 您有機會在實驗室中使用實際數據。
良好的語意模型提供下列優點:
資料探索速度更快。
彙總更容易建立。
報表更準確。
撰寫報表所需的時間更少。
未來的報表維護更容易。
提供一組規則讓良好的語意模型變得很困難,因為所有數據都不同,而且該數據的使用方式會有所不同。 一般而言,較小的語意模型比較好,因為它的執行速度較快,而且會比較容易使用。 不過,定義較小的語意模型所需的項目,同樣是有問題的,因為它是啟發學習法和主體概念。
一般而言,較小的語意模型是由較少的數據表所組成,以及使用者可以看到的每個數據表中較少的數據行。 如果您從 Sales 資料庫匯入所有必要的資料表,但資料表總數為 30 個資料表,則使用者將不會覺得這很直覺。 將這些數據表折迭成五個數據表,可讓使用者更直覺化語意模型,而如果使用者開啟數據表並找到 100 個數據行,他們可能會發現它很龐大。 拿掉不必要的數據行以提供更容易管理的數目,會增加使用者讀取所有數據行名稱的可能性。 總而言之,設計語意模型時,您應該為了簡單起見。
下圖是語意模型的範例。 這些方塊包含資料的資料表,而方塊中的每個明細項目都是一個資料行。 連接這些方塊的線條代表資料表之間的關聯性。 即使是在這種簡單的模型中,這些關聯性也可能很複雜。 語意模型可能會變得容易分組織,而且模型中的數據表計數總計可以逐漸增加。 讓您的語意模型保持簡單、完整且精確,需要持續努力。
關聯性是透過主索引鍵和外部索引鍵,在資料表之間定義的。 主索引鍵是用來識別每個唯一、非 Null 資料列的資料行。 例如,如果您有一個 Customers 資料表,您可能會有一個可識別每個唯一客戶的索引。 第一個數據列的標識碼為 1、第二個數據列的標識碼為 2 等等。 每個資料列都會獲指派一個唯一的值,這可透過這個簡單的值來參考:主索引鍵。 當您參考不同資料表中的資料列時,這個程序就會變得很重要,這就是外部索引鍵的用途。 當不同資料表之間有共同的主索引鍵和外部索引鍵時,就會形成資料表之間的關聯性。
Power BI 允許從具有不同資料來源的資料表建立關聯性,這是一個強大的功能,可讓您從 Microsoft Excel 提取一個資料表,然後從關聯式資料庫提取另一個資料表。 接著,您會建立這兩個數據表之間的關聯性,並將其視為統一的語意模型。
既然您已瞭解組成數據架構的關聯性,您可以探索特定類型的架構設計、star 架構,該架構已針對高效能和可用性優化。
星狀結構描述
您可以設計星狀結構描述來簡化資料。 這不是簡化資料的唯一方法,而是常用的方法。因此,每個 Power BI 資料分析師都應該了解。 在 star 架構中,語意模型中的每個數據表都會定義為維度或事實數據表,如下列視覺效果所示。
事實資料表包含觀測或事件資料值:銷售訂單、產品計數、價格、交易日期和時間,以及數量。 事實資料表可以包含數個重複的值。 例如,一個產品可以針對不同的客戶在不同的日期,出現在多個資料列中多次。 您可以彙總這些值以建立視覺效果。 例如,總銷售訂單的視覺效果是事實資料表中所有銷售訂單的彙總。 使用事實資料表時,通常會看到填入數字和日期的資料行。 數字可以是測量單位 (例如銷售量),也可以是索引鍵 (例如客戶識別碼)。 日期代表所記錄的時間,例如訂單日期或出貨日期。
維度資料表包含事實資料表中資料的詳細資訊:產品、位置、員工和訂單類型。 這些資料表會透過索引鍵資料行連接到事實資料表。 維度資料表用於篩選事實資料表中的資料並加以分組。 另一方面,事實數據表包含可測量的數據,例如銷售與收益,而每個數據列都代表維度數據表中值的唯一組合。 針對總銷售訂單視覺效果,您可以將資料分組,讓您依產品查看總銷售訂單,其中產品是維度資料表中的資料。
事實數據表比維度數據表大很多,因為事實數據表中發生許多事件,例如個別銷售。 維度資料表通常比較小,因為您可以篩選和分組的項目數有限。 例如,一年只包含這麼多月份,而 美國 只由特定數目的狀態組成。
考慮到有關事實資料表和維度資料表的此資訊,您可能會想要知道如何在 Power BI 中建立此視覺效果。
相關數據位於兩個數據表 Employee 和 Sales 中,如下列語意模型所示。 Sales 資料表包含可以彙總的銷售訂單值,因此會被視為事實資料表。 Employee 資料表包含可篩選銷售訂單的特定員工姓名,因此是維度資料表。 這兩個資料表之間的通用資料行 (也就是 Employee 資料表中的主索引鍵) 是 EmployeeID,因此您可以根據這個資料行,建立這兩個資料表之間的關聯性。
建立此關聯性時,您可以根據需求建立視覺效果,如下圖所示。 如果您沒有建立此關聯性,同時又記得兩個資料表之間的共同點,則建立視覺效果的難度就愈大。
星型架構和基礎語意模型是組織報表的基礎;建立這些連線和設計所花費的時間越多,建立和維護報表會比較容易。