天天看點

【阿裡雲 MVP 月度分享】宋亞奇——應用MaxCompute實作電力裝置監測資料的批量特征分析 1 背景知識 2 分析過程

電力裝置線上監測指在不停電的情況下,對電力裝置狀況進行連續或周期性地自動監視檢測,使用的技術包括:傳感器技術、廣域通信技術和資訊處理技術。電力裝置線上監測是實作電力裝置狀态運作檢修管理、提升生産運作管理精益化水準的重要手段,對提升電網智能化水準、實作電力裝置狀态運作管理具有積極而深遠的意義。

随着智能電網建設的推進,電力裝置線上監測得到了較大發展并成為趨勢,監測資料變得日益龐大,逐漸構成電力裝置監測大資料,這給電力裝置線上監測系統在資料存儲和處理方面帶來非常大的技術挑戰。

電力裝置監測大資料具有體量大、類型多、價值密度低和處理速度快的特點。電網公司監測系統目前過于依賴集中式SAN存儲,并基于SOA進行資料內建,主要采用“企業級關系型資料庫”,受容量、擴充性以及通路速度的制約,目前隻存儲二次加工的“熟資料”,而所擅長的關聯查詢、事務處理在資料分析時又無用武之地,迫切需要新的大資料存儲和處理技術來應對。

變壓器的局部放電資料是一種典型的電力裝置監測資料。局部放電相位分析(phase resolved partial discharge, PRPD)包含了從特征提取到模式識别的過程。本文将全面介紹利用MaxCompute實作局部放電監測資料特征提取的過程。

PD信号分析主要包括三個子過程:(1)基本參數n-q-φ的提取。掃描PD信号,統計信号中的放電峰值和相應的放電相位。(2)譜圖構造和統計特征計算。劃分相窗,統計平均放電量和放電次數的分布,計算平均放電量相位分布譜圖qave-φ和放電次數相位分布譜圖n-φ。基于qave-φ和n-φ,以φi為随機變量,計算譜圖的偏斜度Sk、陡峭度Ku等統計特征,形成放電特征向量。(3)放電類型識别。本文将介紹,使用MapReduce實作第一個子過程的方法。

MaxCompute(原ODPS) 是阿裡雲提供的海量資料處理平台。主要服務于批量結構化資料的存儲和計算,資料規模達EB級别。MaxCompute目前已在大型網際網路企業的資料倉庫和BI分析、網站的日志分析、電子商務網站的交易分析等領域得到大規模應用。

另外,本文還将使用odpscmd作為用戶端完成對MaxCompute的各種操作。odpscmd是一個Java程式,可以以指令方式通路MaxCompute。應用該用戶端,可以完成包括資料查詢、資料上傳、下載下傳等各種任務。需要JRE環境才能運作,請下載下傳并安裝JRE 1.6+版本。

本文将使用MapReduce程式設計來完成特征分析的計算任務。MapReduce最早是由Google提出的分布式資料處理模型,随後受到了業内的廣泛關注,并被大量應用到各種商業場景中。比如搜尋、Web通路日志分析、文本統計分析、海量資料挖掘、機器學習、自然語言處理、廣告推薦等。

打開阿裡雲官網:https://www.aliyun.com/

【阿裡雲 MVP 月度分享】宋亞奇——應用MaxCompute實作電力裝置監測資料的批量特征分析 1 背景知識 2 分析過程

使用已有阿裡雲賬号登入。

【阿裡雲 MVP 月度分享】宋亞奇——應用MaxCompute實作電力裝置監測資料的批量特征分析 1 背景知識 2 分析過程

進入阿裡雲管理控制台,并從左側導航欄選擇“大資料(數加)à大資料計算服務”,進入MaxCompute管理控制台,建立一個MaxCompute項目。

在本地準備好JRE環境,請下載下傳并安裝JRE

1.6+版本。

解壓縮,并配置<ODPS_CLIENT>/conf/odps_config.ini

配置完成後,運作<ODPS_CLIENT>/bin/odpscmd,進入互動模式。會出現項目名稱作為提示符。

【阿裡雲 MVP 月度分享】宋亞奇——應用MaxCompute實作電力裝置監測資料的批量特征分析 1 背景知識 2 分析過程

1)   建立ODS_PD表,用于存放原始的變壓器局部放電監測資料。

在odpscmd中,執行下面的SQL語句,建表,并添加分區。

2)  建立目标特征表DW_NQF

在odpscmd中運作tunnel指令,将本地資料檔案monitor_data.csv上傳至ODS_PD表。下面的指令中的路徑,請在執行時根據實際路徑進行修改。monitor_data.csv請從附件中下載下傳。

2.2 MapReduce程式開發、本地調試和運作

本文使用Eclipse作為開發環境,請提前下載下傳并安裝。

官網導航中找到并下載下傳

ODPS for eclipse 插件,并将插件解壓并複制到Eclipse安裝目錄下的plugins子目錄下。啟動Eclipse,檢查Wizard選項裡面是否有ODPS的目錄。

【阿裡雲 MVP 月度分享】宋亞奇——應用MaxCompute實作電力裝置監測資料的批量特征分析 1 背景知識 2 分析過程
【阿裡雲 MVP 月度分享】宋亞奇——應用MaxCompute實作電力裝置監測資料的批量特征分析 1 背景知識 2 分析過程
【阿裡雲 MVP 月度分享】宋亞奇——應用MaxCompute實作電力裝置監測資料的批量特征分析 1 背景知識 2 分析過程

ODPS

for eclipse 插件下載下傳位址:

https://docs-aliyun.cn-hangzhou.oss.aliyun-inc.com/cn/odps/0.0.90/assets/download/odps-eclipse-plugin-bundle-0.16.0.zip?spm=5176.doc27981.2.3.cCapmQ&file=odps-eclipse-plugin-bundle-0.16.0.zip

當可以建立ODPS類型的項目時,表示本地開發環境已經準備好了。

在Eclipse中建立ODPS項目,命名為NQF。為了讓Eclipse能正确通路MaxCompute,需要在建立項目的時候正确配置odpscmd的本地路徑。

依次添加Mapper類、Reducer類、MapReduce

Driver類和R類。

【阿裡雲 MVP 月度分享】宋亞奇——應用MaxCompute實作電力裝置監測資料的批量特征分析 1 背景知識 2 分析過程

打開FSDriver.java,右擊“Run as-àRun Configurations”

【阿裡雲 MVP 月度分享】宋亞奇——應用MaxCompute實作電力裝置監測資料的批量特征分析 1 背景知識 2 分析過程

在ODPS Config頁籤,選擇正确的ODPS項目。

【阿裡雲 MVP 月度分享】宋亞奇——應用MaxCompute實作電力裝置監測資料的批量特征分析 1 背景知識 2 分析過程

在Arguments頁籤中,輸入運作參數:ods_pd

dw_nqf,并點選“Run”,執行本地測試運作。

【阿裡雲 MVP 月度分享】宋亞奇——應用MaxCompute實作電力裝置監測資料的批量特征分析 1 背景知識 2 分析過程

在第一次運作時,Eclipse會從MaxCompute中下載下傳少量的測試資料用于測試。運作完成後,可以在Warehouse中看到測試用的輸入資料和産生的結果資料。

【阿裡雲 MVP 月度分享】宋亞奇——應用MaxCompute實作電力裝置監測資料的批量特征分析 1 背景知識 2 分析過程

<b> </b>

在本地測試結果正确之後,就可以導出jar包了。在Eclipse下執行“FileàExport”,選擇導出“JAR File”,導出至本地。

在odpscmd下,執行添加資源的指令,将jar上傳至MaxCompute。

add jar d:/jar/NQF.jar;

【阿裡雲 MVP 月度分享】宋亞奇——應用MaxCompute實作電力裝置監測資料的批量特征分析 1 背景知識 2 分析過程

在odpscmd下,執行jar指令,運作程式。(請自行調整檔案路徑)

jar -resources NQF.jar -classpath

d:\jar\NQF.jar FSDriver ods_pd dw_nqf; 

實驗的完整流程和代碼詳見阿裡雲Clouder認證課程:https://edu.aliyun.com/course/623?spm=5176.10731491.0.0.YnkJLj