事實表設計之累計快照事實表

2021-09-29 04:59:12 字數 867 閱讀 7887

累計快照事實表的主要用於研究事件之間時間間隔,當然並不僅限於此,還有一些特殊用途,可以在實際工作中靈活運用。

設計特點

1)資料不斷更新:不同於前面說的兩種事實表,累計快照事實表中的資料例項會定期更新。

如上圖所示多事務事實表中一條交易記錄會每天有一條資料來記錄整個交易過程;而累積快照事實表只會有一條記錄,資料會一致更新直到過程結束。

2)適用於業務過程有明確的起止時間的短生命週期場景,如交易訂單、物流訂單。長生命週期的實體記錄完全可以由週期快照表實現,如商品、使用者。

3)業務的流程不是只有一種,如交易流程可能是

① 下單、支付、發貨、確認

② 下單、關閉訂單

對於不同過程,要設計統一的結束標誌,沒有的業務時間置空

樣例設計

有時需要將每個過程時間間隔作為事實放在表中,如下單到支付時間間隔、支付到發貨時間間隔、發貨到確認時間間隔,方便下游直接使用

物理實現

1)全量表:一般是日分割槽,每天儲存前一天的全量資料和當天增量資料進行合併,保證每條資料的最新狀態,此方式適用於資料量不大的情況

2)全量變化表:累積事實表用於儲存生命周期短的例項,所以可以根據業務實體從開始到結束的最大時間間隔,如交易業務最大時間跨度200天,每天儲存的是過去200天的全量資料,200天之前的資料儲存在歸檔表中。適用於資料量大的場景

3)以業務結束時間分割槽:每天分割槽中存放的是當天結束的業務,然後用乙個非常大的分割槽(如 3000-12-31)儲存所有至今未結束的記錄,這種方式不會浪費儲存資源

週期快照事實表和累計快照事實表

累計快照事實表的這種最簡單的實現方法中沒有給出保留中間點的歷史資訊的方法,如訂單本身的變化。至少有三種方法可以用來捕獲這種中間的狀態的變化 1 在諸如月末等的固定時間間隔對累計快照再進行快照處理,即聯合使用週期快照和累計快照技術。這種累計快照的週期快照事實表應該被建立為單獨的事實表,可以降低應用的複...

交易事實表 週期快照事實表和累積快照事實表

在資料倉儲領域有乙個概念叫transaction fact table,中文一般翻譯為 事務事實表 事務事實表是維度建模的資料倉儲中三種基本型別事實表中的一種,另外兩種分別是週期快照事實表和累積快照事實表。事務事實表與週期快照事實表 累積快照事實表使用相同的一致性維度,但是它們在描述業務事實方面是有...

交易事實表 週期快照事實表和累積快照事實表

在資料倉儲領域有乙個概念叫transaction fact table,中文一般翻譯為 事務事實表 事務事實表是維度建模的資料倉儲中三種基本型別事實表中的一種,另外兩種分別是週期快照事實表和累積快照事實表。事務事實表與週期快照事實表 累積快照事實表使用相同的一致性維度,但是它們在描述業務事實方面是有...