软件架构设计原则和大数据平台架构层
1、軟件架構設計的六大原則:
1)“開-閉”原則(OCP)
??? Software entities should be open forextension, but closed for modification.
??? 對擴展開放,對修改封閉。
2)里氏代換原則(LSP)
凡是基類適用的地方,子類一定適用。
3)依賴倒轉原則(DIP)
??? 要依賴抽象,不要依賴具體。
4)迪米特法則(LoD)
??? 一個對象應該對其他對象有盡可能少的了解。
5)接口隔離原則(ISP)
??? 使用多個專門的接口比適用單一的接口要好。
6)合成/聚合復用原則(CARP)
要盡量使用合成/聚合,盡量不要使用繼承。
2、大數據平臺典型的架構層:
根據數據的流向自底向上劃分五層,跟傳統的數據倉庫其實很類似,數據類的系統,概念上還是相通的,分別為數據采集層、數據處理層、數據分析層、數據訪問層及應用層。同時,大數據平臺架構跟傳統數據倉庫有一個不同,就是同一層次,為了滿足不同的場景,會采用更多的技術組件,體現百花齊放的特點,這是一個難點。
1)?數據采集層:既包括傳統的ETL離線采集、也有實時采集、互聯網爬蟲解析等等。
2)?數據處理層:根據數據處理場景要求不同,可以劃分為HADOOP、MPP、流處理等等。
3)?數據分析層:主要包含了分析引擎,比如數據挖掘、機器學習、深度學習等。
4)?數據訪問層:主要是實現讀寫分離,將偏向應用的查詢等能力與計算能力剝離,包括實時查詢、多維查詢、常規查詢等應用場景。
5)?數據應用層:根據企業的特點不同劃分不同類別的應用,比如針對運營商,對內有精準營銷、客服投訴、基站分析等,對外有基于位置的客流、基于標簽的廣告應用等等。
6)?數據管理層:這是一縱,主要是實現數據的管理和運維,它橫跨多層,實現統一管理。
總結
以上是生活随笔為你收集整理的软件架构设计原则和大数据平台架构层的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Hadoop性能调优概要说明
- 下一篇: 秦赵长平之战启示