在維度模型中,事實資料表儲存與事件聯動的資料欄。 它可以儲存銷售訂單、庫存餘貨、匯率、溫度讀數等。
事實資料表包括若干數值列,例如「數量」。 在 FineBI 可分析查詢在維度和分組中匯總資料欄,如銷售訂單數量(透過使用總和、計數、平均值和其他函式)。
事實資料表還包括維度鍵,它們用於確定事實的維度。 維度鍵值用於確定事實的粒度,即定義事實的原子級別。 例如,銷售事實資料表中的訂單日期維度鍵設定日期級別的事實粒度,而銷售目標事實資料表中的目標日期維度鍵則可以在季度級別設定粒度。
若要輕鬆識別事實資料表,通常要為其名稱加上前綴 f_ 或 Fact_。
範例事實資料表沒有主鍵。 這是因為它通常沒有什麼有用的目的,並且會不必要地增加表儲存大小。 主鍵通常由一組維度鍵和屬性表示。
範例事實資料表具有各種維度鍵,用於確定事實資料表的維度。 維度鍵是對相關維度中的代理鍵(或更進階別屬性)的引用。
注:範例是一個不尋常的事實資料表,至少不包含一個日期維度鍵。
一個事實資料表可以多次引用某個維度。 在這種情況下,它被稱為角色扮演緯度。 在此範例中,事實資料表具有 OrderDate_Date_FK 和 ShipDate_Date_FK 維度鍵。 每個維度鍵表示不同的角色,但只有一個實際日期維度。
最好將每個維度鍵都設定為 NOT NULL。
屬性
範例事實資料表有一個屬性。 屬性提供其他資訊並設定事實資料的粒度,但它們既不是維度鍵,也不是維度屬性,也不是數值列。 在此範例中,屬性列將儲存銷售訂單資訊。 其他範例可能包括磁軌號碼或票證號碼。 出於分析目的一個屬性可能會形成一個退化緯度。
範例事實資料表還具有數值列,常見的為累加列(這意味着可以使用其他聚合對列求和與匯總)。
有三種類型的事實資料表:
交易事實資料表
定期快照事實資料表
累計快照事實資料表
交易事實資料表儲存業務事件或交易。 每行均以維度鍵和數值列以及可選的其他屬性儲存事實。 所有資料在插入時都是完全已知的,並且永遠不會更改(除非更正錯誤)。
通常,交易事實資料表以儘可能低的粒度級別儲存事實,幷包含在所有維度上累加的數值列。 例如儲存每個銷售訂單行的銷售事實資料表是交易事實資料表。
定期快照事實資料表以預定義的時間或特定時間間隔儲存數值列。 它匯總了一段時間內的關鍵指標或效能指標,因此它對於趨勢分析和監視隨時間的變化非常有用。 數值列始終是半累加性的。
清單事實資料表是定期快照表的一個很好的範例。 它每天載入每種產品的日末庫存餘貨。
當記錄大量交易的成本很高,並且不支援任何有用的分析要求時,可以使用定時快照表來代替交易事實資料表。 例如,一天內可能有數百萬種庫存變動(這可以儲存在交易事實資料表中),但分析只關注日末庫存水平的趨勢。
累計快照事實資料表儲存跨明確定義的時間段或工作流累計的數值列。 它通常記錄不同階段或里程碑的業務流程狀態,這可能需要數天、數週甚至數月才能完成。
事實資料行在流程中的第一個事件之後很快載入,然後在每次發生里程碑事件時,該行都會按可預測的順序進行更新。 更新會繼續到此流程完成時。
累計快照事實資料表具有多個日期維度鍵,每個鍵表示里程碑事件。數值列通常會記錄持續時間。
數值列通常以數值表示,常見為加法。 但是,某些數值列並不總是可以新增的。 這些數值列分為半累加性或非累加性。
可跨任何維度對累加性數值列進行求和。 例如,訂單數量和銷售收入是累加性數值列(前提是收入以單一貨幣記錄)。
只能跨特定維度對半累加性數值列進行求和。
下面是半累加性數值列的一些範例。
不能跨其他時間段對定期快照事實資料表中的任何數值列進行求和。 例如,不應對夜間取樣的庫存物料的年限進行求和,但可以每晚計算貨架上所有庫存物料的年限。
不能跨其他產品對清單事實資料表中的庫存餘貨數值列進行求和。
不能跨貨幣對具有貨幣維度鍵的銷售事實資料表中的銷售收入進行求和。
不能跨任何維度對非累加性數值列進行求和。 一個例子是溫度讀數,從本質上講,將其新增到其他讀數是沒有意義的。
其他範例包括費率,比如單價和比率。 更好的做法是儲存用於計算比率的值,這樣可以在需要時計算比率。 例如,銷售事實的折扣百分比可以儲存為折扣金額數值列(除以銷售收入數值列)。 或者,不應隨時間推移對貨架上庫存物料的年限進行求和,但你可能會觀察到庫存物料的平均年限趨勢。
雖然有些數值列不能求和,但它們仍然是有效。 可以使用計數、非重複計數、最小值、最大值、平均值等來合併它們。 非累加性數值列在計算中使用時也可能會變為可累加。 例如,單位價格乘以訂單數量產生銷售收入,這是累加性的。
當事實資料表不包含任何數值列時,稱為無事實事實資料表。 無事實事實資料表通常記錄事件或發生情況,如學生上課情況。 從分析的角度看,可以透過統計事實資料行來實現對維度的度量。
合併事實資料表表示將基本事實資料表匯總到更低的維度和/或更高的粒度。 其目的是加速常見查詢維度的查詢效能。
滑鼠選中內容,快速回饋問題
滑鼠選中存在疑惑的內容,即可快速回饋問題,我們將會跟進處理。
不再提示
10s後關閉
反馈已提交
网络繁忙