建模的基本原則,在建模的過程中需要加以考慮,避免以後遇到大坑措手不及,而不是簡單的為了建模而建模。
主要從資料業務特性和訪問特性兩個角度來考慮:
將業務相近或者相關、粒度相同的資料設計為乙個邏輯或者物理模型;
將高概率同時訪問的資料放一起 ,將低概率同時訪問的資料分開儲存。
核心模型包括的宇段支援常用的核心業務,擴充套件模型包括的字段支援個性化或少量應用的需要,不要讓擴充套件模型包括的字段過多的入侵核心模型,破壞核心模型的效能及簡潔等。
在很多時候,設計可能清晰,但儲存成本很高,或儲存成本很小但計算邏輯複雜,效能差,都需要做乙個比較,做到均衡,而非執意孤行。
避免重複計算,需將公共邏輯在底層實現並統一口徑。
處理邏輯不變,多次執行結果需保持一致。
相同含義欄位需在多表中命名一致,表命名需清晰規範,便於查詢及使用。
6.1、表命名規範
ods層:資料引入層
日誌類非結構化表:ods_[資料域]_ [自定義內容]_ [重新整理頻率]
業務庫結構化同步表:ods_[資料域]_ [業務庫名]_ [表名]_[重新整理頻率]
dwd層:明細資料層
dwd_[資料域] _[自定義內容] _[粒度] _[重新整理頻率]
dws層:公共彙總層
dws__[主題域] _[自定義內容] _[粒度] _[重新整理頻率]
ads層: 資料應用層
ads__ [自定義內容]_ [粒度]_[重新整理頻率]
6.2、組合標記
組合標記
標記含義
ma按月分割槽全量更新
mi按月分割槽增量更新
da按天分割槽全量更新
di按天分割槽增量更新
ha按小時分割槽全量更新
hi按小時分割槽增量更新
測試的一些基本原則
軟體測試的原則尚沒有標準的說法,大多是經驗之談,一般有下面幾條可作為測試的基本原則。1 所有的測試都應追溯到使用者需求。2 應當把 盡早地和不斷地進行軟體測試 作為軟體測試者的座右銘。3 設計時應完成測試計畫,詳細的測試用例定義可在設計模型確定後開始,測試可在 產生之前進行計畫和設計。4 paret...
關於程式設計的一些基本原則
關於程式設計的基本原則 程式設計往往和演算法的時間複雜度和空間複雜度緊密相連,優化演算法的時間複雜度和空間複雜度使程式設計的根本目的之一。演算法的時間複雜度是指執行程式所需要的時間,演算法的空間複雜度是指執行程式所需要的儲存空間。一般來說,在任何程式設計競賽中,時間複雜度往往比空間複雜度容易出問題,...
成為程式設計高手的一些基本原則
不知不覺做軟體已經做了十年,有成功的喜悅,也有失敗的痛苦,但總不敢稱自己是高手,因為和我心目中真正的高手們比起來,還差的太遠。世界上並沒有成為高手的捷徑,但一些基本原則是可以遵循的。1.紮實的基礎。資料結構 離散數學 編譯原理,這些是所有電腦科學的基礎,如果不掌握他們,很難寫出高水平的程式。據我的觀...