一种台账服务数据整合方法和系统与流程

文档序号:29692058发布日期:2022-04-16 12:02阅读:213来源:国知局
一种台账服务数据整合方法和系统与流程

1.本发明涉及大数据技术领域,特别涉及一种台账服务数据整合方法和系统。


背景技术:

2.目前在的微服务架构所产生的台账服务数据散落在各个服务当中,大量无用的信息,需要各个系统对数据加以清洗才能利用,同时拖慢了整个系统的响应时间。现有的大数据方案有着具大的开发人工成本和经济成本同时有着不小的技术难度。


技术实现要素:

3.本发明其中一个发明目的在于提供一种台账服务数据整合方法和系统,所述方法和系统利用canal伪装成mysql的从库,用于监听mysql主服务器的binglog日志,进一步根据rocketmq将监听到的数据输入到数据处理系统中进行统一格式的台账服务数据,从而可以建立规范的统一的台账服务数据集,提高数据的可利用性。
4.本发明另一个发明目的在于提供一种台账服务数据整合方法和系统,所述方法和系统通过数据处理系统根据不同业务规则将台账数据清洗后,在满足不同业务规则的条件下对同一类型业务规则的台账数据以相同的数据格式存储,并提供统一的查询接口,从而便于后续台账数据的分类查询利用。
5.本发明另一个发明目的在于提供一种台账服务数据整合方法和系统,所述方法和系统通过引入apollo分布式配置中心,可以实现集中化管理应用不同环境、不同集群的配置,配置修改后能够实时推送到应用端,并且具备规范的权限管理。
6.为了实现至少一个上述发明目的,本发明进一步提供一种台账服务数据整合方法,所述方法包括如下步骤:
7.开启canal监听台账服务mysql数据库的binglog日志;
8.获取binglog日志信息,将所述binglog日志信息解析后生成json格式的监控数据发送到rocketmq;
9.rocketmq将所述jison格式的监控数据发送给数据整合处理模块进行处理;
10.处理后生成具有标准数据结构的整合数据保存,并建立统一api用于调用整合数据。
11.根据本发明其中一个较佳实施例,所述binglog日志信息解析生成json格式数据的方法包括:
12.获取binglog日志的二进制信息,将所述binglog日志二进制信息发送给canal监听服务,通过所述canal监听服务解析生成json格式数据,canal监听服务判断当前是否存在台账服务链接,若存在链接则将解析后的json格式数据发送给rocketmq。
13.根据本发明另一个较佳实施例,通过canal组件伪装成主数据库的从服务,当所述canal监听服务解析所述binglog日志二进制信息后,根据binglog日志二进制信息判断是否存在更新、删除和新增的台账数据,若存在则将所述更新、删除和新增的台账数据转化为
json格式数据打包发送给rocketmq。
14.根据本发明另一个较佳实施例,所述canal组件和mysql数据库包括独立部署,建立apollo分布式配置中心,所述apollo分布式配置中心集中管理应用环境和集群配置,并将修改后的配置推送到应用端。
15.根据本发明另一个较佳实施例,当检测到存在台账服务链接时,所述rocketmq先启动nameserver集群,并进一步启动broker,当broker启动后向所述nameserver集群发送心跳数据包,其中所述心跳数据包包括ip、port、topicinfo。
16.根据本发明另一个较佳实施例,所述nameserver集群定期扫描broker存活列表,设置心跳阈值,若所述nameserver接收到对应broker的心跳时间间隔大于所述心跳阈值,则在broker存活列表中移除对应broker。
17.根据本发明另一个较佳实施例,在rocketmq将json信息发送给整合处理模块时,获取topic在broker master的存储位置,并根据所述存储位置消息生产者producer和所述nameserver集群中的一个节点建立长连接。
18.根据本发明另一个较佳实施例,当数据整合处理模块在获取到json格式的数据后,根据所述json格式数据的类型对存储的结构化数据进行更新、删除和增加操作。
19.为了实现至少一个上述发明目的,本发明进一步提供一种台账服务数据整合系统,所述系统执行上述一种台账服务数据整合方法。
20.本发明进一步提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序可被处理器执行所述一种台账服务数据整合方法。
附图说明
21.图1显示的是本发明一种台账服务数据整合方法的流程示意图。
具体实施方式
22.以下描述用于揭露本发明以使本领域技术人员能够实现本发明。以下描述中的优选实施例只作为举例,本领域技术人员可以想到其他显而易见的变型。在以下描述中界定的本发明的基本原理可以应用于其他实施方案、变形方案、改进方案、等同方案以及没有背离本发明的精神和范围的其他技术方案。
23.可以理解的是,术语“一”应理解为“至少一”或“一个或多个”,即在一个实施例中,一个元件的数量可以为一个,而在另外的实施例中,该元件的数量可以为多个,术语“一”不能理解为对数量的限制。
24.请结合图1,本发明公开了一种账服务数据整合方法和系统,所述方法主要包括如下步骤:首先需要获取cannl组件,通过所述cannl组件建立cannl监听服务,所述系统的台账服务通过mysql数据库建立,所述cannl监听服务监听mysql数据库的binglog日志,当所述cannl监听服务获取所述binglog日志,解析所述binglog日志后直接将解析数据发送给rocketmq,其中所述rocketmq作为中间件会将解析后的数据发送给数据整合处理模块进行整合处理,并生成统一api用于调用整合处理后的台账数据。
25.具体而言,所述台账数据包括一个mysql主数据库,本发明利用cannl组件封装成一个监听服务,并伪装成生产环境中mysql主数据库的从服务,所述从服务发布同步命令到
所述mysql主数据库时,所述mysql主数据库会将自身的二进制的binglog日志信息发送到通过所述cannl组件建立的cannl监听服务中,所述cannl监听服务获取所述二进制的binglog日志后进行解析,获取binglog日志中的关于台账数据的新增、更新和删除数据,并将所述台账数据的新增、更新和删除数据打包生成json格式数据,并将所述json格式数据发送给rocketmq中间件,所述rocketmq中间件可以将json格式数据发送给数据整合处理模块进行数据整合处理。
26.在本发明其中一个较佳实施例中,所述数据整合处理模块配置有nameserver集群,其中所述nameserver集群之间无任何数据交互,通过所述rocketmq中间件首先启动所述nameserver集群,进一步通过所述rocketmq中间件启动broker,所述broker启动后向每隔一段时间向所述nameserver集群发送心跳包,所述心跳包包括ip、port(端口)、topicinfo(话题信息),所述nameserver集群定期扫描所述broker的存活列表,且所述系统设置心跳阈值,当所述nameserver集群扫描获取对应broker的心跳包的时间间隔大于所述心跳阈值,则从所述broker的存活列表中移除该broker,用于表示该broker下线。
27.所述rocketmq中间件获取需要发送的topic的所在的broker master位置,并将保存要发送topic的所在的broker master和nameserver集群中的任意一个节点设备建立长连接。当消费端consumer的消费信息连接到rocketmq时,rocketmq将所述json格式数据发送给消费端服务中,通过所述消费端服务对所述json格式数据进行数据整合处理,将整合处理后的json格式数据以规范的数据结构保存,并生成统一的api调用接口实现统一的数据调用处理。
28.值得一提的是,当系统接收到所述rocketmq中间件推送的json数据时,所述系统自动解析所述json数据,并根据所述json数据的类型执行删除、新增或更新操作,举例来说,需要执行的是更新金额10,解析后所述json数据的type等于update,且amount等于10,系统根据解析后type等于update执行更新操作,进一步根据amount等于10,将金额更新为10.
29.本发明进一步获取多个服务系统中获取对应的数据,比如获取报销系统中的发票数据,并获取发明数据中的发票号码、开票日期、金额,丢弃发票备注信息,并且本发明进一步整合其他服务系统,比如费用支付系统、人员休假管理系统等,举例来说,发票和费用支出相关,当获取发票号码时,需要和对应的费用编号相关联整合,并且所述费用又和对应的报销单据相关,因此本发明将费用编号和报销单据进行整合处理,并且根据所述报销单据将报销公司、报销人员、报销部门和报销事由通过结构化数据进行整合。
30.当系统接收到rocketmq中间件推送的json数据后,根据json数据将整合后的结构化数据进行删除、新增或更新操作,其中删除可以是将结构化数据中的部分数据删除或将单个结构化数据全部删除,新增为添加新的单个结构化数据。更新操作为将结构化数据中的内容进行变更。
31.在完成台账服务中多服务系统的数据整合后建立一个独立的api调用接口,其中所述api调用接口可以实现所述结构化数据的直接调用,因此无需针对不同服务系统分别配置不同的api调用,从而可以提高数据调用的效率,减小开发成本。
32.特别地,根据本发明公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读
介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分从网络上被下载和安装,和/或从可拆卸介质被安装。在该计算机程序被中央处理单元(cpu)执行时,执行本技术的方法中限定的上述功能。需要说明的是,本技术上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是但不限于电、磁、光、电磁、红外线段、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线段的电连接、便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本技术中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本技术中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线段、电线段、光缆、rf等等,或者上述的任意合适的组合。
33.附图中的流程图和框图,图示了按照本发明各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
34.本领域的技术人员应理解,上述描述及附图中所示的本发明的实施例只作为举例而并不限制本发明,本发明的目的已经完整并有效地实现,本发明的功能及结构原理已在实施例中展示和说明,在没有背离所述原理下,本发明的实施方式可以有任何变形或修改。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1