标签:
台区负载情况 |
1、对变压器类型为干性的配变,“负载率超过80%(100%)持续时间”大于等于1小时的,计1次;一个自然月内累计有10天(含)以上的,为重载(过载)。 |
|
台区负载情况的计算流程如下图所示:
首先针对每行数据(每15分钟的值)的负载率判断其过载情况,采用javascript代码脚本控件进行判断,我们定义过载、重载、轻载3个标识字段,针对负载率与输入的判断阀值(在表输入步骤的时候输入的)间进行比较,符合条件的置为1,脚本如下图所示:
接下来针对3组标识进行持续时间计算
首先对数据流进行按照台区编号以及数据时标进行升序排序
然后采用“根据字段值来改变序列”控件,针对每个台区的过载、重载、轻载标识进行序号标记,生成一个新的序号字段,当过/重/轻载标识为1的时候,序号计为:当前序号的值+1,从1开始,当遇到过/重/轻载标识为0时,序号值重新计算。
计算的结果实例如下
接下来要将过/重/轻载标识为0,的这些序号清零通过2个字段相乘即可
计算结果如下示例:
然后按台区分组取最大值,即可得到这个台区过/重/轻载的最大连续次数(每个BS15分钟)
最后根据每15分钟台区过/重/轻载的最大连续续次数计算出一整天的台区负载情况结论
至此,瞬时数据全部计算完成,计算的结果将汇总到台区整日数据计算。
整日数据计算,是不需要每15分钟数据支撑的部分,根据指标的不同情况采取不同的计算方式
针对用户信息系统的几个指标,计算逻辑比较简单,单条SQL语句即可得出结果的,不需要把全部的数据都读入到kettle中,只需要把数据统计完,并按照台区编号排列后,左连接到结果即可,如下图所示。
其他计算基本上属于普通的字段间加减乘除,采用前面介绍的那些控件都能一一完成,如下图所示:
最后简单介绍一下采用公式控件代替javascript代码脚本进行判断的示例,简单判断而不想写脚本的同学可以采用:
最后为即将插入数据库的数据建立主键以及时间戳、排序字段等
到这里每日指标的计算流程就基本上介绍完成。
应用Pentaho Data Integration(Kettle) 6.1 进行数据抽取以及指标计算(四、每日指标的计算下)
标签:
原文地址:http://www.cnblogs.com/wheel/p/5903682.html