藍科+李婧
摘要:文章介紹了一種用于大數(shù)據智能分析平臺的數(shù)據分析方法及實現(xiàn)技術,介紹了這種方法的需求和意義;和該方法的總體架構,以及在數(shù)據傳輸、數(shù)據清洗和數(shù)據分析的實現(xiàn);概述了這種技術高并發(fā)、大數(shù)據量的優(yōu)化措施和跨平臺的實現(xiàn)。
關鍵詞:大數(shù)據;數(shù)據分析;數(shù)據挖掘
中圖分類號:TP311 文獻標識碼:A 文章編號:1007-9416(2017)03-0104-02
1 綜述
1.1 簡介
在數(shù)字化時代,需要新一代系統(tǒng)架構提升業(yè)務創(chuàng)新能力。在新一代系統(tǒng)架構中,大數(shù)據是核心要素。業(yè)務應用能否自主發(fā)現(xiàn)與自助獲得高質量的大數(shù)據,就成為業(yè)務創(chuàng)新成敗的關鍵。這就要在搭建大數(shù)據平臺時,就著手大數(shù)據治理相關建設。
1.2 需求和意義
從某種意義上說大數(shù)據治理架構需要以元數(shù)據為核心、提高大數(shù)據質量、透明化大數(shù)據資產、自助化數(shù)據開發(fā)、自動化數(shù)據發(fā)布、智能化數(shù)據安全,提升大數(shù)據平臺服務能力,讓大數(shù)據平臺變得易使用、易獲得、高質量。
但是,目前很多技術解決方案存在諸多安全和效率隱患:業(yè)務系統(tǒng)多,監(jiān)管力度大;數(shù)據量龐大且呈碎片化分布,急需提升大數(shù)據質量;數(shù)據格式不規(guī)范、難以在短時間內找到所需數(shù)據;數(shù)據在各階段的應用角度不同,需要降低系統(tǒng)間的集成復雜度。
2 功能設計
2.1 總體架構
本文講述的數(shù)據分析方法及實現(xiàn)技術是建立在Hadoop/Spark技術生態(tài)圈的基礎之上,以實現(xiàn)用戶集成處理、、清理、分析的一個統(tǒng)一的數(shù)據處理平臺;按數(shù)據類別分為線數(shù)據、歸檔數(shù)據;按數(shù)據格式分為非結構化數(shù)據、結構化數(shù)據;按數(shù)據模型分類為范式化模型數(shù)據、維度模型數(shù)據;按數(shù)據采集頻度分為非實時數(shù)據、準實時數(shù)據處理架構;并提供數(shù)據中心平臺與安全管理方案,為企業(yè)級用戶建立一個通用數(shù)據處理和分析中心。如圖1所示。
2.2 在線數(shù)據
在線數(shù)據在線通過接口去獲得的數(shù)據,一般要求為秒級或速度更快。首先應當將數(shù)據進行區(qū)分:在線數(shù)據、或歸檔數(shù)據。本平臺中采用:Storm或Spark Streaming框架進行實現(xiàn)。Spark Streaming將數(shù)據切分成片段,變成小批量時間間隔處理,Spark抽象一個持續(xù)的數(shù)據流稱為DStream(離散流),一個DStream是RDD彈性分布式數(shù)據集的micro-batch微批次,RDD是分布式集合能夠并行地被任何函數(shù)操作,也可以通過一個滑動窗口的數(shù)據進行變換。
2.3 歸檔數(shù)據
歸檔數(shù)據是在線存儲周期超過數(shù)據生命周期規(guī)劃的數(shù)據,處理的要求一般在分鐘級或速度更慢。通常歸檔數(shù)據的計算量、數(shù)據量、數(shù)據復雜度均超過試試數(shù)據處理。本平臺中采用:Hadoop、Spark技術生態(tài)體系內的框架進行計算,這里不詳細闡述。
2.4 非結構化數(shù)據
通常非結構化的數(shù)據不一定具備字段,即使具備字段其長度也不固定,并且字段的又可是由可不可重復和重復的子字段組成,不僅可以包含結構化數(shù)據,更適合處理非結構化數(shù)據。常見的非結構化數(shù)據包括XML、文本、圖象、聲音、影音、各類應用軟件產生的文件。
針對包含文字、數(shù)據的為結構化數(shù)據應當先利用數(shù)據清洗、數(shù)據治理工具進行提取,這項工作目前仍依賴技術員進行操作,由于格式的復雜性所以難以使用自動化方式進行較為高效的批處理。在治理數(shù)據的過程中,需要根據情況對數(shù)據本身額外建立描述數(shù)據結構的元數(shù)據、以及檢索數(shù)據的索引服務,以便后續(xù)更佳深度利用數(shù)據。
2.5 結構化數(shù)據
結構化數(shù)據具備特定的數(shù)據結構,通??梢赞D換后最終用二維的結構的數(shù)據,并且其字段的含義明確,是挖掘數(shù)據價值的主要對象。
本平臺中主要使用Hadoop Impala和Spark SQL來進行結構化數(shù)據的處理。Impale底層采用C++實現(xiàn),而非Hadoop的基于Java的Map-Reduce機制,將性能提高了1-2個數(shù)量級。而Spark SQL提供很好的性能并且與Shark、Hive兼容。提供了對結構化數(shù)據的簡便的narrow-waist操作,為高級的數(shù)據分析統(tǒng)一了SQL結構化查詢語言與命令式語言的混合使用。
結構化數(shù)據根據采集頻度可以繼續(xù)分類為:非實時數(shù)據、準實時數(shù)據。
2.6 準實時數(shù)據
通常準實時數(shù)據是指數(shù)據存儲在平臺本身,但更新頻率接近于接口調用數(shù)據源的數(shù)據。適合用于支持數(shù)據和信息的查詢,但數(shù)據的再處理度不高,具有計算并發(fā)度高、數(shù)據規(guī)模大、結果可靠性較高的特點。通常使用分布式數(shù)據處理提高數(shù)據規(guī)模、使用內存數(shù)據進行計算過程緩沖和優(yōu)化。本平臺主要采用Spark SQL結合高速緩存Redis的技術來實現(xiàn)。Spark SQL作為大數(shù)據的基本查詢框架,Redis作為高速緩存去緩存數(shù)據熱區(qū),減小高并發(fā)下的系統(tǒng)負載。
2.7 非實時數(shù)據
非實時數(shù)據主要應用于支持分析型應用,時效性較低。通常用于數(shù)據的深度利用和挖掘,例如:因素分析、信息分類、語義網絡、圖計算、數(shù)值擬合等。
非實時數(shù)據根據數(shù)據模型可繼續(xù)分類為:范式化模型數(shù)據、維度模型數(shù)據。
2.8 范式化模型
范式化模型主要是針對關系型數(shù)據庫設計范式,通常數(shù)據是采用第三范式3NF或更高范式。面向近源數(shù)據查詢、數(shù)據主題的整合。范式化模型數(shù)據的數(shù)據存儲區(qū),建議使用并行MPP數(shù)據庫集群,既具備關系型數(shù)據庫的優(yōu)點,又兼顧了大數(shù)據下的處理。
2.9 基于維度模型
維度模型數(shù)據主要應用于業(yè)務系統(tǒng)的數(shù)據挖掘和分析。過去多維度數(shù)據處理主要依賴OLAP、BI等中間件技術,而在大數(shù)據和開源框架的時代下,本技術平臺采用Hadoop Impala來進行實現(xiàn)。Impala并沒有使用MapReduce這種不太適合做SQL查詢的范式,而是參考了MPP并行數(shù)據庫的思想另起爐灶,省掉不必要的shuffle、sort等開銷,使運算得到優(yōu)化。
3 應用效果
本系統(tǒng)在不同的業(yè)務領域上都可以應用,以2016年在某銀行的應用案例為例:該銀行已完成數(shù)據倉庫建設,但眾多數(shù)據質量問題嚴重影響了數(shù)據應用的效果,以不同的數(shù)據存儲方式,以更高的要求去進行數(shù)據的統(tǒng)一管理。通過組織、制度、流程三個方面的實施,以元數(shù)據、數(shù)據標準、數(shù)據質量平臺為支撐,實現(xiàn)了數(shù)據管控在50多個分支,60個局,1000余處的全面推廣,實現(xiàn)了全行的覆蓋;管理了120個系統(tǒng)和數(shù)據倉庫,顯著提升了新系統(tǒng)的快速接入能力;通過14個數(shù)據規(guī)范和流程明確了數(shù)據管控的分工;數(shù)據考核機制的實施,使其在數(shù)據質量評比中名列前茅。
4 結語
本文介紹了大數(shù)據下數(shù)據分析方法及實現(xiàn)技術的大體設計和思路,從需求分析、總體架構和數(shù)據處理以及數(shù)據分析這幾個方面來介紹。文章在最后介紹出了這種平臺的應用效果。筆者相信這些思路和技術能夠在業(yè)務中能得到很好的應用。
參考文獻
[1]孫明,李素蕊.高性能計算機的海量數(shù)據處理平臺實現(xiàn)與評測[J].電子技術與軟件工程,2015(04).
[2]李學龍,龔海剛.大數(shù)據系統(tǒng)綜述[J].中國科學:信息科學,2015(01).