劉偉娜,董 娜
(國網河北省電力公司電力科學研究院,石家莊 050021)
Hadoop 框架在電力大數據平臺中的應用
劉偉娜,董 娜
(國網河北省電力公司電力科學研究院,石家莊 050021)
針對大數據框架體系數據存儲和計算問題,提出采用Hadoop框架對海量大規模數據進行處理,分析該框架的組成、優勢和安全機制,并說明Hadoop框架在電力大數據平臺中應用情況及應用效果。
大數據;Hadoop;安全機制;
在電力行業,特別是全面加快全球能源互聯網發展的重要時期,在輸變電智能化、智能配用電、源網荷協調優化、智能調度控制、信息通信等領域中數據的精細化程度要求越來越高,數據呈爆炸式增長,產生的數據量達到PB級別,且數據類型結構多樣。同樣金融業、電信運營業、互聯網與電子商務等行業隨著應用需求的日益旺盛,也面臨著數據規模大,增長速度快,數據形式復雜多樣的困境。自2000年以來,全球的數據總量呈現指數級增長,預計到2020年,全球電子設備存儲的數據將暴增至35.2 ZB。這些海量的數據同時也帶來了數據無法存儲和無法計算的問題。由此產生了“大數據”概念。
近年來“大數據”被無數次提及,但還未形成統一定義。比較有代表性的說法是指所涉及的資料量規模巨大到無法通過目前主流軟件工具,在合理時間內達到擷取、管理、處理、并整理成為幫助企業經營決策更積極目的的信息[1]。大數據應用從商業價值、客戶洞察、運營效率和風險防控等方面提升公司的核心競爭力。大數據體系框架總體上包括數據整合、數據存儲、數據計算、數據分析、平臺服務五個層次。在大數據架構體系中數據如何存儲和計算成為關注的焦點,而Hadoop分布式存儲和計算框架以低成本、可靠性高、容錯強、擴展性高、處理速度快等優勢備受青睞。
Hadoop是基于Java為大規模數據存儲和計算提供可靠、高效、可伸縮的開源軟件框架,可通過集群廉價普通機器完成大量數據的分布式高速計算和存儲,允許用戶在不了解底層細節的情況下,使用分布式程序。其特點在于能夠存儲并管理PB級數據,可以很好地處理非結構化數據,擅長大吞吐量的數據處理,應用模式為“一次寫多次讀”存取模式[2]。Hadoop核心由HDFS(Hadoop Distributed File System)和Map Reduce 2個系統組成。Map Reduce可實現高性能分布式并行數據處理, HDFS提供可靠數據存儲服務,低廉MPP、高容錯,用戶可在不了解分布式底層細節的情況下開發分布式程序,充分利用MPP的能力[3]。
1.1 大數據存儲框架HDFS分布式文件系統
HDFS分布式文件系統運行在大規模集群之上,采用元數據集中管理與數據塊分散存儲相結合模式,默認數據塊基本存儲單位是64 MB。HDFS的存儲對象針對大規模的應用數據,數據吞吐量高且具有容錯性[4]。同傳統文件系統類似,HDFS同樣可以創建文件、刪除文件、移動文件和文件的重命名等,其內部結構由一個NameNode和若干DataNode組成。NameNode為命名節點,收集管理存儲節點文件元數據,同時保存文件、塊、Data N-ode之間的關系,以“edit log”和“namespace image”文件形式存儲在本地磁盤。DataNode為數據節點,為HDFS提供存儲塊。當文件大小超過數據塊默認大小64 MB時,文件被切分存儲在不同Data Node中,存儲在硬盤上。Data Node響應除來自HDFS客戶機的請求外,還響應來自Name Node的命令,在NameNode統一調度下,DataNode執行完成文件的讀寫、復制、刪除等操作。
1.2 大數據計算框架Map Reduce
Map Reduce是Google公司于2004年提出的一種編程模式,擁有大規模數據(大于1 TB)的并行運算,其特點是簡單易學,使用廣泛,能夠降低并行編程的困難[5],基于Map Reduce的應用程序可以運行在由普通廉價機器設備組成的大型集群上,以可靠容錯并行方式處理TB級及以上數據集。Map Reduce框架實現的是跨節點通信,擅長橫向擴充、負載均衡、失效恢復、一致性等功能,非常適合有很多批處理的大規模分布式應用,如日志處理、web索引建立等[2]。
MapReduce框架中數據的處理包括Map和Reduce兩個階段。Map階段進行數據的分解操作,將原始輸入分解成若干個鍵值對<key,value>,Reduce階段將分解的數據處理的結果進行合成。Map Reduce包括管理任務Job Tracker和執行任務Task Tracker。Job Tracker是管理者,負責協調和調度所有作業,同時也負責協調調度一個作業所有任務,并監督任務執行情況。Task Tracker是任務執行者,僅負責Job Tracker分配的任務,并報送進度情況。
a.成本低。Hadoop可運行在廉價機器組成的機器上,且為開源軟件框架,成本較低。
b.可靠性高、容錯性強。數據存儲在HDFS中的數據塊中,且每個數據塊在集群節點中有多個副本,當出現故障數據丟失時,可重新進行分配,達到可靠性高、容錯性強的效果。
c.擴展性高。Haoop運行在普通硬件設備集群上,這些硬件被軟件松散耦合在一起,擴充就是簡單增加機架,并配置系統,使新增的硬件重新均衡系統。Hadoop框架在集群服務的情況下,可擴展若干個節點。
d.處理速度快。Hadoop自動化并行處理,數據分布在并行節點上,并且Hadoop能夠在節點間動態移動數據,保證節點動態平衡,加快了處理速度。
進入大數據時代,安全問題變得尤為重要,但Hadoop在最初設計時并沒有過多的關注其安全機制:
NameNode缺乏安全認證機制,Client的用戶名和用戶組名均可通過自身指定;Job Tracker缺乏安全授權機制,Client可以修改Job Tracker的持久化狀態,修改或者刪除任意其他Client的Job;DataNode缺乏安全授權機制,Client通過已知block ID,可繞過NameNode從DataNode上讀取相應的block,并且Client可以向任意DataNode上寫block。
隨著Hadoop應用越來越廣泛,其安全問題也得到相應改變。在HDFS和Map Reduce引擎安全防護方面添加ACL控制訪問機制;出現了安全認證和授權機制,如Simple和Kerberos。Kerberos是一種網絡認證協議,采用傳統密碼技術進行認證,較為常用。是將認證的密鑰放在某一節點上,其他節點在運行時必須進行認證,否則不能正常運行,避免了惡意節點與其他節點的非法通信,有效提升了Hadoop的安全性。
4.1 Hadoop框架構建
國家電網公司(簡稱“國網公司”)用戶數量、資產規模巨大,并且電網生產運行對數據的響應速度要求快,故障情況下還會出現短時多類型數據激增的現象,這些特征都符合大數據數據規模大(Volume)、數據實時性高(Velocity)、數據類型多樣(Variety)、價值密度低(Value)等特點。綜合大數據能提高公司內部業務處理效率,降低運營成本,為客戶提供更具個性化的服務,對公司風險及時預警等優勢,國網公司基于分布式架構,融合結構化、非結構化、海量歷史/準實時、電網地理信息等數據中心,整合、優化公司現有技術組件,構建大數據平臺。大數據平臺功能架構如圖1所示。

圖1 大數據平臺功能架構
在大數據平臺功能架構由數據整合、數據存儲、數據計算、數據分析和平臺服務五部分組成。平臺采用Hadoop框架,規范化的提供數據存儲和數據計算能力,HDFS組件實現數據存儲中的分布式文件存儲,存儲采集到的文本、文檔、音/視頻、圖片等非結構化數據。Map Reduce實現數據計算中的批量計算,支持大批量數據的離線分析,裝載HDFS中存儲的非結構化信息進行分布式計算,將中間結果緩存在磁盤,計算規模相對較大,計算周期長,算法復雜。
4.2 Hadoop框架安裝
4.2.1 安裝前準備工作
安裝Hadoop框架前,首先進行準備工作。準備工作包括:大數據平臺安裝;配置SSH,在任一臺服務器上生成證書,復制到其他節點上;配置知識庫,在任一臺服務設置IP地址,并啟動Http服務;配置yum資源,將gp.repo文件中IP地址修改為知識庫服務器地址,上傳至任一服務器,并復制到所有服務器中;安裝ansible,在部署大數據平臺應用服務器中安裝ansible;在數據庫服務器中安裝PostgreSQL。
4.2.2 安裝Hadoop集群
a.新建集群。登錄大數據平臺,點擊“集群管理”-“安裝部署”,按步驟要求進行集群管理的安裝部署。安裝過程中需注意組件服務器地址為yum資源中配置的IP地址,如圖2所示,該資料庫服務器中具有hadoop安裝包,安裝過程中會從該服務器下載安裝包。批量添加主機節點時,除“存儲節點”和“計算節點”可對應多臺服務器外,其他節點均只能對應一臺服務器。

圖2 hadoop集群配置
b.增加節點。大數據平臺增加節點時,只可以增加計算存儲節點。登陸大數據平臺,點擊“添加節點”。填寫IP地址、主機名稱、分配角色,如圖3所示,確認信息后進行安裝并初始化環境,并自動轉入集群安裝,等待安裝完成即可。

圖3 增加節點
4.3 平臺應用場景
基于Hadoop框架的大數據平臺,已初步建成,功能逐漸完善。基于平臺建設的業務場景已在電網生產、經營管理和優質服務三個領域開展應用實踐,以提升公司管理水平和服務水平,促進業務需求創新,探索構建新的業務模式、營銷模式和服務模式。
檢修策略方面。結合數據挖掘技術,建立設備狀態綜合評價模型,對在線監控數據實時分析,自動識別輸變電設備故障缺陷,并與設備臺帳、運行狀態、檢修記錄等數據進行關聯分析,找出故障成因。實現設備狀態風險評估和故障預判,優化檢修策略[6]。
基于溫度變化客戶用電行為分析方面。天氣變化常常會給電網運行帶來較為嚴重的不利影響,引起輸變電設備故障,進而影響用戶用電行為。構建負荷預測及大客戶用電細分模型,基于用戶、用電、設備、變電站等信息數據,結合自然因素氣象數據,對氣溫對客戶用電行為的影響進行分析,為城市和電網規劃、需求側管理、電價政策等提供支持。
新型客戶服務業務型態方面。建立話務量預測及用戶感知度模型,基于話務量、工單信息、故障信息等數據,實現實時話務展現預測及用戶感知度展現,從而提高客戶服務中心服務能力和服務質量,構建和諧的客戶關系。
基于Hadoop的電力大數據平臺應用場景會逐漸增多,在人力資源、財務管理、物資管理等方面進行應用。同時Hadoop在互聯網領域也得到了廣泛運用,Yahoo使用4 000個節點的Hadoop集群來支持廣告系統和Web搜索的研究;Facebook使用1 000個節點的集群運行Hadoop,存儲日志數據,支持其上的數據分析和機器學習;百度用Hadoop處理每周200 TB的數據,從而進行搜索日志分析和網頁數據挖掘工作等[7]。隨著大數據的不斷發展,Hadoop框架將會越來越受到關注,在發揮其現有功能的同時,需要不斷改進,以確保框架的安全性,進而提升數據的安全性,使其在大數據的應用中發揮更大的功效。
[1] 徐欣欣.大數據時代高校信息系統建設的探討[J].信息與電腦:理論版,2013(4):120-121.
[2] 趙 剛.大數據應用的總體架構和關鍵技術[M].北京:北京電子工業出版社,2014.
[3] 李戰懷,王國仁,周傲英.從數據庫視角解讀大數據的研究進展與趨勢[J].計算機工程與科學,2013,35(10):1-11.
[4] 楊 靜,殷建琳.Hadoop云存儲技術在電子檔案長期保存中的應用研究[J].檔案與建設,2015(12):22-25.
[5] 盧 寧,陳 澤,董 娜.云計算模型Map Reduce的實現與安全研究概述[J].大眾用電,2015(276):111-114.
[6] 岳 陽,張曉佳,高一丹.基于Hadoop的電力大數據技術體系研究[J].電力與能源,2015(1):16-20.
[7] 梁明煌,吳 航.Hadoop技術在移動支付行業的應用[J].中國新通信,2016(1):79-81.
本文責任編輯:趙軼美
Application of Hadoop Framework in Big Data
Liu Weina,Dong Na
(State Grid Hebei Electric Power Research Institute,Shijiazhuang 050021,China)
For data storage and computation of big data framework system,proposed using the hadoop framework to process massive data,analyzed framework compostion,advantages and security mechanism,and explained application and application effect of hadoop framework in the electric power big data platform.
Big Data;Hadoop;Security Mechanism
TM769
A
10019898(2017)02003504
20170207
劉偉娜(1986-),女,工程師,主要從事電力信息化工作。