1.常規(guī)表
常規(guī)表是我們需要固化的表,是正式使用的表,是目前一段時間內(nèi)需要去維護去完善的表。
規(guī)范:分層前綴[dwd|dws|ads|bi]業(yè)務域主題域XXX粒度。
業(yè)務域、主題域我們都可以用詞根的方式枚舉清楚,不斷完善,粒度也是同樣的,主要的是時間粒度、日、月、年、周等,使用詞根定義好簡稱。
2.中間表
中間表一般出現(xiàn)在Job中,是Job中臨時存儲的中間數(shù)據(jù)的表,中間表的作用域只限于當前Job執(zhí)行過程中,Job一旦執(zhí)行完成,該中間表的使命就完成了,是可以刪除的(按照自己公司的場景自由選擇,以前公司會保留幾天的中間表數(shù)據(jù),用來排查問題)。
規(guī)范:mid_table_name_[0~9|dim]
table_name是我們?nèi)蝿罩心繕吮淼拿郑ǔ碚f一個任務只有一個目標表。這里加上表名,是為了防止自由發(fā)揮的時候表名沖突,而末尾大家可以選擇自由發(fā)揮,起一些有意義的名字,或者簡單粗暴,使用數(shù)字代替,各有優(yōu)劣吧,謹慎選擇。
3.臨時表
臨時表是臨時測試的表,是臨時使用一次的表,就是暫時保存下數(shù)據(jù)看看,后續(xù)一般不再使用的表,是可以隨時刪除的表。
規(guī)范:tmp_xxx
只要加上tmp開頭即可,其他名字隨意,注意tmp開頭的表不要用來實際使用,只是測試驗證而已。
4.維度表
維度表是基于底層數(shù)據(jù),抽象出來的描述類的表。維度表可以自動從底層表抽象出來,也可以手工來維護。
規(guī)范:dim_xxx
維度表,統(tǒng)一以dim開頭,后面加上,對該指標的描述,可以自由發(fā)揮。
5.手工表
手工表是手工維護的表,手工初始化一次之后,一般不會自動改變,后面變更,也是手工來維護。一般來說,手工的數(shù)據(jù)粒度是偏細的,所以,暫時我們統(tǒng)一放在dwd層,后面如果有目標值或者其他類型手工數(shù)據(jù),再根據(jù)實際情況分層。
規(guī)范:dwd_業(yè)務域_manual_xxx
手工表,增加特殊的主題域,manual,表示手工維護表
6.詞根和指標
主要用來規(guī)范中文和英文的映射關系。例如:用戶可以翻譯成user也可以是account,標簽可以是tag也可以是label,這些要統(tǒng)一,避免出現(xiàn)多個不同的命名。