目前工程企業所使用數據中心,多采用傳統技術建設,普遍存存在著建設成本高、擴展性不強、計算處理及分析挖掘能力有限的缺點。為了滿足基于大數據的數據存儲、處理、分析及應用需求,結合并行計算、大規模數據分析挖掘、線性擴展、全類數據支持等技術的企業級數據中心能夠有效的實現全業務、全層級、全類型數據資源的集中整合和分析。
目前,大部分工程行業企業所構建的數據中心積累了大量的結構化數據、非結構化數據、地理信息數據和海量的實時數據,同時大多采用集中式服務器架構(如Oracle Rac)技術導致擴展性不強,因此無法滿足數據的不斷增長的全存儲需求;并且數據處理以單點模式為主,缺少實時并行計算處理能力,無法應對海量數據的實時分析處理需求;數據存儲與處理多只支持結構化數據,無法對非結構化數據進行有效存儲、處理及分析,無法提供大數據環境下全方位、全類型數據存儲及處理服務,無法為數據深度分析挖掘提供支撐。
基于大數據的工程行業的企業級數據中心總體架構圖如圖一所示,按照層次可以劃分為數據源層、數據集成層、數據存儲層、分析/服務層、業務應用層、前段訪問層以及整體的數據管理平臺。
圖一、基于大數據技術的工程行業企業數據中心總體架構
數據中心通過接口表、接口文件、數據接收服務、數據消息接收等方式,實現對結構化數據、非結構化數據以及實施數據的獲取,滿足不同的數據時效性要求;數據中心在數據存儲層包含數據倉庫平臺、分布式數據平臺和流數據平臺,用來存儲不同特性的數據,并提供相應的數據服務;數據中心通過批量推送、數據實時服務等方式為目標系統提供整合后的結果數據,同時通過數據異步推送的方式,滿足數據共享及應用的需求;數據中心實現信息綜合展示及職能分析決策功能,并通過各種終端的集成展示,如PC終端、大屏幕以及移動終端,滿足各類分析結果在前端展示要求;并且提供數據中心數據資源管理,實現對數據中心元數據、數據質量、數據標準、數據模型以及數據資源的管理。
一、數據集成層:【包括數據獲取和作業調度兩部分】
數據獲取即將采集源系統的結構化數據、非結構化數據和實時數據送入數據中心,包括口表處理、消息接收處理、數據接收處理、實時數據采集和非結構化文件處理。
作業調度,實現對結構化數據、非結構化數據和實時數據獲取等作業的調度,實現對數據中心內部數據處理流操作(包括ETL、MapReduce、Sqoop等),以及數據推送給各目標系統的作業的統一集中調度。調度實現調度引擎,提供作業的自動、手動調節方式,基于作業依賴配置信息控制作業執行的先后順序,同時控制作業的并發度,并記錄作業的運行結果和日志。
二、數據存儲層:
【包含基于關系數據庫的傳統數據倉庫平臺、基于Hadoop生態體系分布式數據平臺及流數據平臺,用來存放不同性質的數據,并提供不同的數據服務?!?/p>
數據倉庫平臺:采用分層設計,即分為緩沖層、整合層、匯總層和集市層。緩沖層存儲的是數據中心從源系統采集的數據,數據緩沖層能夠很好的分擔源系統批量/實時分發數據的壓力,避免了重復獲取數據帶來的性能壓力、版本時差、多次開發、冗余存儲等問題,同時也能作為一個給的數據源,一定程度上屏蔽原系統(數據結構、時間窗口等)的變化對數據整合層、匯總層帶來的影響。整合層是經過數據清洗、轉換、整合后的業務數據,是數據中心的核心數據層,數據整合層是數據中心存儲數據的核心層。匯總層存儲,根據主題維度形成企業統計、匯總數據;更具主體報表加工需要,形成匯總數據;按主體存儲匯總數據,通過日期、主體和處理類型等維度對業務數據進行計算后形成匯總數據存儲。數據集市是面向特定業務單元(如業務部門)的分析數據集,數據主要基于整合層、匯總層數據,同時包含支撐目標特有的分析數據。
分布式數據平臺主要保存以下幾類數據:在傳統關系數據庫中難以保存的海量結構化數據、非結構化文檔數據、流數據轉儲數據和關系型數據庫的轉儲數據。按照數據存取需求和分布式平臺技術組件的特性,把存儲區分為基于HBase的數據存儲區和基于Hive的數據存儲區。非結構化數據層中存儲來自各源系統的非結構化數據,包括辦公文檔、設計圖紙、文本文件、圖像文件等。海量結構化數據層中存儲來自各源系統的海量結構化數據。流數據轉儲層中存儲來自流數據平臺的定期轉儲數據,協助流數據平臺實現實時數據的持久化保存。
流數據平臺包含實時數據整合層、實時數據匯總層和業務緩存層。實時數據整合層:在流數據平臺整合層中,為了避免數據源的不一致性,源系統入口端統一采用Socket通信的方式進行交互。由數據中心系統對源系統的Socket進行監聽,當源系統有數據產生時,監聽程序獲得數據,并將監聽的數據來源信息寫入相應的消息隊列中。 實時數據匯總層:采用 Storm 以流的方式對整合層消息隊列中的源數據進行處理,按照業務需要進行數據的匯總、計算和存儲。業務數據緩存層:當 Storm 對流數據進行計算完成后,會根據具體的業務計算邏輯得出數據(架構如圖二所示)。
圖二、數據存儲層架構圖
三、分析/服務層:包含信息綜合展示平臺、智能分析決策平臺和數據服務(如圖三所示)。
信息綜合展示平臺,以數據存儲層為基礎,是一個集報表查詢、綜合分析為一體的應用平臺,實現對分析展現頁面內容、布局、組件、央視、聯動關系等進行動態配置。
智能分析決策平臺功能包含數據加載、數據預處理、數據挖掘算法、分析模型管理及模型運行調度等模塊;為數據挖掘過程中數據理解、數據預處理、算法建模、模型評估、模型應用等環節提供技術職稱;并針對大數據分析的應用需求,融合大數據挖掘算法庫(包括描述性挖掘算法,如聚類分析、關聯分析等;預測性算挖掘算法,如分類分析、演化分析、異類分析等;專用數據分析挖掘算法,如文本分析、語音分析、圖像分析、視頻分析等)。
數據服務接口實現的主要功能包括數據實時服務、訂閱發布、批量數據服務等,并給予告訴緩存功能提升系統的整體性能。
圖三、分析/服務層架構圖
四、數據管理層:由元數據管理、數據質量管理、主數據管理、數據標準管理、作業集中調度監控功能(如圖四所示)。
元數據管理:實現數據中心元數據的快速查找、獲取、使用和共享,為數據中心數據共享交換、多維分析、輔助決策、數據挖掘等應用提供元數據支撐。
數據質量管理:實現數據中心數據的常態化質量稽核,保障業務系統數據接入的及時性、完整性和合規性。
主數據管理:實現物資、項目、合同等主數據的統一管理、應用和維護,保證物資、項目、合同主數據修改的一致性和穩定性。
數據標準管理:實現對數據中心標準文檔的統一管理。
作業集中調度監控:實現對數據中心ETL接口作業、大數據作業的統一任務調度管理及監控。
圖四、管理層架構圖
隨著工程行業的信息化水平不斷提高,信息系統已經全面融入到企業生產經營管理業務的各個方面,積累了大量的結構化數據、非結構化數據、地理信息數據和海量實時數據;因此采用基于大數據的企業級數據中心可以彌補傳統技術的缺點,解決了傳統技術擴展性不強、建設成本高、計算處理及分析挖掘能力有限的缺點,滿足企業大數據環境下的全類型數據存儲、處理、分析及應用的需求。