用电信息采集系统的任务并行处理方法

文档序号:6512860阅读:166来源:国知局
用电信息采集系统的任务并行处理方法
【专利摘要】本发明给出了一个用电信息采集系统的任务并行处理方法,建立分布式的采集通讯机组,由各采集通讯机并行采集线程对应的分布在各地市的终端执行采集任务,根据终端的不同类型,对采集的任务进行分解:通过管理线程查询当前采集通讯机组所有采集线程的运行状态,当有空闲的采集线程时,就去取任务队列中需要执行的任务;对各个地市之间的采集任务并行处理;对多个采集线程采集上来的数据项同时进行存储,数据缓存区对于每个线程进行分区,同时读写。本发明通过分布式的并行处理方法,确保不同用户任务数据的及时性,并提高了采集系统的执行效率。
【专利说明】用电信息采集系统的任务并行处理方法
[0001]
【技术领域】
[0002]本发明涉及一种用电信息采集系统的任务并行处理方法,属于计算机系统【技术领域】。
【背景技术】
[0003]并行机制是用电信息采集系统平台的一个重要组成部分,使得不同用户任务的下发和数据项的采集入库能够快速、高效的执行。
[0004]为满足大量的不同用户用电信息的任务需求,并行系统应具备相当的可用性和自适应性。不仅需要提供正常的任务调度,还需要提供任务的分割;另外,为满足更高的执行效率,并行系统还需要具备一定的自适应的功能。
[0005]目前,部分信息采集系统提供了任务并行的功能,但其并行的功能太过的单一,任务和线程的对应关系比较的固定,这样就会出现线程的利用率较差,从而导致任务的执行效率不高,使得数据项不能及时的采集入库,影响营销部门抄表、电费等时效性较强业务的开展,并且还伴随着QOS的降低。

【发明内容】

[0006]本发明所要解决的技术问题是提出了一种先进的并行处理方法,提高任务的执行效率,保证数据采集的及时性,提高业务的服务质量。
[0007]为实现上述目的,本发明采取以下技术方案进行实现:
用电信息采集系统的任务并行处理方法,其特征在于:包括
1)建立各地市采集任务的分布式的采集通讯机组:建立分布式的采集通讯机组,由各采集通讯机并行采集线程对应的分布在各地市的终端执行采集任务,对各个地市之间的采集任务并行处理;
2)任务的并行处理:当任务队列中有任务需要执行时,通过一个管理线程查询当前采集通讯机组所有采集线程的运行状态,当有空闲的采集线程时,就去取任务队列中这个需要执行的任务,没有采集线程空闲的话,该任务处于等待状态,直至查询到有空间的采集线程;
3)任务分解成若干子任务:根据终端的不同类型,对采集的任务进行分解:
A.终端为集抄终端:循环数据项,由当前数据项和当前采集点取得采集对象列表,循环采集对象列表,取得采集数据项,当采集数据项数达到任务上限或者到达最后一个采集对象,则生成一条子任务;当所有采集对象的子任务生成完成,则转至下一个数据项,由下一个数据项和当前的采集点取得新的采集对象列表,生成下一个数据项和当前采集点的采集任务,过程与前一个数据项的子任务生成过程相同;
B.终端为负控终端:先取得该采集点的采集对象列表,循环采集对象列表,由每个采集对象分别和当前配置任务的所有数据项生成采集数据项列表,如果采集数据项数达到每条任务最大采集数据项数,或者到达最后一个采集对象的最后一个采集数据项时,则生成一条子任务;当一个采集对象对应所有数据项的采集数据项的自动任务生成完成,则转至下一个采集对象,下一个采集对象的自动任务生成过程与前一个采集对象生成过程相同;
4)任务的并行存储:对多个采集线程采集上来的数据项同时进行存储,数据缓存区对于每个线程进行分区,同时读写。
[0008]任务按性质分为自动任务和手动任务,自动任务每天定时执行,手动任务由人为手动触发,如召测某个数据项的数据;自动任务和手动任务分别存放在任务队列缓存中的自动任务队列缓存和手动任务队列缓存中。
[0009]手动任务的优先级比自动任务高,任务队列缓存采取FIFO先进先出机制。
[0010]管理线程用来启动或暂停多个采集线程,采集线程到任务队列缓存中取任务,任务查询方法为:管理线程启动第一个采集线程;先查询手动任务队列缓存首部,有任务就开始执行,并且第一采集线程进入忙碌状态,没有任务就继续查询自动任务队列缓存首部,有任务就执行,并且第一采集线程进入忙碌状态,没有就继续查询手动任务队列缓存和自动任务队列缓存,进入轮询状态;
上一个采集线程进入忙碌状态后,管理线程启动下一个采集线程,下一个采集线程执行相同的任务查询过程。
[0011]任务的并行存储机制为:
数据库按照终端号,用户编号、电表号、电表局号、日期、地区编号等信息进行区域分害!],任务线程把采集好的数据按照终端号,用户编号、电表号、电表局号、日期、地区编号等信息分别把数据存放到相应的区域,如果对应的信息与之前存储的信息不同,则进行数据插入操作,若是果对应的信息与之前存储的信息相同,则执行数据替换更新操作。
[0012]每个采集通讯机组设置有采集通讯机组热备,当前采集通讯机组出现故障时,切换到采集通讯机组热备,由采集通讯机组热备继续执行当前任务。
[0013]一个采集通讯机组包含一个管理线程,用于管理的最大并行采集线程数为300。采集通讯机热备:用于当主设备出现故障时,可以自动切换到备用设备,保证任务可以继续执行。
[0014]本发明对用电信息采集系统具有可扩展性,随着任务量的增加,可根据任务的终端类型进行分解和并行处理。
[0015]为保证任务的正常执行,本发明提供了一种备份手段:热备份,采用archivelogmode的方式备份数据库。
[0016]本发明所达到的有益效果:
本发明运用分布式处理技术和并行算法,解决了现有采集任务繁琐且数量巨大的问题,大大地缩小了任务执行的时间,提高任务的执行效率,随着数据的及时入库,提高了计量检测、电费查收和故障排查等业务的质量。
【专利附图】

【附图说明】
[0017]图1并行处理物理架构结构图;
图2任务并行实现流程图。【具体实施方式】
[0018]以下结合附图对本发明作具体的介绍:
如图1所示,本发明的物理部署模型,包括任务执行库、业务库、任务调度线程(管理线程)、采集线程、数据缓存区和批量入库线程。
[0019]任务执行库中的任务队列用于存放执行的m个任务,每个采集通讯机组1A、1B任务调度线程用来启动或暂停其管理的300个采集线程,任务调度线程启动采集线程,到任务队列缓存中取任务,根据采集线程连接的η个终端的不同类型,对采集的任务进行分解,分解为若干子任务,并行执行任务处理。并将采集的数据按照分割区域分别对应存放到数据缓存区,通过数据缓存区集中通过每个采集通讯机组1Α、1Β中的批量入库线程最后统一集中存储到业务库中。
[0020]如图2所示,本发明的方法任务查询、并行处理过程为:
根据终端的不同类型,对采集的任务进行分解;任务按性质分为自动任务和手动任务,分别存放在自动任务队列缓存和手动任务队列缓存中。
[0021]管理线程启动第一个采集线程;先查询手动任务队列缓存首部,有任务就开始执行,并且第一采集线程进入忙碌状态,没有任务就继续查询自动任务队列缓存首部,有任务就执行,并且第一采集线程进入忙碌状态,没有就返回继续查询手动任务队列缓存和自动任务队列缓存,进入轮询状态;
当取出任务后,上一个采集线程进入忙碌状态,开始进行数据采集,数据采集完成后由数据库分区存储数据;同时,取出任务后,管理线程启动下一个采集线程,下一个采集线程执行相同的任务查询、并行处理过程。管理线程未发出暂停指令,任务队列中的任务处理完成后,线程结束。
[0022]本发明的方法可用于支持装有信息采集的大型专变用户、中小型专变用户、三项一般工业用户、单相一般工业用户、居民用户和公用配变考核计量点任务的并行下发和终端事件或数据项的并行上报。本发明的并行处理方法提高了任务的执行效率,保证任务能够尽快的完成,提升计量检测、电费查收和故障排查等业务的质量。
[0023]以上已以较佳实例公布本发明如上,然其并非用以限制本发明,凡采取等同替换或等效变换的方式所获得的技术方案,均落在本发明的保护范围内。
【权利要求】
1.用电信息采集系统的任务并行处理方法,其特征在于:包括以下步骤: 1)建立各地市采集任务的分布式的采集通讯机组:建立分布式的采集通讯机组,由各采集通讯机并行采集线程对应的分布在各地市的终端执行采集任务,对各个地市之间的采集任务并行处理; 2)任务的并行处理:当任务队列中有任务需要执行时,通过一个管理线程查询当前采集通讯机组所有采集线程的运行状态,当有空闲的采集线程时,就去取任务队列中这个需要执行的任务,没有采集线程空闲的话,该任务处于等待状态,直至查询到有空间的采集线程; 3)任务分解成若干子任务:根据终端的不同类型,对采集的任务进行分解: A.终端为集抄终端:循环数据项,由当前数据项和当前采集点取得采集对象列表,循环采集对象列表,取得采集数据项,当采集数据项数达到任务上限或者到达最后一个采集对象,则生成一条子任务;当所有采集对象的子任务生成完成,则转至下一个数据项,由下一个数据项和当前的采集点取得新的采集对象列表,生成下一个数据项和当前采集点的采集任务,过程与前一个数据项的子任务生成过程相同; B.终端为负控终端:先取得该采集点的采集对象列表,循环采集对象列表,由每个采集对象分别和当前配置任务的所有数据项生成采集数据项列表,如果采集数据项数达到每条任务最大采集数据项数,或者到达最后一个采集对象的最后一个采集数据项时,则生成一条子任务;当一个采集对象对应所有数据项的采集数据项的自动任务生成完成,则转至下一个采集对象,下一个采集对象的自动任务生成过程与前一个采集对象生成过程相同; 4)任务的并行存储:对多个采集线程采集上来的数据项同时进行存储,数据缓存区对于每个线程进行分区,同时读 写。
2.根据权利要求1所述的用电信息采集系统的任务并行处理方法,其特征在于: 任务按性质分为自动任务和手动任务,自动任务每天定时执行,手动任务由人为手动触发;自动任务和手动任务分别存放在任务队列缓存中的自动任务队列缓存和手动任务队列缓存中。
3.根据权利要求1或2所述的用电信息采集系统的任务并行处理方法,其特征在于: 手动任务的优先级比自动任务闻,任务队列缓存米取先进先出机制。
4.根据权利要求1所述的用电信息采集系统的任务并行处理方法,其特征在于: 管理线程用来启动或暂停多个采集线程,任务查询方法为:管理线程启动第一个采集线程;先查询手动任务队列缓存首部,有任务就开始执行,并且第一采集线程进入忙碌状态,没有任务就继续查询自动任务队列缓存首部,有任务就执行,并且第一采集线程进入忙碌状态,没有就继续查询手动任务队列缓存和自动任务队列缓存,进入轮询状态; 上一个采集线程进入忙碌状态后,管理线程启动下一个采集线程,下一个采集线程执行相同的任务查询过程。
5.根据权利要求1所述的用电信息采集系统的任务并行处理方法,其特征在于: 任务的并行存储机制为: 数据库按照终端号,用户编号、电表号、电表局号、日期、地区编号信息进行区域分割,采集线程把采集好的数据按照终端号,用户编号、电表号、电表局号、日期、地区编号信息分别对应存放到相应的区域,如果对应的信息与之前存储的信息不同,则进行数据插入操作,若对应的信息与之前存储的信息相同,则执行数据替换更新操作。
6.根据权利要求1所述的用电信息采集系统的任务并行处理方法,其特征在于:每个采集通讯机组设置有采集通讯机组热备,当前采集通讯机组出现故障时,切换到采集通讯机组热备,由采集通讯机组热备继续执行当前任务。
7.根据权利要求1或5所述的用电信息采集系统的任务并行处理方法,其特征在于:一个采集通讯机组包含一个管理,线程,用于管理的最大并行采集线程数为300。
【文档编号】G06F17/30GK103514277SQ201310437549
【公开日】2014年1月15日 申请日期:2013年9月24日 优先权日:2013年9月24日
【发明者】黄奇峰, 郑海雁, 范洁, 熊政, 李新家, 陈霄, 周玉, 喻伟, 王红星, 陈刚, 易永仙 申请人:国家电网公司, 江苏省电力公司, 江苏省电力公司电力科学研究院, 江苏方天电力技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1