买专利,只认龙图腾
首页 专利交易 科技果 科技人才 科技服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

【发明授权】一种基于负荷曲线和历史电量的用户电量数据修复方法_国网浙江省电力有限公司电力科学研究院;国网浙江省电力有限公司;浙江华云信息科技有限公司;国家电网有限公司_201910164937.5 

申请/专利权人:国网浙江省电力有限公司电力科学研究院;国网浙江省电力有限公司;浙江华云信息科技有限公司;国家电网有限公司

申请日:2019-03-05

公开(公告)日:2024-04-23

公开(公告)号:CN110047014B

主分类号:G06Q50/06

分类号:G06Q50/06;G06F16/27

优先权:["20190104 CN 2019100095377"]

专利状态码:有效-授权

法律状态:2024.04.23#授权;2020.09.15#实质审查的生效;2019.07.23#公开

摘要:本发明公开了一种基于负荷曲线和历史电量的用户电量数据修复方法,涉及电力数据采集领域。目前对于异常数据常往往采用直接舍弃的方式,影响后续的判断。本发明包括步骤:判断是否存在电量异常或抄表数据缺失;当电量异常或抄表数据缺失时,修正的电量数据;如果无法修正,则取该表计前两天内,最近一天T日的正常电量乘以该表计所在区县其余电量正常的表计的总电量的变化量作为修正的电量数据;如果通过表计前两天的电量也无法进行修正,则取该表计在营销系统中用于结算的月电量,计算日平均电量作为修正的电量数据。本技术方案避免了电量异常如电量飞走、电量倒走等情况下,错误的电量数据对数据分析造成的不良影响,提高了数据分析的准确性。

主权项:1.一种基于负荷曲线和历史电量的用户电量数据修复方法,其特征在于包括以下步骤:1)通过数据采集系统采集用户电量数据;数据采集系统包括网关集群、通信前置集群、业务处理器集群、数据总线、入库服务模块、海量数据分析模块、数据存储模块;2)判断是否存在电量异常或抄表数据缺失;3)当电量异常或抄表数据缺失时,取表计的一天24个整点的负荷数据;并对负荷数据进行判断,当整点的负荷数据值小于受电容量1.2倍时,认为该整点的负荷数据值正常,如果24个整点负荷数据中的负荷数据值正常数超过16个整点时,则将这些正常的负荷数据值累加除以累加的整点个数再乘以24作为修正的电量数据,如果24个整点负荷数据中的负荷数据正常数不足16个整点时,则直接累加正常值的负荷数据作为修正的电量数据;4)如果通过负荷数据无法进行修正,则取该表计前两天内,最近一天T日的正常电量乘以该表计所在区县其余电量正常的表计的总电量的变化量作为修正的电量数据,变化量通过当日该表计所在区县其余电量正常的表计的总电量除以T日该表计所在区县其余电量正常的表计的总电量得到;5)如果通过表计前两天的电量也无法进行修正,则取该表计在营销系统中用于结算的月电量,计算日平均电量作为修正的电量数据;通信前置机把现场所有终端设备地址域按一定规则划分为多个区间,设备地址按下行Topic的数量取模得到对应地址域区间;下行Topic与地址域区间之间存在映射关系,业务处理器节点对地址域区间的管理,也即对下行Topic的管理;初始化地址域分配策略按业务业务处理器节点数量取模,节点新增、节点故障及故障节点恢复时分别按照“新增节点分发策略”、“节点故障时分发策略”和“故障节点恢复时分发策略”实现动态调整,将分配信息及时更新至Zookeeper分布式服务系统,以降低程序内存加载,提高程序集群扩展能力;A节点新增时分发策略:A01对每个业务处理器节点所分配的Topic按照Topic编码进行排序,并计算该节点当前处理的Topic总数;A02对业务处理器节点根据Topic总数进行排序;A03计算每个业务处理器节点能处理Topic的平均值:Topic总数除以业务处理器节点总数,小数位舍去;A04将节点中Topic数量大于平均值的所有业务处理器节点的多余Topic取出,取出规则:优先选择步骤A02排序较大的业务处理器节点中Topic编码较大的Topic;A05将取出的Topic优先分配给新增的业务处理器节点,使新增节点的Topic数于平均值;若仍有未分配的Topic则对所有节点进行取模分配;A06其他节点中删除被分配走的Topic信息;B节点故障时分发策略:B01对业务处理器节点按照Topic数量进行排序;B02Topic总数除以当前运行的业务处理器节点总数,得到当前运行的每个业务处理器节点处理Topic的平均值;B03根据平均值计算当前运行的每个业务处理器节点可新增的Topic数量:计算得的平均值-现有的Topic数;B04将因节点故障引起的待分发Topic按照可新增的Topic数量的计算值依次分发给排序小的业务处理器节点;C故障节点恢复时分发策略:C01恢复的业务处理器节点按照初始化时的分配策略加载对应的Topic;C02从其他业务处理器节点定时删除被归还给恢复节点的Topic信息。

全文数据:一种基于负荷曲线和历史电量的用户电量数据修复方法技术领域本发明涉及电力数据采集领域,尤其涉及一种基于负荷曲线和历史电量的用户电量数据修复方法。背景技术随着采集系统基本实现全覆盖,基于采集电量数据的分析需求越来越多,如行业电量分析、区域电量分析、电量曲线分析、电量排名分析、电量波动分析、电量增长分析、台区线损分析等等,这些分析对电量的准确性要求非常高;目前对于异常数据常往往采用直接舍弃的方式,一舍弃可能就会使一些异常事件被隐藏而被忽视,影响后续的判断。故而就要求在有电量异常或抄表数据缺失的时候,能对电量进行合理的修复。发明内容本发明要解决的技术问题和提出的技术任务是对现有技术方案进行完善与改进,提供一种基于负荷曲线和历史电量的用户电量数据修复方法,以对电量数据进行修复目的。为此,本发明采取以下技术方案。一种基于负荷曲线和历史电量的用户电量数据修复方法,包括以下步骤:1通过数据采集系统采集用户电量数据;2判断是否存在电量异常或抄表数据缺失;3当电量异常或抄表数据缺失时,取表计的一天24个整点的负荷数据;并对负荷数据进行判断,当整点的负荷数据值小于受电容量1.2倍时,认为该整点的负荷数据值正常,如果24个整点负荷数据中的负荷数据值正常数超过16个整点时,则将这些正常的负荷数据值累加除以累加的整点个数再乘以24作为修正的电量数据,如果24个整点负荷数据中的负荷数据正常数不足16个整点时,则直接累加正常值的负荷数据作为修正的电量数据;4如果通过负荷数据无法进行修正,则取该表计前两天内,最近一天T日的正常电量乘以该表计所在区县其余电量正常的表计的总电量的变化量作为修正的电量数据,变化量通过当日该表计所在区县其余电量正常的表计的总电量除以T日该表计所在区县其余电量正常的表计的总电量得到;5如果通过表计前两天的电量也无法进行修正,则取该表计在营销系统中用于结算的月电量,计算日平均电量作为修正的电量数据。作为优选技术手段:所述的电量异常包括飞走、倒走、停走。作为优选技术手段:在步骤1中,数据采集系统包括网关集群、通信前置集群、业务处理器集群、数据总线、入库服务模块、海量数据分析模块、数据存储模块;网关集群,用于将采集设备接入电力数据采集系统,并维护终端通讯链路和原始报文的收发,所述的采集设备包括专变负控终端、配变监测终端、低压集中器;通信前置集群,与网关集群相连,用于原始数据报文的分发调度,并将原始数据报文推送至分布式消息队列中;通信前置集群对报文的分发调度基于设备地址域算法实现策略分发,通过监控业务处理器集群各节点的运行状况实现分发策略的动态调整;通过心跳握手机制监控前置业务处理器各节点的运行状况,针对节点新增、节点故障及故障节点恢复三种场景分别按照“新增节点分发策略”、“节点故障时分发策略”和“故障节点恢复时分发策略进行动态调整,并把本节点上的终端地址按地址域算法分发给指定业务处理器节点,以减少且均衡加载系统档案,降低程序对服务器内存配置要求;业务处理器集群,与通信前置模块相连,用于通讯规约解析,并与分布式消息队列进行交互;即从消息队列获取下行请求并组成下行帧,将通信前置的原始数据报文进行规约解析并将解析结果推送至分布式消息队列中,数据总线模块,用于支撑上下行通信交互信息的时序化和持久化;采用高吞吐量的分布式Kafka消息队列,充分利用Kafka服务的主题和主题分区,将发布者主题和主站应用集群、业务处理器集群相关联,统一管理主站应用产生的下行请求数据和终端上行数据的收发;入库服务模块,用于从消息队列获取数据批量存入关系型数据库;采用分布式大数据框架Hadoop和传统关系型数据库Oracle结合的方式以适应海量数据的分析和存储;海量数据分析模块,通过基于分布式文件系统的大数据框架实现业务数据的实时计算、离线分析,为进一步深度挖掘提供技术支撑;数据存储模块,用于存储全部业务数据、档案数据、原始数据,为系统提供基本数据支持和计算服务;其分为主生产库、灾备库、历史库、数据发布库,并按业务和存储时限做分库策略以降低单点数据库的访问压力。作为优选技术手段:通信前置机把现场所有终端设备地址域划按一定规则划分为多个区间,设备地址按下行Topic的数量取模得到对应组地址域区间;下行Topic与地址域区间之间存在映射关系,前置业务处理器节点对地址域区间的管理,也即对下行Topic的管理;初始化地址域分配策略按业务前置处理服务节点数量取模,节点新增、节点故障及故障节点恢复时分别按照“新增节点分发策略”、“节点故障时分发策略”和“故障节点恢复时分发策略”实现动态调整,将分配信息及时更新至Zookeeper分布式服务系统,以降低程序内存加载,提高程序集群扩展能力。作为优选技术手段:A节点新增扩容时的分发策略为:A01对每个业务处理器节点所分配的Topic按照Topic编码进行排序,并计算该节点当前处理的Topic总数;A02对业务处理器节点根据Topic总数进行排序;A03计算每个业务处理器节点能处理Topic的平均值,Topic总数除以业务处理器节点总数;A04将节点中Topic数量大于AvgTopic的所有业务处理器节点的多余Topic取出,取出规则:A05优先选择步骤A02排序较大的业务处理器节点中Topic编码较大的Topic;A06将步骤A04中取出的Topic优先分配给新增的业务处理器节点,使新增节点的Topic数约平均值;若仍有未分配的Topic则对所有节点进行取模分配;A07其他节点中删除被分配走的Topic信息;B节点故障时的分发策略为:B01对前置业务处理器节点按照Topic数量进行排序;B02Topic总数除以当前运行的前置业务处理器节点总数,得到当前运行的每个业务处理器节点处理Topic的平均值;B03根据平均值计算当前运行的每个业务处理器节点可新增的Topic数量:由b计算得的均值-现有的Topic数;B04将因节点故障引起的待分发Topic按照节点新增扩容时的分发策略的计算值依次分发给排序小的业务处理器节点;C故障节点恢复时分发策略为:C01恢复的业务处理器节点按照初始化时的分配策略加载对应的Topic;C02从其他业务处理器节点定时删除这些被归还给恢复节点的Topic信息。作为优选技术手段:数据采集步骤包括:11当采集主站需要对终端、测量点进行设置、召测操作时,包括以下步骤:1101Oracle主生产库从营销系统同步基础数据,主要存储全部业务数据、档案数据、原始数据,为采集主站提供数据查询;1102采集主站发起下行请求,可根据不同操作类型设置不同Key发布到Kafka服务的下行Topic中,并将操作命令id存入Redis缓存中;1103下行Topic内的消息按照Key和算法被分区存储,不同的分区可定义不同的优先级,如配置优先级最高的分区处理控制类下行请求、优先级次之的分区处理设置类下行请求、其他优先级的分区处理召测中继类下行请求;1104业务处理器节点从Redis缓存服务器中加载和同步指定终端的档案信息,从Kafka服务订阅下行队列的消息,根据不同的Partition优先级执行,组成下行请求报文帧,分发给通信前置集群,并将下行报文推送至Kafka中的报文Topic中;1105通信前置集群按调度分发策略发送给通信网关集群;1106通信网关将下行请求发送给终端设备;1107终端返回操作结果,经通信网关、通信前置集群由业务处理器进行报文解析并将操作结果返回给Redis中该终端对应的操作命令id;1108采集主站从Redis中根据该终端对应的操作命令id获取操作结果;12当需要电能量数据采集时,包括以下步骤:1201将任务类数据、异常事件数据以报文的形式上送至网关集群;1202网关集群按负载均衡策略分发给通信前置集群;1203按照调度分发策略将原始报文数据分发至业务处理器集群;1204器节点从Redis缓存服务器中加载和同步指定终端的档案信息,解析上行原始报文数据,并将解析结果、原始报文数据等信息推送至相应的Kafka消息队列中;即,解析结果推送至上报数据Topic中,原始报文数据推送至报文Topic;1205库服务从Kafka服务订阅消息,Storm实时计算框架从Kafka消息队列获取原始报文数据、电能量数据等存入HBase分布式数据库;Spark离线计算框架将原始数据导入Hive数据仓库执行复杂的统计分析和数据挖掘;数据入库服务将原始报文数据、电能量数据批量存入关系型数据库;1206从云平台快速查询电能量数据采集明细、采集成功率等;1207le主生产库从营销系统同步基础数据,主要存储全部业务数据、档案数据、原始数据,为采集主站提供数据查询;13要进行电能量数据补全时,包括以下步骤1301通过多种通讯方式将电能量数据以报文形式上送至通信网关集群;1302通信网关集群按照负载均衡分发策略发送给通信前置集群;1303前置集群通过调度分发策略分发至业务处理器集群;1304业务处理器节点从Redis缓存服务器中加载和同步指定终端的档案信息,解析上行原始报文数据,并将解析结果、原始报文数据等信息推送至相应的Kafka消息队列中;即,解析结果推送至上报数据Topic中,原始报文数据推送至报文Topic;1305流计算服务Storm从Kafka服务订阅消息,实时获取电能量数据,实时存入HBase分布式数据中的任务数据打点表;1306当为实时漏点补招时,SparkRDD定时执行漏点审计任务,即根据漏点补招策略对HBase中打点表进行漏点审计,并根据终端通讯状态形成相应漏点请求,推送至Kafka服务的下行Topic中供业务处理器获取下发,从而实现实时漏点补招;1307当为手工漏点补招时,SparkRDD定时任务从Oracle数据库中读取到补招策略后执行漏点审计任务,并根据终端通讯状况形成相应漏点请求,推送至Kafka消息服务供业务处理器获取下发,实现漏点补招。有益效果:一、本技术方案避免了电量异常如电量飞走、电量倒走等情况下,错误的电量数据对数据分析造成的不良影响,提高了数据分析的准确性。二、本技术方案避免了因抄表数据缺失导致电量无法计算的情况下,缺失的电量数据对数据分析造成的不良影响,提高了数据分析的准确性。三、本技术方案取表计的一天24个整点的负荷数据,避免可能存在的负荷部分漏点、以及新装或者停电的情况对负荷数据进行区别计算。四、对于负荷数据无法进行修正的情况,本技术方案则取该表计前两天内,最近一天T日的正常电量乘以该表计所在区县其余电量正常的表计的总电量的变化量即计算当日该表计所在区县其余电量正常的表计的总电量除以T日该表计所在区县其余电量正常的表计的总电量作为修正的电量数据,而非直接使用前日电量;避免气温变化、极端天气等对用电量的影响可能引起的日电量波动。五、本技术方案采用分布式弹性架构设计,运用流处理、消息中间件、分布式存储与并行计算等技术,重构电力数据采集系统,从存储能力、计算性能、数据处理速度和智能分析等方面进行极大地提升,为支撑用电营销智能分析、服务业务创新、拓展专业应用和提高供电服务水平等方面提供了有力保障。六、本技术方案基于面向对象通讯协议特性,可设多套数据采集方法,相对于传统的采集模式,在数据采集的效率、灵活性以及损耗方面,都有显著的提升效果:1、当将基础数据的采集方案划分为采集方案和上报方案,分别定义终端采集电表的规则和终端数据上报的规则,具有如下二方面的优点:1实现了灵活的数据采集方式实时采、打包采、上报数据的周期和频率,实现本地通信流量错峰、减少采集漏点有着显著的作用;2可选择性配置数据采集和数据上报,对于支撑设备本地业务的部分数据项例如时钟巡测、本地补抄,可做到只采不报,有效提升了现场设备服务的多样性和数据采集质量。2、针对电能表类型可配置不同的采集数据项,例如三相表采集电流数据块和电压数据块A、B、C,单相表仅采集A相电流和A相电压,相对于传统所有表都采集A、B、C三相电压和电流,有效的降低了流量的损耗。3、对于终端事件的采集,可根据事件的轻重缓急定义不同级别的采集模板,指定不同的上报频率,不仅能够更合理的分配信道资源,降低终端处理器不必要的开销,同时可以协助管理人员分析、处理异常事件、提升管理效率。本技术方案实现动态调整,以减少且均衡加载系统档案,降低程序对服务器内存配置要求。海量数据存储架构重在“内存化、云化、分工专业化”,实现电能量数据集成融合和高效管理。对海量数据的分析,采用大数据云平台通过基于分布式文件系统的大数据框架实现业务数据的实时计算、离线分析。离线分析框架优选的采用Hive+Spark,Spark离线计算框架实现将原始数据导入Hive数据仓库执行海量数据的统计分析业务及数据挖掘。对海量数据的存储,根据不同的数据使用属性将关系型数据库划分为主生产库、灾备库、历史库、数据发布库,保障采集数据安全稳定、降低生产库的数据访问压力、提升数据发布效率,并按业务和存储时限做分库策略以降低单点数据库的访问压力。附图说明图1是本发明流程图。图2为本发明的采集系统结构框图;图3为本发明的主站设置、召测的流程图;图4为本发明的电能量数据采集的流程图;图5为本发明的对电能量数据补全的流程图。具体实施方式以下结合说明书附图对本发明的技术方案做进一步的详细说明。一种基于负荷曲线和历史电量的用户电量数据修复方法,包括以下步骤:1通过数据采集系统采集用户电量数据;2判断是否存在电量异常或抄表数据缺失;3当电量异常或抄表数据缺失时,取表计的一天24个整点的负荷数据;并对负荷数据进行判断,当整点的负荷数据值小于受电容量1.2倍时,认为该整点的负荷数据值正常,如果24个整点负荷数据中的负荷数据值正常数超过16个整点时,则将这些正常的负荷数据值累加除以累加的整点个数再乘以24作为修正的电量数据,如果24个整点负荷数据中的负荷数据正常数不足16个整点时,则直接累加正常值的负荷数据作为修正的电量数据;4如果通过负荷数据无法进行修正,则取该表计前两天内,最近一天T日的正常电量乘以该表计所在区县其余电量正常的表计的总电量的变化量作为修正的电量数据,变化量通过当日该表计所在区县其余电量正常的表计的总电量除以T日该表计所在区县其余电量正常的表计的总电量得到;5如果通过表计前两天的电量也无法进行修正,则取该表计在营销系统中用于结算的月电量,计算日平均电量作为修正的电量数据。其中,电量异常包括飞走、倒走、停走。如图2所示,一种基于面向对象的数据采集系统包括网关集群、通信前置集群、业务处理器集群、数据总线、入库服务模块、海量数据分析模块、数据存储模块。本技术方案采用分布式弹性架构设计,运用流处理、消息中间件、分布式存储与并行计算等技术,重构电力数据采集系统,从存储能力、计算性能、数据处理速度和智能分析等方面进行极大地提升,为支撑用电营销智能分析、服务业务创新、拓展专业应用和提高供电服务水平等方面提供了有力保障。本技术方案具有以下特点:1.采用弹性架构重构通信程序,满足不断增长用户规模和采集需求:运用大数据技术对用电信息采集系统的架构进行重新设计,采用分布式弹性架构设计:一是通信网关与采集前置机利用消息缓存作为总线,进行报文通信;二是前置机业务处理器仅对报文进行规约解析,并将数据写入消息缓存;三是存储架构重在“内存化、云化、分工专业化”,引入NOSQL存储、数据量大、存储管理能力多样,云平台流式计算和离线分析服务集群进行事件分析、数据校验、修复等操作,关系数据库根据不同的数据使用属性划分为主生产库、灾备库、历史库、数据发布库。四是所有采集数据由入库服务集群统一入库。通信网关服务主要负责专变负控终端、配变监测终端、低压集中器等采集设备接入电力数据采集系统,并维护终端通讯链路和原始报文的收发。通信前置服务负责原始数据报文的分发调度。通信前置服务对报文的分发调度基于设备地址域算法实现策略分发,通过监控前置业务处理器各节点的运行状况实现分发策略的动态调整。其具体算法如下:a.把现场所有终端设备地址域划按一定规则划分为若干区间,比如设备地址按下行Topic的数量100个取模得到100组地址域区间。如此,下行Topic与地址域区间之间也存在映射关系,前置业务处理器节点对地址域区间的管理也即对下行Topic的管理。b.初始化地址域分配策略按业务前置处理服务节点数量取模,节点新增、节点故障及故障节点恢复时分别按照“新增节点分发策略”、“节点故障时分发策略”和“故障节点恢复时分发策略”实现动态调整,并将分配信息及时更新至Zookeeper分布式服务系统。此分发策略目的在于降低程序内存加载,提高程序集群扩展能力。c.“节点新增扩容时分发策略”:1对每个业务处理器节点所分配的Topic按照Topic编码进行排序如:由大到小,并计算该节点当前处理的Topic总数。2对业务处理器节点不含新增节点根据Topic总数进行排序如:由大到小;3计算每个业务处理器节点能处理Topic的平均值假设该值标记为AvgTopic:Topic总数除以业务处理器节点总数含新增节点,小数位舍去。4将节点中Topic数量大于AvgTopic的所有业务处理器节点的多余Topic取出,取出规则:优先选择步骤2排序较大的业务处理器节点中Topic编码较大的Topic。5将步骤4中取出的Topic优先分配给新增的业务处理器节点,使新增节点的Topic数约平均值;若仍有未分配的Topic则对所有节点进行取模分配。6其他节点中删除被分配走的Topic信息。d.“节点故障时分发策略”:1对前置业务处理器节点按照Topic数量进行排序如由大到小。2Topic总数除以当前运行的前置业务处理器节点总数,得到当前运行的每个业务处理器节点处理Topic的平均值;3根据平均值计算当前运行的每个业务处理器节点可新增的Topic数量:由b计算得的均值-现有的Topic数;4将因节点故障引起的待分发Topic按照步骤c的计算值依次分发给排序小的业务处理器节点;e.“故障节点恢复时分发策略”:1恢复的业务处理器节点按照初始化时的分配策略加载对应的Topic;2从其他业务处理器节点定时删除这些被归还给恢复节点的Topic信息。前置业务处理服务负责通讯规约解析,并与分布式消息队列进行交互。即从消息队列获取下行请求并组成下行帧,将通信前置的原始数据报文进行规约解析并将解析结果推送至分布式消息队列中。通信前置服务节点通过与业务处理器节点间定时心跳握手来获取所有业务处理器节点的运行状态,并把本节点上的终端地址按地址域算法分发给指定业务处理器节点。分布式消息队列作为数据总线负责支撑上下行通信交互信息的时序化和持久化。具体的采用高吞吐量的分布式Kafka消息队列,充分利用Kafka服务的主题和主题分区,将发布者主题和主站应用服务集群、业务处理器服务集群相关联,统一管理主站应用产生的下行请求数据和终端上行数据的收发。入库服务集群负责从消息队列获取数据批量存入关系型数据库。实时处理集群采用大数据云平台通过基于分布式文件系统的大数据框架实现业务数据的实时计算、离线分析,为进一步深度挖掘提供技术支撑。2、对采集数据进行“即采即校”、实时修复,提升数据质量:运用流处理技术,实现对采集负荷、电能示值数据进行实时检查、校验,并对问题数据进行标记,对异常负荷数据进行修复;针对问题数据通过功率估值、ARIMA算法和营销发行电量进行修复,保证数据的合理性、一致性、逻辑性,通过及时发现、标注无效和失真数据,提高系统数据质量。同时,运用流处理技术实现电能量数据、告警事件的实时监测与分析。所述流处理技术即实时计算的框架,优选的采用Hbase+Storm,Storm实时计算框架负责从消息队列中获取原始数据和报文数据入HBase分布式数据库;3、通过分布式并行计算框架,实现海量数据准实时统计:通过大数据分布式内存并行计算框架,实现按小时对采集成功率指标、各类用户电量和负荷、线损计算、配变运行监测、移动运营商信道质量监测、终端在线率等进行统计,满足各级单位业务管控需求。准实时分析框架优选的采用Hive+Spark,Spark离线计算框架实现将原始数据导入Hive数据仓库执行海量数据的统计分析业务及数据挖掘。4、构建灵活的数据存储策略,实现“按需存储”,满足多维度查询需求:分析不同业务数据应用需求,发挥商用数据库Oracle、缓存数据库Redis、分布式数据库HBase和数据仓库Hive长处,设计多级存储机制,提高查询性能,提升数据应用效率。商用数据库采用Oracle12c数据库版本,结合InfiniBand高速网络和SSD固态硬盘存储搭建支撑高吞吐量高并发的OLTP联机事务处理业务的数据存储平台,主要负责存储全部业务数据、档案数据、原始数据,为系统提供基本数据支持和计算服务。关系型数据库可细分为主生产库、灾备库、历史库、数据发布库,保障采集数据安全稳定、降低生产库的数据访问压力、提升数据发布效率,并按业务和存储时限做分库策略以降低单点数据库的访问压力。缓存数据库Redis是一个高性能的Key-Value数据库,性能极高–Redis能支持超过100K+每秒的读写频率。不仅仅支持简单的Key-Value类型的数据,同时还提供list、set、zset、hash等数据结构的存储。分布式数据库HBase是一个高可靠性、高性能、面向列、可伸缩的分布式存储系统。Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,通过类SQL语句快速实现简单的MapReduce统计,十分适合数据仓库的统计分析。云数据平台和关系型数据库之间的数据同步优选的采用Sqoop数据转移工具实现。5、基于面向对象通讯协议特性,可设计了多套数据采集方法,相对于传统的采集模式,在数据采集的效率、灵活性以及损耗方面,都有显著的提升效果,具体如下所述:a将基础数据的采集方案划分为采集方案和上报方案,分别定义终端采集电表的规则和终端数据上报的规则,具有如下二方面的优点:1实现了灵活的数据采集方式实时采、打包采、上报数据的周期和频率,实现本地通信流量错峰、减少采集漏点有着显著的作用;2可选择性配置数据采集和数据上报,对于支撑设备本地业务的部分数据项例如时钟巡测、本地补抄,可做到只采不报,有效提升了现场设备服务的多样性和数据采集质量。b针对电能表类型可配置不同的采集数据项,例如三相表采集电流数据块和电压数据块A、B、C,单相表仅采集A相电流和A相电压,相对于传统所有表都采集A、B、C三相电压和电流,有效的降低了流量的损耗。c对于终端事件的采集,可根据事件的轻重缓急定义不同级别的采集模板,指定不同的上报频率,不仅能够更合理的分配信道资源,降低终端处理器不必要的开销,同时可以协助管理人员分析、处理异常事件、提升管理效率。面向对象协议终端的数据采集方式可分为采集方案和上报方案,采集方案定义了终端采集电表的规则,上报方案定义了终端上报数据的规则,模板样例下表所示。表1面向对象终端事件根据事件重要程度划分成各个级别,每个级别定义各自的采集频率和上报数据项,模板样例如下表所示。基于面向对象的数据采集系统的数据采集方法,包括:一:采集主站对终端、测量点进行设置、召测操作的流程,如图3所示。1.Oracle主生产库从营销系统同步基础数据,主要存储全部业务数据、档案数据、原始数据,为采集主站提供数据查询。2.采集主站发起下行请求,可根据不同操作类型设置不同Key发布到Kafka服务的下行Topic中,并将操作命令id存入Redis缓存中。3.下行Topic内的消息按照Key和算法被分区存储,不同的分区可定义不同的优先级,如配置优先级最高的分区处理控制类下行请求、优先级次之的分区处理设置类下行请求、其他优先级的分区处理召测中继类下行请求。4.业务处理器节点从Redis缓存服务器中加载和同步指定终端的档案信息,从Kafka服务订阅下行队列的消息,根据不同的Partition优先级执行,组成下行请求报文帧,分发给通信前置集群,并将下行报文推送至Kafka中的报文Topic中。5.通信前置集群按调度分发策略发送给通信网关集群。6.通信网关将下行请求发送给终端设备。7.终端返回操作结果,经通信网关、通信前置集群由业务处理器进行报文解析并将操作结果返回给Redis中该终端对应的操作命令id。8.采集主站从Redis中根据该终端对应的操作命令id获取操作结果。二:电能量数据采集的流程,如图4所示;1.采集终端将任务类数据、异常事件数据以报文的形式上送至网关集群;2.网关集群按负载均衡策略分发给通信前置集群;3.通信前置按照调度分发策略将原始报文数据分发至业务处理器集群;4.业务处理器节点从Redis缓存服务器中加载和同步指定终端的档案信息,解析上行原始报文数据,并将解析结果、原始报文数据等信息推送至相应的Kafka消息队列中;即,解析结果推送至上报数据Topic中,原始报文数据推送至报文Topic。5.流处理入库服务从Kafka服务订阅消息,Storm实时计算框架从Kafka消息队列获取原始报文数据、电能量数据等存入HBase分布式数据库。Spark离线计算框架将原始数据导入Hive数据仓库执行复杂的统计分析和数据挖掘。数据入库服务将原始报文数据、电能量数据批量存入关系型数据库。6.采集主站从云平台快速查询电能量数据采集明细、采集成功率等。7.Oracle主生产库从营销系统同步基础数据,主要存储全部业务数据、档案数据、原始数据,为采集主站提供数据查询。性能指标:计算耗时指标:大数据云平台各类离线计算业务在半小时内完成如采集质量分析、行业负荷趋势分析等典型业务;各类实时流计算业务每秒处理规模达到2万笔如负荷特性分析、终端通信状态维护等典型业务。通信处理指标,通信前置集群单节点TCP链路接入量最高达40万台;采集前置集群单节点每秒分发处理报文达3万条;数据存储服务整体数据入库效率达每秒6万条。对于电能量数据缺失可通过补招的策略进行数据补全,提高采集成功率;借助大数据云平台可实现漏点的快速补全。补招可分为实时漏点补招和主站手动漏点补招两部分,具体如对电能量数据补全的流程。三:对电能量数据补全的流程图,如图5所示。1.采集终端通过多种通讯方式将电能量数据以报文形式上送至通信网关集群。2.通信网关集群按照负载均衡分发策略发送给通信前置集群。3.通信前置集群通过调度分发策略分发至业务处理器集群。4.业务处理器节点从Redis缓存服务器中加载和同步指定终端的档案信息,解析上行原始报文数据,并将解析结果、原始报文数据等信息推送至相应的Kafka消息队列中;即,解析结果推送至上报数据Topic中,原始报文数据推送至报文Topic。5.流计算服务Storm从Kafka服务订阅消息,实时获取电能量数据,实时存入HBase分布式数据中的任务数据打点表。6.SparkRDD定时执行漏点审计任务,即根据漏点补招策略对HBase中打点表进行漏点审计,并根据终端通讯状态形成相应漏点请求,推送至Kafka服务的下行Topic中供业务处理器获取下发,从而实现实时漏点补招。另一方面,采集主站亦可触发手工漏点补招。1.将补招策略如地市单位、用户类型、数据类型等存入Oracle数据库中。2.SparkRDD定时任务从Oracle数据库中读取到补招策略后执行漏点审计任务,并根据终端通讯状况形成相应漏点请求,推送至Kafka消息服务供业务处理器获取下发,实现漏点补招。四:本技术方案可根据终端类型、设备类型、采集数据的类型电量、负荷等、电能表类型的不同,实施时我们需要选择不同的采集方法。1专变数据采集方法专变采集日冻结有功电能时,终端采集电表执行频率为1日,终端上报数据的频率为12小时,数据分类为日冻结数据,数据项包括当前一象限无功电能示值数据块,当前四象限无功电能示值数据块,当前正向有功电能示值数据块,当前反向有功电能示值数据块。专变采集96点负荷曲线时,终端采集电表和上报数据的执行频率为15分钟,数据分类为实时数据,数据项包括电压数据块,电流数据块,有功功率,当前一象限无功电能示值数据块,当前四象限无功电能示值数据块,正向有功总电能量,功率因数。2低压I型集中器数据采集方法低压I型集中器采集日冻结有功电能时,终端采集电表执行频率为1日,终端上报数据的频率为12小时,数据分类为日冻结数据,采集和上报数据项包括当前正向有功电能示值数据块,当前反向有功电能示值数据块。低压I型集中器采集96点负荷曲线时,终端采集电表和上报数据的执行频率为6小时,数据分类为分钟冻结数据,若安装的是三相电能表,则数据项为电压数据块、电流数据块、功率因素、有功功率、正向有功总电能量,若安装的是单相电能表,则数据项为A相电压、A相电流、功率因素、正向有功总电能量、有功功率、N线电流。3低压II型集中器数据采集方法低压II型集中器采集日冻结有功电能时,与I型集中器完全一致,即下发同样的采集方案模板和上报方案模板。低压II型集中器采集96点负荷曲线时,终端采集电表和上报数据的执行频率为15分钟,数据分类为实时数据,若安装的是三相电能表,则数据项为电压数据块、电流数据块、功率因素、有功功率、正向有功总电能量,若安装的是单相电能表,则数据项为A相电压、A相电流、功率因素、正向有功总电能量、有功功率、N线电流。4事件方案设计本发明中设计的事件方案可几乎涵盖所有终端事件,在本实施例中选择三个事件作为案例:以上图1-5所示的一种基于面向对象的数据采集方法是本发明的具体实施例,已经体现出本发明实质性特点和进步,可根据实际的使用需要,在本发明的启示下,对其进行等同修改,均在本方案的保护范围之列。

权利要求:1.一种基于负荷曲线和历史电量的用户电量数据修复方法,其特征在于包括以下步骤:1通过数据采集系统采集用户电量数据;2判断是否存在电量异常或抄表数据缺失;3当电量异常或抄表数据缺失时,取表计的一天24个整点的负荷数据;并对负荷数据进行判断,当整点的负荷数据值小于受电容量1.2倍时,认为该整点的负荷数据值正常,如果24个整点负荷数据中的负荷数据值正常数超过16个整点时,则将这些正常的负荷数据值累加除以累加的整点个数再乘以24作为修正的电量数据,如果24个整点负荷数据中的负荷数据正常数不足16个整点时,则直接累加正常值的负荷数据作为修正的电量数据;4如果通过负荷数据无法进行修正,则取该表计前两天内,最近一天T日的正常电量乘以该表计所在区县其余电量正常的表计的总电量的变化量作为修正的电量数据,变化量通过当日该表计所在区县其余电量正常的表计的总电量除以T日该表计所在区县其余电量正常的表计的总电量得到;5如果通过表计前两天的电量也无法进行修正,则取该表计在营销系统中用于结算的月电量,计算日平均电量作为修正的电量数据。2.根据权利要求1所述的一种基于负荷曲线和历史电量的用户电量数据修复方法,其特征在于:所述的电量异常包括飞走、倒走、停走。3.根据权利要求2所述的一种基于负荷曲线和历史电量的用户电量数据修复方法,其特征在于:在步骤1中,数据采集系统包括网关集群、通信前置集群、业务处理器集群、数据总线、入库服务模块、海量数据分析模块、数据存储模块;网关集群,用于将采集设备接入电力数据采集系统,并维护终端通讯链路和原始报文的收发,所述的采集设备包括专变负控终端、配变监测终端、低压集中器;通信前置集群,与网关集群相连,用于原始数据报文的分发调度,并将原始数据报文推送至分布式消息队列中;通信前置集群对报文的分发调度基于设备地址域算法实现策略分发,通过监控业务处理器集群各节点的运行状况实现分发策略的动态调整;通过心跳握手机制监控前置业务处理器各节点的运行状况,针对节点新增、节点故障及故障节点恢复三种场景分别按照“新增节点分发策略”、“节点故障时分发策略”和“故障节点恢复时分发策略进行动态调整,并把本节点上的终端地址按地址域算法分发给指定业务处理器节点,以减少且均衡加载系统档案,降低程序对服务器内存配置要求;业务处理器集群,与通信前置模块相连,用于通讯规约解析,并与分布式消息队列进行交互;即从消息队列获取下行请求并组成下行帧,将通信前置的原始数据报文进行规约解析并将解析结果推送至分布式消息队列中,数据总线模块,用于支撑上下行通信交互信息的时序化和持久化;采用高吞吐量的分布式Kafka消息队列,充分利用Kafka服务的主题和主题分区,将发布者主题和主站应用集群、业务处理器集群相关联,统一管理主站应用产生的下行请求数据和终端上行数据的收发;入库服务模块,用于从消息队列获取数据批量存入关系型数据库;采用分布式大数据框架Hadoop和传统关系型数据库Oracle结合的方式以适应海量数据的分析和存储;海量数据分析模块,通过基于分布式文件系统的大数据框架实现业务数据的实时计算、离线分析,为进一步深度挖掘提供技术支撑;数据存储模块,用于存储全部业务数据、档案数据、原始数据,为系统提供基本数据支持和计算服务;其分为主生产库、灾备库、历史库、数据发布库,并按业务和存储时限做分库策略以降低单点数据库的访问压力。4.根据权利要求3所述的一种基于负荷曲线和历史电量的用户电量数据修复方法,其特征在于:通信前置机把现场所有终端设备地址域划按一定规则划分为多个区间,设备地址按下行Topic的数量取模得到对应组地址域区间;下行Topic与地址域区间之间存在映射关系,前置业务处理器节点对地址域区间的管理,也即对下行Topic的管理;初始化地址域分配策略按业务前置处理服务节点数量取模,节点新增、节点故障及故障节点恢复时分别按照“新增节点分发策略”、“节点故障时分发策略”和“故障节点恢复时分发策略”实现动态调整,将分配信息及时更新至Zookeeper分布式服务系统,以降低程序内存加载,提高程序集群扩展能力。5.根据权利要求4所述的一种基于负荷曲线和历史电量的用户电量数据修复方法,其特征在于:A节点新增扩容时的分发策略为:A01对每个业务处理器节点所分配的Topic按照Topic编码进行排序,并计算该节点当前处理的Topic总数;A02对业务处理器节点根据Topic总数进行排序;A03计算每个业务处理器节点能处理Topic的平均值,Topic总数除以业务处理器节点总数;A04将节点中Topic数量大于AvgTopic的所有业务处理器节点的多余Topic取出,取出规则:A05优先选择步骤A02排序较大的业务处理器节点中Topic编码较大的Topic;A06将步骤A04中取出的Topic优先分配给新增的业务处理器节点,使新增节点的Topic数约平均值;若仍有未分配的Topic则对所有节点进行取模分配;A07其他节点中删除被分配走的Topic信息;B节点故障时的分发策略为:B01对前置业务处理器节点按照Topic数量进行排序;B02Topic总数除以当前运行的前置业务处理器节点总数,得到当前运行的每个业务处理器节点处理Topic的平均值;B03根据平均值计算当前运行的每个业务处理器节点可新增的Topic数量:由b计算得的均值-现有的Topic数;B04将因节点故障引起的待分发Topic按照节点新增扩容时的分发策略的计算值依次分发给排序小的业务处理器节点;C故障节点恢复时分发策略为:C01恢复的业务处理器节点按照初始化时的分配策略加载对应的Topic;C02从其他业务处理器节点定时删除这些被归还给恢复节点的Topic信息。6.根据权利要求4所述的一种基于负荷曲线和历史电量的用户电量数据修复方法,其特征在于:数据采集步骤包括:11当采集主站需要对终端、测量点进行设置、召测操作时,包括以下步骤:1101Oracle主生产库从营销系统同步基础数据,主要存储全部业务数据、档案数据、原始数据,为采集主站提供数据查询;1102采集主站发起下行请求,可根据不同操作类型设置不同Key发布到Kafka服务的下行Topic中,并将操作命令id存入Redis缓存中;1103下行Topic内的消息按照Key和算法被分区存储,不同的分区可定义不同的优先级,如配置优先级最高的分区处理控制类下行请求、优先级次之的分区处理设置类下行请求、其他优先级的分区处理召测中继类下行请求;1104业务处理器节点从Redis缓存服务器中加载和同步指定终端的档案信息,从Kafka服务订阅下行队列的消息,根据不同的Partition优先级执行,组成下行请求报文帧,分发给通信前置集群,并将下行报文推送至Kafka中的报文Topic中;1105通信前置集群按调度分发策略发送给通信网关集群;1106通信网关将下行请求发送给终端设备;1107终端返回操作结果,经通信网关、通信前置集群由业务处理器进行报文解析并将操作结果返回给Redis中该终端对应的操作命令id;1108采集主站从Redis中根据该终端对应的操作命令id获取操作结果;12当需要电能量数据采集时,包括以下步骤:1201将任务类数据、异常事件数据以报文的形式上送至网关集群;1202网关集群按负载均衡策略分发给通信前置集群;1203按照调度分发策略将原始报文数据分发至业务处理器集群;1204器节点从Redis缓存服务器中加载和同步指定终端的档案信息,解析上行原始报文数据,并将解析结果、原始报文数据等信息推送至相应的Kafka消息队列中;即,解析结果推送至上报数据Topic中,原始报文数据推送至报文Topic;1205库服务从Kafka服务订阅消息,Storm实时计算框架从Kafka消息队列获取原始报文数据、电能量数据等存入HBase分布式数据库;Spark离线计算框架将原始数据导入Hive数据仓库执行复杂的统计分析和数据挖掘;数据入库服务将原始报文数据、电能量数据批量存入关系型数据库;1206从云平台快速查询电能量数据采集明细、采集成功率等;1207le主生产库从营销系统同步基础数据,主要存储全部业务数据、档案数据、原始数据,为采集主站提供数据查询;13要进行电能量数据补全时,包括以下步骤1301通过多种通讯方式将电能量数据以报文形式上送至通信网关集群;1302通信网关集群按照负载均衡分发策略发送给通信前置集群;1303前置集群通过调度分发策略分发至业务处理器集群;1304业务处理器节点从Redis缓存服务器中加载和同步指定终端的档案信息,解析上行原始报文数据,并将解析结果、原始报文数据等信息推送至相应的Kafka消息队列中;即,解析结果推送至上报数据Topic中,原始报文数据推送至报文Topic;1305流计算服务Storm从Kafka服务订阅消息,实时获取电能量数据,实时存入HBase分布式数据中的任务数据打点表;1306当为实时漏点补招时,SparkRDD定时执行漏点审计任务,即根据漏点补招策略对HBase中打点表进行漏点审计,并根据终端通讯状态形成相应漏点请求,推送至Kafka服务的下行Topic中供业务处理器获取下发,从而实现实时漏点补招;1307当为手工漏点补招时,SparkRDD定时任务从Oracle数据库中读取到补招策略后执行漏点审计任务,并根据终端通讯状况形成相应漏点请求,推送至Kafka消息服务供业务处理器获取下发,实现漏点补招。

百度查询: 国网浙江省电力有限公司电力科学研究院;国网浙江省电力有限公司;浙江华云信息科技有限公司;国家电网有限公司 一种基于负荷曲线和历史电量的用户电量数据修复方法

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。