背景概要
做數據的同學都能夠有體會,當我們做業務時間長了以後,數據表的數量就會變得龐大無比,很多過去的邏輯,如果負責的同學離職了,那麼能再看懂它的人就很少了。久而久之,就造成了表一大堆,沒人敢動的問題。等到計算或者存儲遇到瓶頸了,回過頭來再改,會讓人痛不欲生。
主要痛點
- 只建表,不刪表:絕大多數做數據工作的同學,都沒有及時清理無用表的習慣。
- 交接過程產生漏洞:由於業務的問題比較繁瑣,理解起來有一定難度,因此在離職交接時通常不會交接的很好,埋下了坑。
- 日常研發過程無規範:很多中小公司,數據作爲支持部門存在,解決需求就可以,沒有長遠的規劃,時間久了看不懂的東西越來越多。
- 野蠻開發,無序增長:業務高速發展時,大家以需求爲第一目標,開發過程沒有考慮計算與存儲問題,頻繁發生數據傾斜、全表掃描等場景,或者是數據存儲週期設置不合理。
談一談基本的治理思路
主要就是兩點:粗治理和細治理。
- 粗治理:普遍性治理項目,通過自動的掃描可以獲得的信息,通常包括如下幾種:
(1)創建的臨時表:以tmp/test開頭的表;
(2)無訪問信息表:例如最近一個月沒有訪問信息;
(3)無下游依賴表:下游沒有使用方的表;
(4)無更新時間表:表結構長期沒有更新信息。
將以上四類表抓出來,基本上能處理掉一大批沒人管的包。 - 細治理:專項性質的治理方案,主要針對有人負責的項目,通常包括如下幾種:
(1)運行時間過長的節點;
(2)存儲空間過大的表。
這一類的治理行爲通常花費時間很長,但產生的效果會非常明顯。
能夠沉澱下來的方法論
數據治理是一個十分消耗時間的過程,也是一次自我革新的歷程。除了制定一些可跟蹤、可管控、可負責、可施行的方案外,最好能夠制定一定的標準,即使這些標準很簡單,也能夠產生非常好的效果。對數據研發同學,就更要強化自我對於數據的治理意識,如果有可能,在招聘過程、晉升答辯、KPI制定中都加入數據治理相關的要求,對於推廣更有幫助。