大规模电力设备监测数据存储和批量特征分析

2018-03-20 15:42:15 电力信息与通信技术  点击量: 评论 (0)
针对大规模电力设备监测数据存储和批量计算问题,基于云计算平台,应用大数据计算服务(MaxCompute)实现了电力设备监测数据的高效分区存储和并行化的批量特征分析,并将分析过程组织为工作流,实现了数据加载、分析任务的自动化周期调度。所设计的存储和并行分析算法可以有效应对TB PB

本参数的计算,从ODS_MData中读取数据,计算基本特征参数[14],其Map过程为:

1:Record{Phase,Value}转换为整型;

2:if Math.abs(Value)>max1

then 构造输出记录Record{Time, Phase,Value};

3:将记录输出至Combiner;

Combine过程为:

Combine repeat

if Record[i]是极值点

then

构造输出记录Record{Time,Phase,Value};

将Record{Phase,Value}输出至Reducer;

until 所有的点都被处理

Reduce过程如下:

1:对极值记录集合{Time,Phase,Value}按照相位Phase递增顺序排序;

2:repeat

if 相邻两点的相位差<max2

then 保留较大的Value;

else 将相位较小的点保存至结果集;

until 所有的点都被处理;

3:输出结果集至DW_NQF表;

该过程完成的局部放电参数统计,是实现特征分析的第一步。

3.3.2 谱图的计算

在基本特征参数计算的基础上,基于DW_NQF表,使用MapReduce实现谱图计算[15],其Map过程为:

1:根据相窗宽度wlength,计算Record所属的相窗id wid= Phase/wlength;

2:构造输出记录,并输出至Reducer;

Reduce过程为:

1:定义变量用于记录总放电量、平均放电量、放电次数、放电量最大值;

2:repeat

在totalq上累加放电量;

在nums上累加放电次数;

在max上记录放电量最大值;

until 所有的点都被处理;

3:avgq=totalq/记录数;

4:构造输出记录,并输出至DW_PT表;

3.4 本地测试

打开TJDriver.java,右击“Run as->Run Confi- gurations”,在ODPS Config选项卡重选择正确的ODPS项目。在Arguments选项卡中输入运行参数,并点击"Run”执行本地测试。在第一次运行时,Eclipse会从MaxCompute中下载少量的测试数据用于测试。运行完成后可以在Warehouse中看到测试用的输入数据和产生的结果数据。本地测试运行结果如图9所示。

图9 本地测试运行结果Fig.9 Local test results

3.5 打包并上传资源

在确认本地测试结果正确后即可导出jar包,在Eclipse下执行“File->Export”,选择导出“JAR File”即可导出至本地。导出jar包如图10所示。

图10 导出jar包Fig.10 Exporting jar package

在ODPS cmd下执行添加资源的命令,即可将jar包上传至MaxCompute,命令如下:

add jar d:/Clouder/jar/TJ.jar;

3.6 在MaxCompute上执行程序

在ODPS cmd下执行jar命令,运行程序。执行read dw_tj命令可查看运行结果。运行结果如图11所示。

图11 运行结果Fig.11 The operation result

在大数据开发套件中,通过调度配置,即可实现周期性的程序执行。

 4 结语

电力设备监测已经成为一种必然趋势,监测数据无论在体量还是处理速度方面,都需要先进的大数据平台和工具来支撑。本文基于云计算平台,应用MaxCompute设计实现了电力设备监测数据的高效分区存储方法和并行化的批量特征分析方法,应用大数据开发套件将分析过程中的多个MapReduce任务组织为工作流,实现了数据加载和分析任务的自动化周期调度,具有一定的借鉴意义。

大云网官方微信售电那点事儿

责任编辑:售电衡衡

免责声明:本文仅代表作者个人观点,与本站无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
我要收藏
个赞