数据变化监听方法及装置、电子设备和计算机可读存储介质制造方法及图纸

技术编号:21891788 阅读:17 留言:0更新日期:2019-08-17 14:28
本发明专利技术提出了一种数据变化监听方法及装置、电子设备和计算机可读存储介质,其中,该方法包括:获取铁路客票系统数据库中根据客户端的业务执行信息生成的与所述业务执行信息对应的预写式日志;将所述预写式日志记录的第一数据变更信息转换为SQL格式的第二数据变更信息;通过预设的规则引擎对所述第二数据变更信息进行处理,得到第三数据变更信息;将所述第三数据变更信息发送至监听接收端。通过本发明专利技术的技术方案,采用基于预写式日志的监听方式,避免了对监听铁路客票系统数据库的实际数据文件产生干扰的问题,对监听铁路客票系统数据库的侵入性极小,减小了服务器负载,适用于高并发环境,提升了数据监听的灵活性和实用性。

Data Change Monitoring Method and Device, Electronic Equipment and Computer Readable Storage Media

【技术实现步骤摘要】
数据变化监听方法及装置、电子设备和计算机可读存储介质
本专利技术涉及计算机
,尤其涉及一种数据变化监听方法及装置、电子设备和计算机可读存储介质。
技术介绍
随着铁路建设的发展和铁路服务改革的深入,铁路信息化得到广泛应用,随着12306等系统的运营,中国铁路信息化技术与中国高铁技术一样,已经进入到技术的前沿领域。其中,铁路信息化系统中的餐饮系统、积分系统、人脸服务系统、二维码服务系统、候补系统等多个系统的数据库均依赖于铁路客票系统的数据库提供的数据进行工作。然而,由于不同数据库的数据格式不同,故其他系统的数据库无法直接监听格式不同的铁路客票系统的数据库数据,或只能监听到乱码,影响了整个铁路信息化系统的顺利运行。因此,如何使其他数据库能够顺利监听铁路客票系统的数据库数据,成为目前亟待解决的技术问题。
技术实现思路
本专利技术实施例提供了一种数据变化监听方法及装置、电子设备和计算机可读存储介质,旨在解决相关技术中因数据格式不一致造成的铁路客票系统的数据库数据难以被同步监听的技术问题,能够将数据变更信息转换为数据库高可用的SQL格式,使得不同的数据库均能读取和监听到该数据变更信息。第一方面,本专利技术实施例提供了一种数据变化监听方法,包括:获取铁路客票系统数据库中根据客户端的业务执行信息生成的与所述业务执行信息对应的预写式日志;将所述预写式日志记录的第一数据变更信息转换为SQL格式的第二数据变更信息;通过预设的规则引擎对所述第二数据变更信息进行处理,得到第三数据变更信息;将所述第三数据变更信息发送至监听接收端。在本专利技术上述实施例中,可选地,在所述通过预设的规则引擎对所述第二数据变更信息进行处理的步骤之前,还包括:通过动态库获取包含复制选项的连接字符串;根据所述包含复制选项的连接字符串,为所述预写式日志建立复制服务;通过所述复制服务将所述第二数据变更信息经指定复制接口复制至指定位置。在本专利技术上述实施例中,可选地,所述通过预设的规则引擎对所述第二数据变更信息进行处理,得到第三数据变更信息的步骤,具体包括:按照所述预设的规则引擎中的规则配置信息,生成对应的处理指令;根据所述处理指令,对位于所述指定位置的所述第二数据变更信息进行所述规则配置信息对应的处理。在本专利技术上述实施例中,可选地,所述规则配置信息包括:将预定时间间隔内接收到的所述第二数据变更信息进行合并处理;或者当所述第二数据变更信息的数量达到预定数量时,将所述预定数量的所述第二数据变更信息进行合并处理;或者将所述第二数据变更信息进行多次复制,并将每一个复制结果转换为指定时间格式,以将所述指定时间格式的所述复制结果发送至能够读取所述指定时间格式的所述监听接收端。在本专利技术上述实施例中,可选地,所述将所述第三数据变更信息发送至监听接收端的步骤,具体包括:将所述第三数据变更信息发送至与所述铁路客票系统数据库建立有同步复制服务的备用数据库;和/或将所述第三数据变更信息发送至与所述铁路客票系统数据库的数据传输节点相连接的访问中间件,以供外部终端通过所述访问中间件获取所述第三数据变更信息。第二方面,本专利技术实施例提供了一种数据变化监听装置,包括:日志获取单元,用于获取铁路客票系统数据库中根据客户端的业务执行信息生成的与所述业务执行信息对应的预写式日志;格式转换单元,用于将所述预写式日志记录的第一数据变更信息转换为SQL格式的第二数据变更信息;信息处理单元,用于通过预设的规则引擎对所述第二数据变更信息进行处理,得到第三数据变更信息;信息发送单元,用于将所述第三数据变更信息发送至监听接收端。在本专利技术上述实施例中,可选地,还包括:字符串获取单元,用于在所述信息处理单元通过所述预设的规则引擎对所述第二数据变更信息进行处理之前,通过动态库获取包含复制选项的连接字符串;复制服务建立单元,用于根据所述包含复制选项的连接字符串,为所述预写式日志建立复制服务;信息复制单元,用于通过所述复制服务将所述第二数据变更信息经指定复制接口复制至指定位置。在本专利技术上述实施例中,可选地,所述信息处理单元具体用于:按照所述预设的规则引擎中的规则配置信息,生成对应的处理指令,以及根据所述处理指令,对位于所述指定位置的所述第二数据变更信息进行所述规则配置信息对应的处理。在本专利技术上述实施例中,可选地,所述规则配置信息包括:将预定时间间隔内接收到的所述第二数据变更信息进行合并处理;或者当所述第二数据变更信息的数量达到预定数量时,将所述预定数量的所述第二数据变更信息进行合并处理;或者将所述第二数据变更信息进行多次复制,并将每一个复制结果转换为指定时间格式,以将所述指定时间格式的所述复制结果发送至能够读取所述指定时间格式的所述监听接收端。在本专利技术上述实施例中,可选地,所述信息发送单元用于:将所述第三数据变更信息发送至与所述铁路客票系统数据库建立有同步复制服务的备用数据库;和/或将所述第三数据变更信息发送至与所述铁路客票系统数据库的数据传输节点相连接的访问中间件,以供外部终端通过所述访问中间件获取所述第三数据变更信息。第三方面,本专利技术实施例提供了一种电子设备,包括:至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被设置为用于执行上述第一方面中任一项所述的方法。第四方面,本专利技术实施例提供了一种计算机可读存储介质,存储有计算机可执行指令,所述计算机可执行指令用于执行上述第一方面中任一项所述的方法流程。以上技术方案,针对相关技术中的因数据格式不一致造成的铁路客票系统的数据库数据难以被同步监听的技术问题,提出可获取铁路客票系统数据库中根据客户端的业务执行信息生成的与所述业务执行信息对应的预写式日志,该预写式日志能够在存储层面上表明数据更改内容。其中,客户端的业务执行信息会在铁路客票系统的数据库产生修改动作,预写式日志的核心在于,其数据写入是在数据相应修改动作执行之前进行的,换句话说,数据文件的修改必须在修改动作被预写式日志记录之后才被写入,由此可知,在将修改动作被预写式日志记录之后,铁路客票系统的数据库执行该修改动作,同时,预写式日志即可格式转换并被监听接收端监听的步骤,两者同时进行,提升了铁路客票系统与监听接收端的数据变动同步性能。其中,铁路客票系统的数据库是基于PostgreSQL优化和定制化形成自主化的数据库,PostgreSQL是一个免费的对象-关系数据库服务器(数据库管理系统),它提供了相对其他开放源代码数据库系统和专有系统之外的另一种选择。接着,通过解码器将所述预写式日志记录的第一数据变更信息转换为SQL格式的第二数据变更信息,SQL(结构化查询语言)是高级的非过程化编程语言,允许用户在高层数据结构上工作,它不要求用户指定对数据的存放方法,也不需要用户了解具体的数据存放方式,所以具有完全不同底层结构的不同数据库系统,可以使用相同的结构化查询语言作为数据输入与管理的接口,具有极大的灵活性。故转换为SQL格式的第二数据变更信息能够被其他数据库直接地进行监听,便于将数据变更信息有效同步至监听铁路客票系统数据库的其他数据库中去,降低了监听难度。另外,预写式日志相当于在数据库的实际数据文件以外额外记录了数据变更内容,因此,采用基于预写式日本文档来自技高网...

【技术保护点】
1.一种数据变化监听方法,其特征在于,包括:获取铁路客票系统数据库中根据客户端的业务执行信息生成的与所述业务执行信息对应的预写式日志;将所述预写式日志记录的第一数据变更信息转换为SQL格式的第二数据变更信息;通过预设的规则引擎对所述第二数据变更信息进行处理,得到第三数据变更信息;将所述第三数据变更信息发送至监听接收端。

【技术特征摘要】
1.一种数据变化监听方法,其特征在于,包括:获取铁路客票系统数据库中根据客户端的业务执行信息生成的与所述业务执行信息对应的预写式日志;将所述预写式日志记录的第一数据变更信息转换为SQL格式的第二数据变更信息;通过预设的规则引擎对所述第二数据变更信息进行处理,得到第三数据变更信息;将所述第三数据变更信息发送至监听接收端。2.根据权利要求1所述的数据变化监听方法,其特征在于,在所述通过预设的规则引擎对所述第二数据变更信息进行处理的步骤之前,还包括:通过动态库获取包含复制选项的连接字符串;根据所述包含复制选项的连接字符串,为所述预写式日志建立复制服务;通过所述复制服务将所述第二数据变更信息经指定复制接口复制至指定位置。3.根据权利要求2所述的数据变化监听方法,其特征在于,所述通过预设的规则引擎对所述第二数据变更信息进行处理,得到第三数据变更信息的步骤,具体包括:按照所述预设的规则引擎中的规则配置信息,生成对应的处理指令;根据所述处理指令,对位于所述指定位置的所述第二数据变更信息进行所述规则配置信息对应的处理。4.根据权利要求3所述的数据变化监听方法,其特征在于,所述规则配置信息包括:将预定时间间隔内接收到的所述第二数据变更信息进行合并处理;或者当所述第二数据变更信息的数量达到预定数量时,将所述预定数量的所述第二数据变更信息进行合并处理;或者将所述第二数据变更信息进行多次复制,并将每一个复制结果转换为指定时间格式,以将所述指定时间格式的所述复制结果发送至能够读取所述指定时间格式的所述监听接收端。5.根据权利要求1至4中任一项所述的数据变化监听方法,其特征在于,所述将所述第三数据变更信息发送至监听接收端的步骤,具体包括:将所述第三数据变更信息发送至与所述铁路客票系统数据库建立有同步复制服务...

【专利技术属性】
技术研发人员:朱建生单杏花阎志远戴琳琳李杨吕占民苗凡王智为祝红光李贝贝景辉李涅白张燕峰宋春晓刘文韬李士达胡志鹏张霞王元媛尹伊伊刘强王红爱吕晓艳潘跃梅巧玲李世旺单欣茹王铭鑫李佳星
申请(专利权)人:中国铁道科学研究院集团有限公司中国铁道科学研究院集团有限公司电子计算技术研究所
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1