一种基于分布式计算的海量用电信息并行计算系统及方法

文档序号:8339744阅读:353来源:国知局
一种基于分布式计算的海量用电信息并行计算系统及方法
【技术领域】
[0001]本发明属于分布式计算领域,特别涉及一种基于分布式计算的海量用电信息并行计算系统及方法。
【背景技术】
[0002]随着电力领域对信息化数据要求的提升,电力领域的信息化系统逐渐呈现出覆盖规模庞大、海量数据、数据项复杂、数据处理逻辑复杂、数据存储周期长、业务种类多、计算频度高等特点。
[0003]目前,用电信息采集系统“全覆盖、全采集”目标正在逐步实现,系统会面临海量数据资源存储及处理的需求,包括终端采集的原始数据、解析并计算后得到的业务数据,这些数据的操作方式、操作频度要求各不相同,接入终端数量的增多,采集数据量呈指数级增长,系统的数据量也越来越大,面临着海量数据存储慢、重点数据分析时效性差、系统整体性能下降、业务分析计算困难等难题,有效提升电力领域的信息化系统海量数据的计算和处理能力已经迫在眉睫。
[0004]为了充分发挥电力领域信息化系统基础支撑作用,满足用电数据深化应用工作和对数据存储、查询、统计、分析及对数据价值深入挖掘的需求,通过领先的数据融合、数据清洗、数据治理以及大数据挖掘等相关技术手段提升用电数据应用价值已势在必行。这也决定了电力领域信息化系统对数据的需求更广、分析挖掘需求更深、在线统计计算时效性要求更高。如每天批量计算的线损计算服务,地市级的考核单元往往达数万、供入供出计量点往往达百万,而这些数据要求在一个小时左右的时间内计算完成,而相对单台服务器的计算能力是有限的。
[0005]因此,随着业务的开展,数据计算需要处理的数据越来越多,数据计算服务的计算时间也会越来越长,必须要通过分布式计算的手段提升其计算时效性,才能为电力业务的发展提供数据保障。

【发明内容】

[0006]本发明的目的就是为了解决上述问题,提供一种基于分布式计算的海量用电信息并行计算系统及方法,它具有有效的提升数据综合计算能力,实现服务器计算能力的横向扩展,解决用电大数据时代海量数据实时、高效处理的问题的优点。
[0007]为了实现上述目的,本发明采用如下技术方案:
[0008]一种基于分布式计算的海量用电信息并行计算系统,用主节点和从节点的框架体系,主节点负责数据的分发和任务的分发,在集群中起领导者的作用,主节点至少具备主、备各一台;从节点主要负责数据的存储和任务的执行,在集群中属于工作者,从节点有多台。
[0009]一种基于分布式计算的海量用电信息并行计算系统,包括:
[0010]用电信息分布式存储模块,是主从结构的,包括用电信息分布式存储模块主节点和若干用电信息分布式存储模块从节点,
[0011]用电信息计算处理引擎,是主从结构的,包括用电信息计算处理引擎主节点和用电信息计算处理引擎从节点,所述用电信息计算处理引擎与用电信息分布式存储模块相互通信;
[0012]分布式管理模块,用来解决分布式应用中遇到的数据管理问题;
[0013]用电信息元数据存储模块,用于存储用电信息数据管理模块所管理数据表的元数据信息;
[0014]用电信息数据管理模块,用于将存储在用电信息分布式存储模块中的结构化的数据文件映射为一张数据库表,并提供类SQL的查询语言,将查询语句自动转换为计算任务提交到用电信息计算处理引擎中运行,数据文件与数据表的映射关系存储在应用关系数据库中。
[0015]访问代理模块,提供高可用性、负载均衡以及基于TCP和HTTP应用的代理,支持虚拟主机;当业务应用发起计算请求时,访问代理能够将业务应用不同协议方式的请求转换为统一的任务请求格式提交用电信息数据管理模块,并实现负载均衡。
[0016]所述用电信息分布式存储模块主节点包括主用单元和备用单元,主用单元和备用单元均存储命名节点,负责数据的分发;
[0017]所述用电信息分布式存储模块从节点包含数据节点,负责数据的存储。
[0018]所述用电信息计算处理引擎主节点包括计算任务分配模块,负责计算任务的分发,包括主用计算任务分配模块和备用计算任务分配模块;
[0019]所述用电信息计算处理引擎从节点包括计算任务执行模块,负责计算任务的执行。
[0020]所述用电信息分布式存储模块主节点上只运行一个命名节点,而在每一个用电信息分布式存储模块从节点上运行一个数据节点。
[0021]所述命名节点在映像文件中存储所有关于文件系统名称空间的信息,即文件系统中每个文件所处的命名空间,管理着整个用电信息分布式存储,以及对文件系统的操作;所述对文件系统的操作包括建立、删除文件和文件夹。
[0022]映像文件和包含所有事务的记录文件将存储在命名节点所在的本地文件系统上。
[0023]映像文件和记录文件也需要复制副本,以防文件损坏或命名节点所在文件系统丢失。
[0024]所述数据节点响应读写请求,还响应创建、删除和复制来自命名节点的块的命令。
[0025]所述数据节点支持一次写入,多次读取;不支持已写入数据的更新操作,但允许在文件尾部添加新的数据。
[0026]所述数据节点上的数据文件以分块形式存储,块大小默认为64MB,出于容错考虑,对块进行复制,默认副本数为3。
[0027]所述计算任务分配模块将接受到的任务分割为多个小的子任务,将分割后的任务分发给用电信息计算处理引擎从节点上的计算任务执行模块执行。
[0028]所述计算任务执行模块会定期向任务分配模块发送心跳,任务分配模块根据接收到心跳判断计算任务执行模块的健康状况。
[0029]所述计算任务执行模块在接收到任务分配模块发来的任务,将任务执行需要的应用请求从用电信息分布式存储模块保存到本地系统;为任务新建一个本地的工作目录,将应用请求的内容执行。
[0030]所述数据管理问题包括:统一命名服务、状态同步服务、集群管理、分布式应用配置项管理等,例如实现自动故障监测和转移。
[0031]一种基于分布式计算的海量用电信息并行计算系统的方法,包括如下步骤:
[0032]步骤(I):计算需要的原始数据以关系表的形式存放在应用关系数据库中,用电信息数据管理模块将关系表从应用关系数据库中取出,利用元数据储存模块的元数据,生成结构化文件,然后以结构化文件的形式存入用电信息分布式存储模块中,再将文件从用电信息分布式存储模块中载入用电信息数据管理模块;用电信息分布式存储模块的命名节点决定是否将文件映射到用电信息数据节点的复制块上,如果需要映射,则将文件映射到复制块,主用节点写入编辑日志,备用节点重做日志;
[0033]步骤(2):业务应用模块通过访问代理以JDBC的方式与用电信息数据管理模块建立连接,并提交类SQL语句实现服务的业务逻辑;用电信息数据管理模块负责将应用提交的类SQL语句转化为计算任务提交给用电信息计算处理引擎,由用电信息计算处理引擎负责分布式计算;计算过程中的临时表和最终结果都存储在用电信息数据管理模块中;
[0034]步骤(3):用电信息处理引擎的计算任务分配模块接收到要计算的作业后,对作业进行初始化,将作业加入调度队列,并由创建任务调度器进行调度;任务调度器首先
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1