水电站数据自动比对及同步的方法及系统与流程

文档序号:25107186发布日期:2021-05-18 23:53阅读:166来源:国知局
水电站数据自动比对及同步的方法及系统与流程

1.本发明涉及计算机数据库同步技术领域,具体而言,涉及水电站数据自动比对及同步的方法及系统。


背景技术:

2.水电站计算机监控系统在实际运行维护中,经常需要对数据库、画面、报表、通讯点表等文件进行修改。而这些文件修改完成后,一方面没有相关的修改记录,另一方面需要维护人员手动输入指令逐一同步到每一个节点。如果同步不正确,会导致功能修改不生效,报警不正确或数值显示不正确等问题,严重时甚至控制令错位等事故。不仅工作效率低,而且风险高。同时依据二次安防的要求,计算机监控系统内相应的ftp服务和r login服务等应该进行关闭,使得手动同步文件等维护工作无法实施。
3.由此亟需一种数据库自动比对及同步的方法在保证数据传输安全性以及避免使用电力监控系统安全防护规定禁用的通信手段的前提下,以更高效的方式实现不同节点之间的数据比对及同步功能。


技术实现要素:

4.本发明旨在解决现有技术中数据同步操作复杂,数据文件同步出错率高的问题,提供一种能够保证数据传输安全性且简化数据同步操作步骤以及更低出错率的水电站数据自动比对及同步的方法及系统。
5.本发明的实施例通过以下技术方案实现:水电站数据自动比对及同步的方法,包括如下步骤:
6.获取客户端的节点同步请求,所述请求至少包括映射所述节点与监控系统数据库中某一数据库表之间关系的标识;
7.根据所述标识为所述节点分配同步优先级,并将所述标识映射到相应的服务端的同步队列中进行同步;
8.服务端根据所述标识导出源节点以及一个或多个目标节点在监控系统数据库中对应的数据库表;
9.基于所述数据库表获取所述源节点以及所述目标节点对应的监控系统数据库的元数据;
10.逐条比对所述源节点的元数据以及所述目标节点的元数据,确定两者之间的差异数据;
11.基于所述差异数据中的时间戳信息执行数据同步操作,具体包括:
12.根据所述差异数据,获得时间戳信息并进行时间戳大小比对;
13.根据所述时间戳信息的比对结果,从所述源节点或标节点的元数据中获取待同步数据,并生成补丁脚本;
14.将所述补丁脚本以自定义协议和报文加密的方式发送至所述目标节点或源节点,
基于所述补丁脚本执行数据同步操作。
15.根据一种优选实施方式,所述获取客户端的节点同步请求包括:
16.将所有的可以进行数据同步的节点展示在客户端上供用户选择;
17.读取用户的选择信息,根据所述选择信息在所述可以进行数据同步的节点中确定需要进行数据同步的节点,其中,
18.所述可以进行数据同步的节点为正常运行的节点。
19.根据一种优选实施方式,所述数据同步操作包括:
20.通过自定义协议获取加密过后的补丁脚本并对所述补丁脚本解码处理;
21.验证解码过后的所述补丁脚本的合法性;如合法,则基于解码过后的所述补丁脚本,获取待同步数据对所述源节点或目标节点的原有元数据进行替换;如不合法,则再次触发节点同步请求,直至获取到的补丁脚本为合法信息;
22.对所述源节点的元数据以及所述目标节点的元数据进行二次比对,验证同步的有效性;
23.若比对结果显示一致,则结束数据同步操作;若比对结果显示不一致,则重复上述数据同步操作,直至比对结果显示一致。
24.根据一种优选实施方式,所述服务端根据所述标识导出源节点以及一个或多个目标节点在监控系统数据库中对应的数据库表包括:
25.接收节点同步请求并基于所述标识获取的信息,从服务端下载晚于第一时刻的数据库表,所述第一时刻是所述服务端上一次完成数据同步操作的时刻。
26.根据一种优选实施方式,所述逐条比对所述源节点的元数据以及所述目标节点的元数据,确定两者之间的差异数据包括:
27.对所述源节点的元数据以及所述目标节点的元数据进行逐一比对,当比对结果显示存在差异数据时,将差异数据按照预设格式输出到客户端人机界面。
28.根据一种优选实施方式,若执行数据同步操作后生成新的数据库表,则记录同步的数据,并根据所述同步的数据生成数据同步日志,将数据同步日志按照预设格式输出到客户端人机界面。
29.本发明还提供应用如上述所述的水电站数据自动比对及同步的方法的水电站数据自动比对及同步系统,包括服务端和客户端,所述服务端与所述客户端相连,用以接受并处理数据比对及同步请求,所述服务端包括:
30.请求接收模块,用以从客户端获取节点同步请求,所述请求至少包括映射所述节点与监控系统数据库中某一数据库表之间关系的标识;
31.数据写入模块,其分别与所述请求接收模块和监控系统连接,用以根据所述数据请求信息导出所述监控系统数据库中的对应的数据库表;
32.数据比对模块,其与所述数据写入模块连接,用以逐条比对所述源节点的元数据以及所述目标节点的元数据,确定两者之间的差异数据;
33.第一数据文件写入模块,其与所述数据比对模块连接,用以将将所述补丁脚本以自定义协议和报文加密的方式发送至所述目标节点或源节点;
34.数据同步模块,用以基于所述补丁脚本执行数据同步操作。
35.根据一种优选实施方式,所述客户端包括人机界面和交互模块,
36.所述人机界面分别与所述数据比对模块和数据同步模块连接,用以显示节点选择列表、数据比对结果以及数据同步日志;
37.所述交互模块用以与所述服务端进行信息传送,建立所述客户端与所述服务端之间的tcp连接。
38.根据一种优选实施方式,所述服务端还包括数据备份模块,所述数据备份模块用以将所述目标节点的第二数据文件备份至所述源节点目录下;其中所述人机界面还与数据备份模块连接,用以显示数据备份日志。
39.根据一种优选实施方式,所述系统还包括触发模块,所述触发模块分别与所述数据同步模块和数据比对模块连接,用以触发所述数据同步模块和数据比对模块;
40.其中,所述触发模块包括手动触发模块和自动触发模块,所述手动触发模块用以手动点击比对设置或同步设置;
41.所述自动触发模块用以自动触发所述数据同步模块和数据比对模块。。
42.本发明实施例的技术方案至少具有如下优点和有益效果:与现有技术相比,本发明的水电站数据自动比对及同步的方法及系统可以提高数据比对及同步水平和相关系统运行效率,确保相关系统数据的准确性和一致性,避免因数据不一致带来的报警不正确或数值显示不正确、控制令错位等问题,提高资源实用的有效性;本发明采用私有协议、加密传输、可选通信端口,数据传输安全性更高,能够避免遇到通用工具软件因安全漏洞等,被要求禁用带来的不便。
附图说明
43.图1为本发明水电站数据自动比对及同步的方法的步骤流程图;
44.图2为本发明水电站数据自动比对及同步系统的结构框图。
具体实施方式
45.为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。
46.实施例1
47.参阅图1所示,本发明具体实施方式的水电站数据自动比对及同步的方法,主要包括如下步骤:
48.获取客户端的节点同步请求,所述请求至少包括映射所述节点与监控系统数据库中某一数据库表之间关系的标识;在本实施例中获取节点同步请求的方式为根据客户在客户端上选择的需要同步的节点,维护人员可以从展示在客户端上的可以进行数据同步的节点中选择一个或多个目标节点,其中,可以进行数据同步的节点为正常运行的节点,未运行或节点网络故障的节点在本实施例中不参与数据同步操作。
49.进一步的,在获取节点同步的请求之后,服务端根据所述标识导出源节点以及一个或多个目标节点在监控系统数据库中对应的数据库表;具体包括:接收节点同步请求并基于所述标识获取的信息,从服务端下载晚于第一时刻的数据库表,所述第一时刻是所述
服务端上一次完成数据同步操作的时刻。以使得所获得的数据文件为最新数据文件。
50.进一步的,获取节点同步的请求之后根据所述标识为所述节点分配同步优先级,并将所述标识映射到相应的服务端的同步队列中进行同步,以使得能够支持多个目标节点的数据比对及同步的同时,避免因同时进行造成数据丢失等情况。
51.服务端根据所述标识导出源节点以及一个或多个目标节点在监控系统数据库中对应的数据库表;
52.基于所述数据库表获取所述源节点以及所述目标节点对应的监控系统数据库的元数据;逐条比对所述源节点的元数据以及所述目标节点的元数据,确定两者之间的差异数据;具体包括:对所述源节点的元数据以及所述目标节点的元数据进行逐一比对,当比对结果显示存在差异数据时,将差异数据按照预设格式输出到客户端人机界面。
53.基于所述差异数据中的时间戳信息执行数据同步操作,具体包括:根据所述差异数据,获得时间戳信息并进行时间戳大小比对;根据所述时间戳信息的比对结果,从所述源节点或标节点的元数据中获取待同步数据,并生成补丁脚本;将所述补丁脚本以自定义协议和报文加密的方式发送至所述目标节点或源节点,基于所述补丁脚本执行数据同步操作。
54.具体的,所述数据同步操作包括如下步骤:
55.通过自定义协议获取加密过后的补丁脚本并对所述补丁脚本解码处理;验证解码过后的所述补丁脚本的合法性;如合法,则基于解码过后的所述补丁脚本,获取待同步数据对所述源节点或目标节点的原有元数据进行替换;如不合法,则再次触发节点同步请求,直至获取到的补丁脚本为合法信息;对所述源节点的元数据以及所述目标节点的元数据进行二次比对,验证同步的有效性;若比对结果显示一致,则结束数据同步操作;若比对结果显示不一致,则重复上述数据同步操作,直至比对结果显示一致。
56.除此之外,为了更加直观的展示同步信息,若执行数据同步操作后生成新的数据库表,则记录同步的数据,并根据所述同步的数据生成数据同步日志,将数据同步日志按照预设格式输出到客户端人机界面。可选的,若同步失败,同样将同步失败信息按照预设格式输出到客户端人机界面。
57.本实施例提供的方法还包括:若执行数据同步操作后生成新的数据库表,则记录同步的数据,并根据所述同步的数据生成数据同步日志,将数据同步日志按照预设格式输出到客户端人机界面。
58.参阅图2所示,本发明具体实施方式的数据库自动比对及同步系统,系统采用c/s架构设计,包括服务端和客户端,所述服务端与所述客户端相连,用以接受并处理数据比对及同步请求,用以接受并处理数据比对及同步请求;其中,服务端部署在所有的监控系统上位机节点,服务端负责获取本节点的所有关键数据,例如数据库文件、画面文件、报表文件、通信点表文件等;客户端则部署在进行系统维护操作的节点,通过读取监控系统的节点配置文件,获得系统节点列表。
59.具体的,所述服务端包括:请求接收模块,用以从客户端获取节点同步请求,所述请求至少包括映射所述节点与监控系统数据库中某一数据库表之间关系的标识;数据写入模块,其分别与所述请求接收模块和监控系统连接,用以根据所述数据请求信息导出所述监控系统数据库中的对应的数据库表;数据比对模块,其与所述数据写入模块连接,用以逐
条比对所述源节点的元数据以及所述目标节点的元数据,确定两者之间的差异数据;第一数据文件写入模块,其与所述数据比对模块连接,用以将所述补丁脚本以自定义协议和报文加密的方式发送至所述目标节点或源节点;数据同步模块,用以基于所述补丁脚本执行数据同步操作。在实施例中,系统部署在监控系统目录下,监控系统包括水电站的全厂监控系统、水电机组监控系统、开关站监控系统、公用系统、采暖通风系统、大坝系统、水机系统、机组辅机通讯系统、共用辅机通讯系统以及大坝辅机通讯系统等。
60.在本实施例中,通过私有协议、加密传输、可选通信端口,数据传输安全性更高,能够避免遇到通用工具软件因安全漏洞等,被要求禁用带来的不便;可选的,通信端口可自定义,本实施例默认采用60000和60001。
61.具体的,所述客户端包括人机界面和交互模块,所述人机界面分别与所述数据比对模块和数据同步模块连接,用以显示节点选择列表、数据比对结果以及数据同步日志;所述交互模块用以与所述服务端进行信息传送,建立所述客户端与所述服务端之间的tcp连接。
62.进一步的,所述服务端还包括数据备份模块,所述数据备份模块用以将所述目标节点的第二数据文件备份至所述源节点目录下;其中所述人机界面还与数据备份模块连接,用以显示数据备份日志。
63.进一步的,所述系统还包括触发模块,所述触发模块分别与所述数据同步模块和数据比对模块连接,用以触发所述数据同步模块和数据比对模块;其中,所述触发模块包括手动触发模块和自动触发模块,所述手动触发模块用以手动点击比对设置或同步设置;所述自动触发模块用以自动触发所述数据同步模块和数据比对模块。
64.综上所述,本发明的水电站数据自动比对及同步的方法及系统可以提高数据比对及同步水平和相关系统运行效率,确保相关系统数据的准确性和一致性,避免因数据不一致带来的报警不正确或数值显示不正确、控制令错位等问题,提高资源实用的有效性;本发明采用私有协议、加密传输、可选通信端口,数据传输安全性更高,能够避免遇到通用工具软件因安全漏洞等,被要求禁用带来的不便。
65.以上仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1