判斷一張表是增量表還是全量表,我認爲有以下步驟:
1.這張表是基礎數據表還是統計數據表(基礎數據表一般來自業務系統的明細記錄數據,統計數據表則爲基於明細記錄數據通過各種統計口徑的統計表)。
2.判斷這張表的同步方式(基礎數據表)或者統計主題(統計數據表)。
3.根據以上步驟得出這張表是增量還是全量表。
舉兩個例子:
第一個例子是基礎數據表的例子。
1.比如電商每天都會產生用戶瀏覽數據,首先這張表屬於基礎數據表,如果表存儲的就是所有的用戶的所有瀏覽記錄,則這張表應該是全量表(這點應該沒問題)。
因爲所有用戶的所有瀏覽數據太大了,所以想分開存儲,假如說每天產生的瀏覽記錄,這張表存儲的是發生在和時間分區當天的用戶瀏覽記錄,在從瀏覽記錄寬表獲取數據的時候,限定了瀏覽時間爲當天發生的瀏覽時間,這張表屬於基礎數據表,但是它是增量表。
基礎數據表還是比較好判斷全量表還是增量表。
第二個例子是統計數據表的例子。
2。用戶標籤類型統計數據表,比如說這張表它的統計指標基本都是近90天的統計週期:近90天用戶瀏覽量等等,那有些同學可能就會認爲這張表用的數據量不是全量的,所以它是增量表。
這種想法其實比較正常,但是我們需要知道統計的主題是誰,真正統計的主體是全量用戶,並沒有對用戶註冊時間等做狀態限制,比如說註冊時間大於6個月的用戶,所以統計主體是全體用戶,這些近90天的指標只是統計主題的一些維度,或者說屬性。
所以這張表是全量表。