大規模電力設備監測數據存儲和批量特征分析
0 引言
電力設備在線監測系統能夠對設備運行狀況進行連續或周期性的自動監視和檢測。隨著智能電網建設的進步,電力設備在線監測取得了很大發展,監測數據的規模也變得日益龐大,逐漸形成電力設備監測大數據[1],這給在線監測系統在數據存儲和數據處理方面帶來了新的技術挑戰,主要體現在以下幾個方面。
1)數據體量巨大。電力設備監測大數據正從TB級向PB級別躍遷,造成數據體量巨大的主要原因是監測的廣度大、監測點數量多以及數據采樣率高。另外,電力設備監測的深度也不斷提升,監測類型逐漸多樣,包括變壓器局部放電、油色譜、線路覆冰監測、絕緣子泄漏電流、電站視頻監測等,進一步導致了監測數據的體量非常巨大。
2)數據種類繁多。需要存儲和處理的數據既包括結構化的采樣數據和靜態關聯數據,又包括非結構化的采集數據,如音視頻數據等;另外還有用XML、JSON等格式承載的半結構化數據,這給存儲系統帶來很大的技術挑戰。
3)要求快速完成數據分析。在完成監測數據采集后,需要一個大數據處理平臺來完成包括數據清洗、格式轉換、數據去噪、特征計算等一系列批量計算任務,這些任務通常是自動定時觸發的,必須在規定的時間內完成分析任務,否則會影響后續的數據分析過程。
4)平臺的選擇。大數據平臺應能有效支持多種大數據計算場景,包括批量計算、在線計算和流式計算,且應能支持高效的數據交互和廣泛、多源的數據集成方案。
目前,電網公司監測系統過于依賴集中式存儲區域網絡(Storage Area Network,SAN)存儲,并基于SOA進行數據集成。存儲軟件主要采用企業級關系型數據庫,在存儲容量、擴展性以及訪問速度方面均無法滿足電力設備監測大數據存儲和數據處理的需求。另一方面,關系型數據庫所擅長的關聯查詢、主外鍵約束、事務處理等特性在進行大數據分析時又無用武之地,這就迫切需要新的大數據存儲和處理技術以及新的平臺來應對。
針對上述問題和挑戰,本文采用全新的MaxCompute大數據處理技術,在阿里云云計算平臺上進行數據存儲和數據處理,以大規模的變壓器局部放電數據為例,設計數據存儲方法和快速的并行分析方法。
1 電力系統中的批量計算
MaxCompute是阿里云提供的海量數據處理平臺,支持批量結構化、非結構化數據的存儲和計算,數據規??蛇_EB級別。MaxCompute目前已在電子商務網站的交易分析、企業數據倉庫和BI分析等領域得到廣泛應用。MaxCompute提供了數據上傳下載通道(Tunnel),以及SQL、MapReduce、Graph等多種計算服務接口。MaxCompute功能組件如
批量計算是指對歷史數據進行周期性的、用戶發起或者定時觸發的計算。批量計算每次處理的數據量通常較大,并追求高吞吐量,對交互性、實時性要求較低。批量計算模型如
目前典型的批量計算工具有Hadoop Map Reduce、Spark、阿里云MaxCompute等。批量計算在電力系統中的應用需求非常大,應用最多的計算工具是Hadoop。文獻[2]應用Hadoop設計實現了一種層次化的電壓暫降并行計算方法,提高了海量電能質量監測數據的計算效率。文獻[3]應用Hadoop設計實現了變斷面量測數據的快速無損數據壓縮。文獻[4-5]應用Hadoop設計實現了并行化的極限學習機,并實現了短期電力負荷預測。文獻[6]應用Hadoop實現了并行化的數據分析和負荷預測。文獻[7-8]應用Hadoop實現了海量電能質量監測數據的并行化查詢。文獻[9]基于并行化的貝葉斯分類器,實現了變壓器的故障診斷,使診斷速度有了很大的提升。
2 使用MaxCompute實現電力設備監測數據的高效存儲
2.1 監測數據的存儲模式設計
監測數據的原始值往往是二進制的采樣數據,以dat文件形式存在[10-11],MaxCompute存儲數據的基本單元是表(table)。為了完成數據分析,需要首先將監測數據上傳至MaxCompute。由于MaxCompute無法支持二進制數據的自動解析,上傳之前需要先將其轉換成文本文件格式,如csv文件,再使用Tunnel工具進行數據上傳。
如果使用普通文本文件存儲監測數據,則每行可以存儲一個完整采樣周期的數據[12],例如一行文本可以存儲10萬個采樣點的數據。該文本可在HDFS上被MapReduce分析任務直接處理。但MaxCompute對表的列數和表格單元的數據類型有限制,表格單元目前支持的數據類型無法在一行內存儲數萬個采樣值,這需要重新設計表結構。
本文進行了橫縱轉換設計,將常見的“橫表”改為“縱表”,用于存儲原始采樣數據。由于MaxCompute不支持索引,為了最大程度提升數據分析性能,在存儲設計方面還使用了多級分區技術。使用二級分區的監測大數據存儲模式如
電力設備監測數據的兩個最基本屬性是設備編號和數據采集時間。為了提升查詢和數據分析的性能,使用設備ID作為一級分區,采集日期作為二級分區,從而可以有效減少數據查詢的范圍,提升訪問性能。
2.2創建MaxCompute項目
項目是MaxCompute的基本組織單元,通常一類特定的數據分析任務需創建一個項目,并將相關的數據表和資源都放入到該項目中[13]。為了完成項目創建,需要首先使用已有的阿里云賬號登錄阿里云管理控制臺,進入MaxCompute管理控制臺,創建一個新的MaxCompute項目。阿里云管理控制臺如
如果不是長期運行計算任務,可以選擇“I/O后付費”,填入項目名稱和項目描述,創建項目。創建項目選項如
2.3 創建分區表并添加分區
2.3.1 配置客戶端
為了創建所設計的分區表并實現數據上傳,需要首先安裝并配置ODPS cmd客戶端工具。這需要在本地準備好JRE 1.6+版本環境,并從阿里云官網下載ODPS cmd工具,并配置<ODPS_CLIENT>/conf/odps_config.ini文件,具體如下:
project_name=[project_name]
access_id=***
access_key=***
end_point=http://service.odps.aliyun.com/api
tunnel_endpoint=http://dt.odps.aliyun.com
log_view_host=http://logview.odps.aliyun.comhttps_check=true
access_id和access_key可從阿里云管理控制臺獲取,project_name配置為創建好的MaxCompute項目即可。配置完成后,運行<ODPS_CLIENT>/bin/odpscmd,進入交互模式,會出現項目名稱作為提示符。ODPS cmd控制臺如
ODPS cmd控制臺運行成功后即可執行創建分區表操作,本文使用SQL DDL語句進行創建數據分區表、添加分區的操作,以變壓器的局部放電數據為例來介紹數據存儲的方法和宏觀統計特征的計算方法。
2.3.2 創建數據表并添加分區
在ODPS cmd中,執行SQL語句建表,并添加分區,用于存儲監測數據和中間結果數據,具體如下:
create table if not exists ODS_MData(
Time string, ---’采集時間’
Phase bigint, ---’相位’
Value bigint, ---’采樣值’
partitioned by (DeviceID string, Date string);
alter table ODS_MData add if not exists partition (DeviceID=‘001’, Date=‘20170625’);
使用相同的SQL語法,依次創建基本參數表DW_NQF和放電譜圖表DW_PT,數據表字段描述見
2.4 使用Tunnel進行數據上傳
在ODPS cmd中運行tunnel命令,將監測數據文件上傳至MaxCompute表,具體命令如下:
tunnel upload d:/Clouder/jfdata/jf.csv ODS_MData/deviceid =’001’, Date=‘20170625’ ;
命令中的路徑在執行時需根據實際路徑進行修改。使用Tunnel進行數據上傳如
在上傳完成之后,可以使用read或者select命令驗證數據是否已經存在。
3 使用MapReduce實現監測數據特征計算
3.1 監測數據特征計算的總體流程
為了實現對監測數據的統計特征計算,需要使用2個MapReduce任務來完成計算,并將計算任務串聯起來。為了完成任務串聯和任務調度的周期執行,本文使用阿里云數加平臺的大數據開發套件來設計實現計算任務的工作流,并配置任務調度策略。特征計算的工作流和調度配置界面如
在工作流中,Data_synchronization節點用于執行數據同步任務,DW_NQF節點用于完成基本參數的計算,DW_PT節點用于計算譜圖特征。在調度策略配置上,設置為每天0點執行一次任務調度。DW_NQF節點和DW_PT節點都是MapReduce程序,需要首先在本地進行程序開發和測試,成功后才能上傳至云平臺執行。
3.2 本地開發環境準備
本文使用Eclipse作為開發環境,并需要使用ODPS for Eclipse開發插件。啟動Eclipse,檢查Wizard選項中是否有ODPS的目錄。當可以創建ODPS類型的項目時,表明本地開發環境已準備好。
3.3 MapReduce程序開發
3.3.1 基本參數的計算
本文設計了MapReduce程序實現基
責任編輯:售電衡衡
-
權威發布 | 新能源汽車產業頂層設計落地:鼓勵“光儲充放”,有序推進氫燃料供給體系建設
2020-11-03新能源,汽車,產業,設計 -
中國自主研制的“人造太陽”重力支撐設備正式啟運
2020-09-14核聚變,ITER,核電 -
探索 | 既耗能又可供能的數據中心 打造融合型綜合能源系統
2020-06-16綜合能源服務,新能源消納,能源互聯網
-
新基建助推 數據中心建設將迎爆發期
2020-06-16數據中心,能源互聯網,電力新基建 -
泛在電力物聯網建設下看電網企業數據變現之路
2019-11-12泛在電力物聯網 -
泛在電力物聯網建設典型實踐案例
2019-10-15泛在電力物聯網案例
-
權威發布 | 新能源汽車產業頂層設計落地:鼓勵“光儲充放”,有序推進氫燃料供給體系建設
2020-11-03新能源,汽車,產業,設計 -
中國自主研制的“人造太陽”重力支撐設備正式啟運
2020-09-14核聚變,ITER,核電 -
能源革命和電改政策紅利將長期助力儲能行業發展
-
探索 | 既耗能又可供能的數據中心 打造融合型綜合能源系統
2020-06-16綜合能源服務,新能源消納,能源互聯網 -
5G新基建助力智能電網發展
2020-06-125G,智能電網,配電網 -
從智能電網到智能城市