規(guī)范性 |
命名規(guī)范檢查(表、視圖、工作流、字段) |
是否符合MaxCompute數(shù)倉建設(shè)規(guī)范管理指南中命名規(guī)范的表命名規(guī)范。
|
|
代碼格式和注釋規(guī)范性 |
是否符合MaxCompute數(shù)倉建設(shè)規(guī)范管理指南中的編碼規(guī)范。
|
|
表引用規(guī)范性 |
數(shù)據(jù)不允許跨層引用。 |
|
表更新策略規(guī)范 |
建議臨時表均為非分區(qū)表,正式表均為分區(qū)表。 |
|
是否支持重跑 |
代碼必須支持重跑。 |
|
源數(shù)據(jù)質(zhì)量 |
非空值檢查 |
檢查所用字段是否存在空值,以及代碼對空值處理的策略是否正確。 |
|
字段枚舉值檢查 |
字段的枚舉值是否都在代碼考慮范圍內(nèi),是否有可能會出現(xiàn)新值。 |
|
主鍵檢查 |
物理主鍵或邏輯主鍵是否成立。 |
|
數(shù)據(jù)完整性檢查 |
代碼中引用的數(shù)據(jù)能否支撐實際需求。 |
|
字段間邏輯檢查 |
字段間的業(yè)務(wù)邏輯關(guān)系是否在數(shù)據(jù)上成立,例如余額=總的發(fā)放-總的回收。 |
|
代碼質(zhì)量/BUG檢查 |
歷史拉鏈表檢查斷鏈/交叉鏈 |
使用標準SQL進行檢驗。 |
|
數(shù)據(jù)傾斜檢查 |
是否存在傾斜的情況,是否有大表join小表未用mapjoin等。 |
|
表分區(qū)選擇檢查 |
代碼對表分區(qū)的選擇是否正確。 |
|
關(guān)聯(lián)條件檢查 |
關(guān)聯(lián)條件是否正確,是否會產(chǎn)生意料外的結(jié)果,例如多對多關(guān)聯(lián)、笛卡爾積。 |
|
字段類型檢查 |
字段類型是否正確,例如:金額字段必須為X數(shù)據(jù)類型,編號字段必須為X數(shù)據(jù)類型。 |
|
執(zhí)行效率檢查 |
單條SQL執(zhí)行時間不超過30分鐘,單個腳本執(zhí)行時間不超過60分鐘。 |
|
數(shù)倉特殊需求 |
臟數(shù)據(jù)檢查 |
檢查是否有臟數(shù)據(jù)。 |
|
增量/全量數(shù)據(jù)抽取規(guī)范 |
抽取時間大于X分鐘的,則考慮更改為增量抽取。 |
|
數(shù)倉抽取時間點檢查 |
數(shù)倉抽取時業(yè)務(wù)系統(tǒng)是否ready,抽取的數(shù)據(jù)是否完整。 |
|
指標特性檢查 |
細分指標趨勢檢查 |
例如會員拉鏈表記錄數(shù)相比前一天必須是正增長、當(dāng)日累計值-上日累計值必須大于0。 |
|
不同粒度數(shù)據(jù)轉(zhuǎn)換正確性 |
例如細粒度向粗粒度匯總,通常使用最大/最高/最小/最低等過濾條件,如:支用層逾期天數(shù)轉(zhuǎn)換到客戶層指標(最高逾期天數(shù))。最高逾期天數(shù) = Max(支用層逾期天數(shù))。 |
|
值域范圍檢查 |
檢查字段值的范圍是否正確,如:金額>=0,比率<=1,天數(shù)<=業(yè)務(wù)起始日期至今,還款日期>=放款日期。 |
|
代碼值分布檢查 |
從業(yè)務(wù)邏輯考量字段值的分布情況是否合理。 |
|
可累加值與不可累加值檢查 |
檢查可累加值和不可累加值的處理邏輯正確性,如:計算客戶數(shù)總計時需要做去重處理,金額則可以累加。 |
|