CN109408565B - 一种数据同步交互方法、系统和数据交互平台 - Google Patents
一种数据同步交互方法、系统和数据交互平台 Download PDFInfo
- Publication number
- CN109408565B CN109408565B CN201811219823.8A CN201811219823A CN109408565B CN 109408565 B CN109408565 B CN 109408565B CN 201811219823 A CN201811219823 A CN 201811219823A CN 109408565 B CN109408565 B CN 109408565B
- Authority
- CN
- China
- Prior art keywords
- data
- service
- changed
- monitored
- field name
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 230000003993 interaction Effects 0.000 title claims abstract description 88
- 238000000034 method Methods 0.000 title claims abstract description 25
- 230000001360 synchronised effect Effects 0.000 title abstract description 16
- 238000012544 monitoring process Methods 0.000 claims abstract description 95
- 238000012545 processing Methods 0.000 claims description 28
- 230000008859 change Effects 0.000 claims description 18
- 238000004891 communication Methods 0.000 claims description 13
- 239000002184 metal Substances 0.000 description 11
- 230000005540 biological transmission Effects 0.000 description 8
- 238000011161 development Methods 0.000 description 5
- 230000009471 action Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004083 survival effect Effects 0.000 description 1
Images
Abstract
本发明提供了一种数据同步交互方法、系统和数据交互平台,应用于数据交互平台的方法,包括:预先确定用户指定的至少一个外部的待监控业务系统;针对每一个所述待监控业务系统,执行:监控所述待监控业务系统中的至少一个数据表中的数据是否发生变更;如果是,针对每一个所述数据表,确定所述数据表中变更后的所述数据对应的字段名;从所述待监控业务系统存储的源数据中,确定所述字段名对应的至少一个外部的目标业务系统;从所述数据表中获取变更后的所述数据;将获取的所述数据发送给每一个所述目标业务系统,以使所述目标业务系统存储接收到的所述数据。本方案能够降低不同系统之间数据交互的管理难度。
Description
技术领域
本发明涉及计算机技术领域,特别涉及一种数据同步交互方法、系统和数据交互平台。
背景技术
随着互联网、云计算、大数据等新技术的飞速发展,世界已进入大数据时代。数据对于企业的生存和发展发挥着至关重要的作用,不同业务系统之间如何进行数据交互已成为企业关注的重点。
目前,不同业务系统之间的数据同步交互,大多需要开发人员在各自业务系统内,针对不同的业务进行不同的接口开发,利用开发的接口完成数据交互。
通过上述描述可见,现有技术的数据同步交互需要开发接口实现,而接口开发工作量往往较大,从而导致不同系统之间数据交互的管理难度大。
发明内容
本发明实施例提供了一种数据同步交互方法、系统和数据交互平台,能够降低不同系统之间数据交互的管理难度。
第一方面,本发明实施例提供了一种数据同步交互方法,应用于数据交互平台,预先确定用户指定的至少一个外部的待监控业务系统,包括:
针对每一个所述待监控业务系统,执行:
监控所述待监控业务系统中的至少一个数据表中的数据是否发生变更;
如果是,针对每一个所述数据表,确定所述数据表中变更后的所述数据对应的字段名;
从所述待监控业务系统存储的源数据中,确定所述字段名对应的至少一个外部的目标业务系统;
从所述数据表中获取变更后的所述数据;
将获取的所述数据发送给每一个所述目标业务系统,以使所述目标业务系统存储接收到的所述数据。
优选地,
在所述从所述数据表中获取变更后的所述数据之后,在所述将获取的所述数据发送给每一个所述目标业务系统之前,进一步包括:
确定所述源数据中是否存在与所述字段名相关联的至少一个业务表;
如果是,获取所述至少一个业务表;
所述将获取的所述数据发送给每一个所述目标业务系统,包括:
将获取的所述数据和所述至少一个业务表发送给每一个所述目标业务系统。
优选地,
在所述获取所述至少一个业务表之后,在所述将获取的所述数据和所述至少一个业务表发送给每一个所述目标业务系统之前,进一步包括:
将获取的所述数据转换为Avro模式的第一数据;
将所述至少一个业务表转换为Avro模式的第二数据;
所述将获取的所述数据和所述至少一个业务表发送给每一个所述目标业务系统,包括:
将所述第一数据和所述第二数据发送给每一个所述目标业务系统。
优选地,
在所述确定所述数据表中变更后的所述数据对应的字段名之后,在所述从所述待监控业务系统存储的源数据中,确定所述字段名对应的至少一个外部的目标业务系统之前,进一步包括:
配置第一监控sql语句;
所述从所述待监控业务系统存储的源数据中,确定所述字段名对应的至少一个外部的目标业务系统,包括:
利用所述第一监控sql语句,从所述待监控业务系统存储的源数据中,确定所述字段名对应的至少一个外部的目标业务系统;
所述从所述数据表中获取变更后的所述数据,包括:
利用所述第一监控sql语句,从所述数据表中获取变更后的所述数据;
所述将获取的所述数据转换为Avro模式的第一数据,包括:
利用所述第一监控sql语句,将获取的所述数据转换为Avro模式的第一数据。
优选地,
在所述确定所述数据表中变更后的所述数据对应的字段名之后,在所述确定所述源数据中是否存在与所述字段名相关联的至少一个业务表之前,进一步包括:
配置第二监控sql语句;
所述确定所述源数据中是否存在与所述字段名相关联的至少一个业务表,如果是,获取所述至少一个业务表,包括:
利用所述第二监控sql语句,确定所述源数据中是否存在与所述字段名相关联的至少一个业务表;
如果是,利用所述第二监控sql语句,获取所述至少一个业务表;
所述将所述至少一个业务表转换为Avro模式的第二数据,包括:
利用所述第二监控sql语句,将所述至少一个业务表转换为Avro模式的第二数据。
优选地,
在所述将所述至少一个业务表转换为Avro模式的第二数据之后,在所述将所述第一数据和所述第二数据发送给每一个所述目标业务系统之前,进一步包括:
针对每一个所述业务表,确定所述源数据中是否存在与所述业务表相关联的至少一个附件;
如果是,获取所述至少一个附件;
所述将所述第一数据和所述第二数据发送给每一个所述目标业务系统,包括:
将所述第一数据、所述第二数据和所述至少一个附件发送给每一个所述目标业务系统。
优选地,
所述监控所述待监控业务系统中的至少一个数据表中的数据是否发生变更,如果是,针对每一个所述数据表,确定所述数据表中变更后的所述数据对应的字段名,包括:
按照预设的监控时长,确定所述待监控业务系统中的预设数据变化列表中,是否新增至少一个数据表标识;
如果是,从所述待监控业务系统存储的源数据中,分别获取每一个所述数据表标识对应的数据表;
针对每一个所述数据表,执行:
从所述预设数据变化列表中,获取所述数据表中变更后的所述数据对应的字段名。
第二方面,本发明实施例提供了一种数据交互平台,包括:
监控单元,用于预先确定用户指定的至少一个外部的待监控业务系统;针对确定的每一个所述待监控业务系统,执行:监控所述待监控业务系统中的至少一个数据表中的数据是否发生变更;
处理单元,用于在所述监控单元监控到所述至少一个数据表中的数据发生变更时,针对每一个所述数据表,确定所述数据表中变更后的所述数据对应的字段名;从所述待监控业务系统存储的源数据中,确定所述字段名对应的至少一个外部的目标业务系统;从所述数据表中获取变更后的所述数据;
通信单元,用于将所述处理单元获取的所述数据发送给每一个所述目标业务系统,以使所述目标业务系统存储接收到的所述数据。
优选地,
所述处理单元,进一步用于确定所述源数据中是否存在与所述字段名相关联的至少一个业务表;如果是,获取所述至少一个业务表;
所述通信单元,进一步用于将所述处理单元获取的所述数据和所述至少一个业务表发送给每一个所述目标业务系统。
优选地,
所述处理单元,进一步用于将获取的所述数据转换为Avro模式的第一数据;将所述至少一个业务表转换为Avro模式的第二数据;
所述通信单元,用于将所述第一数据和所述第二数据发送给每一个所述目标业务系统。
优选地,
所述处理单元,进一步用于配置第一监控sql语句;利用所述第一监控sql语句,从所述待监控业务系统存储的源数据中,确定所述字段名对应的至少一个外部的目标业务系统;利用所述第一监控sql语句,从所述数据表中获取变更后的所述数据;利用所述第一监控sql语句,将获取的所述数据转换为Avro模式的第一数据。
优选地,
所述处理单元,进一步用于配置第二监控sql语句;利用所述第二监控sql语句,确定所述源数据中是否存在与所述字段名相关联的至少一个业务表;如果是,利用所述第二监控sql语句,获取所述至少一个业务表;利用所述第二监控sql语句,将所述至少一个业务表转换为Avro模式的第二数据。
优选地,
所述处理单元,进一步用于针对每一个所述业务表,确定所述源数据中是否存在与所述业务表相关联的至少一个附件;如果是,获取所述至少一个附件;
所述通信单元,用于将所述第一数据、所述第二数据和所述至少一个附件发送给每一个所述目标业务系统。
第三方面,本发明提供了一种数据同步交互系统,包括:至少一个第二方面中任一所述数据交互平台和至少两个业务系统;
所述至少两个业务系统中的待监控业务系统,用于存储源数据;
所述至少两个业务系统中的目标业务系统,用于接收所述数据交互平台发送的数据,并存储所述数据。
在本发明实施例中,通过监控预先确定的至少一个外部的待监控业务系统中的至少一个数据表,可以确定各个数据表中的数据是否发生变更,可以在监控到至少一个数据表中的数据发生变更时,根据变更后的数据所对应的字段名,可以从确定的至少一个外部的待监控业务系统存储的源数据中,确定其对应的至少一个外部的目标业务系统,以确定变更后的数据的去向,再将变更后的数据发送给确定的每一个目标业务系统,各个目标业务系统即可在接收到变更后的数据后,存储该数据,完成数据同步交互工作,而无需通过接口实现,因此可以降低开发人员的开发接口的工作,降低不同系统之间数据交互的管理难度。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一实施例提供的一种数据同步交互方法的流程图;
图2是本发明一实施例提供的一种数据交互平台的结构示意图;
图3是本发明一实施例提供的一种数据同步交互系统的结构示意图;
图4是本发明一实施例提供的另一种数据同步交互系统的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,本发明实施例提供了一种数据同步交互方法,应用于数据交互平台,包括:
步骤101:预先确定用户指定的至少一个外部的待监控业务系统;
步骤102:针对每一个所述待监控业务系统,执行:监控所述待监控业务系统中的至少一个数据表中的数据是否发生变更;
步骤103:如果是,针对每一个所述数据表,确定所述数据表中变更后的所述数据对应的字段名;
步骤104:从所述待监控业务系统存储的源数据中,确定所述字段名对应的至少一个外部的目标业务系统;
步骤105:从所述数据表中获取变更后的所述数据;
步骤106:将获取的所述数据发送给每一个所述目标业务系统,以使所述目标业务系统存储接收到的所述数据。
在本发明实施例中,通过监控预先确定的至少一个外部的待监控业务系统中的至少一个数据表,可以确定各个数据表中的数据是否发生变更,可以在监控到至少一个数据表中的数据发生变更时,根据变更后的数据所对应的字段名,可以从确定的至少一个外部的待监控业务系统存储的源数据中,确定其对应的至少一个外部的目标业务系统,以确定变更后的数据的去向,再将变更后的数据发送给确定的每一个目标业务系统,各个目标业务系统即可在接收到变更后的数据后,存储该数据,完成数据同步交互工作,而无需通过接口实现,因此可以降低开发人员的开发接口的工作,降低不同系统之间数据交互的管理难度。
需要说明的是,获取的变更后的数据,可以包括非结构化数据和结构化数据。
在本发明一实施例中,在所述从所述数据表中获取变更后的所述数据之后,在所述将获取的所述数据发送给每一个所述目标业务系统之前,进一步包括:
确定所述源数据中是否存在与所述字段名相关联的至少一个业务表;
如果是,获取所述至少一个业务表;
所述将获取的所述数据发送给每一个所述目标业务系统,包括:
将获取的所述数据和所述至少一个业务表发送给每一个所述目标业务系统。
在本发明实施例中,在获取到变更后的数据后,还需要从待监控业务系统存储的源数据中,确定是否与变更后的数据对应的字段名相关联的业务表,如果存在,获取相关联的业务表,将获取的业务表和获取的变更后的数据一同发送给每一个目标业务系统,这样各个目标业务系统在接收到业务表和数据后,可以将与接收到的信息对应的原始信息替换为接收到的信息,以使存储的信息与待监控业务系统中的变更后的数据同步。
在本发明一实施例中,在所述获取所述至少一个业务表之后,在所述将获取的所述数据和所述至少一个业务表发送给每一个所述目标业务系统之前,进一步包括:
将获取的所述数据转换为Avro模式的第一数据;
将所述至少一个业务表转换为Avro模式的第二数据;
所述将获取的所述数据和所述至少一个业务表发送给每一个所述目标业务系统,包括:
将所述第一数据和所述第二数据发送给每一个所述目标业务系统。
在本发明实施例中,将获取的数据和各个业务表分别转换为对应的Avro模式的数据,再将转换后的数据发送给每一个目标业务系统,能够提高数据传输过程中的安全性。
在本发明一实施例中,在所述确定所述数据表中变更后的所述数据对应的字段名之后,在所述从所述待监控业务系统存储的源数据中,确定所述字段名对应的至少一个外部的目标业务系统之前,进一步包括:
配置第一监控sql语句;
所述从所述待监控业务系统存储的源数据中,确定所述字段名对应的至少一个外部的目标业务系统,包括:
利用所述第一监控sql语句,从所述待监控业务系统存储的源数据中,确定所述字段名对应的至少一个外部的目标业务系统;
所述从所述数据表中获取变更后的所述数据,包括:
利用所述第一监控sql语句,从所述数据表中获取变更后的所述数据;
所述将获取的所述数据转换为Avro模式的第一数据,包括:
利用所述第一监控sql语句,将获取的所述数据转换为Avro模式的第一数据。
在本发明实施例中,通过配置用于确定变更后的数据的去向信息和转换变更后的数据的第一监控sql语句,可以利用第一监控sql语句确定字段名对应的外部目标业务系统,即变更后的数据的去向信息,再将变更后的数据转换为Avro模式的第一数据,以提高第一数据传输过程中的安全性。
在本发明一实施例中,在所述确定所述数据表中变更后的所述数据对应的字段名之后,在所述确定所述源数据中是否存在与所述字段名相关联的至少一个业务表之前,进一步包括:
配置第二监控sql语句;
所述确定所述源数据中是否存在与所述字段名相关联的至少一个业务表,如果是,获取所述至少一个业务表,包括:
利用所述第二监控sql语句,确定所述源数据中是否存在与所述字段名相关联的至少一个业务表;
如果是,利用所述第二监控sql语句,获取所述至少一个业务表;
所述将所述至少一个业务表转换为Avro模式的第二数据,包括:
利用所述第二监控sql语句,将所述至少一个业务表转换为Avro模式的第二数据。
在本发明实施例中,通过配置用于确定与变更后的数据相关联的业务表和转换相关联的业务表的第二监控sql语句,可以从待监控业务系统存储的源数据中,确定与变更后的数据所对应的字段名相关联的业务表,再将相关联的业务表转换为Avro模式的第二数据,以提高第二数据传输过程中的安全性。
在本发明一实施例中,在所述将所述至少一个业务表转换为Avro模式的第二数据之后,在所述将所述第一数据和所述第二数据发送给每一个所述目标业务系统之前,进一步包括:
针对每一个所述业务表,确定所述源数据中是否存在与所述业务表相关联的至少一个附件;
如果是,获取所述至少一个附件;
所述将所述第一数据和所述第二数据发送给每一个所述目标业务系统,包括:
将所述第一数据、所述第二数据和所述至少一个附件发送给每一个所述目标业务系统。
在本发明实施例中,获取的业务表可能存在相关联的附件,所有在确定业务表存在相关联的附件后,可以通过获取附件的存储路径,通过数据交互平台的文件传输协议FTP处理器利用该存储路径获取该附件,再将第一数据、第二数据、以及获取的附件发送给各个目标业务系统,完成数据交互。而在确定业务表不存在相关联的附件时,可以通过数据交互平台的用于处理数据的数据处理器,第一数据和第二数据发送给每一个目标业务系统,以完成数据同步交互。
在本发明一实施例中,所述监控所述待监控业务系统中的至少一个数据表中的数据是否发生变更,如果是,针对每一个所述数据表,确定所述数据表中变更后的所述数据对应的字段名,包括:
按照预设的监控时长,确定所述待监控业务系统中的预设数据变化列表中,是否新增至少一个数据表标识;
如果是,从所述待监控业务系统存储的源数据中,分别获取每一个所述数据表标识对应的数据表;
针对每一个所述数据表,执行:
从所述预设数据变化列表中,获取所述数据表中变更后的所述数据对应的字段名。
在本发明实施例中,在监控外部待监控业务系统中的数据表时,需要按照预设的监控时长,确定各个待监控业务系统中的预设数据变化列表中的信息是否有变更,如果是,则可以确定待监控业务系统中的数据表中的数据有变更,从预设数据变化列表中获取新增的数据表的标识和变更后的数据对应的字段名,即可根据获取的信息,获取变更后的数据以及该数据的去向信息。
可以理解的是,数据交互平台还可以自动记录、索引对于数据流的每个操作日志,并可以把可用的跟踪数据作为对象发送给各个待监控业务系统,方便后期运维。
综上可见,通过数据交互平台将预先确定的待监控业务系统中变更的数据同步给对应的目标业务系统,可以实现不同业务系统之间的数据交互,确保各个目标业务系统的正常运行,而无需通过设置对应的接口完成数据交互,因此可以降低相关运维人员手动操作的工作量和开发人员的开发工作,降低不同系统之间数据交互的管理难度,还可以降低人为出错的风险,增强后期的可扩展,并且数据交互平台还与各个业务系统解耦。
如图2所示,本发明实施例提供了一种数据交互平台,包括:
监控单元201,用于预先确定用户指定的至少一个外部的待监控业务系统;针对确定的每一个所述待监控业务系统,执行:监控所述待监控业务系统中的至少一个数据表中的数据是否发生变更;
处理单元202,用于在所述监控单元201监控到所述至少一个数据表中的数据发生变更时,针对每一个所述数据表,确定所述数据表中变更后的所述数据对应的字段名;从所述待监控业务系统存储的源数据中,确定所述字段名对应的至少一个外部的目标业务系统;从所述数据表中获取变更后的所述数据;
通信单元203,用于将所述处理单元202获取的所述数据发送给每一个所述目标业务系统,以使所述目标业务系统存储接收到的所述数据。
在本发明实施例中,通过监控单元监控预先确定的至少一个外部的待监控业务系统中的至少一个数据表,可以确定各个数据表中的数据是否发生变更,可以在监控到至少一个数据表中的数据发生变更时,处理单元根据变更后的数据所对应的字段名,可以从确定的至少一个外部的待监控业务系统存储的源数据中,确定其对应的至少一个外部的目标业务系统,以确定变更后的数据的去向,再通过通信单元将变更后的数据发送给确定的每一个目标业务系统,各个目标业务系统即可在接收到变更后的数据后,存储该数据,完成数据同步交互工作,而无需通过接口实现,因此可以降低开发人员的开发接口的工作,降低不同系统之间数据交互的管理难度。
在本发明一实施例中,所述处理单元,进一步用于确定所述源数据中是否存在与所述字段名相关联的至少一个业务表;如果是,获取所述至少一个业务表;
所述通信单元,进一步用于将所述处理单元获取的所述数据和所述至少一个业务表发送给每一个所述目标业务系统。
在本发明一实施例中,所述处理单元,进一步用于将获取的所述数据转换为Avro模式的第一数据;将所述至少一个业务表转换为Avro模式的第二数据;
所述通信单元,用于将所述第一数据和所述第二数据发送给每一个所述目标业务系统。
在本发明一实施例中,所述处理单元,进一步用于配置第一监控sql语句;利用所述第一监控sql语句,从所述待监控业务系统存储的源数据中,确定所述字段名对应的至少一个外部的目标业务系统;利用所述第一监控sql语句,从所述数据表中获取变更后的所述数据;利用所述第一监控sql语句,将获取的所述数据转换为Avro模式的第一数据。
在本发明一实施例中,所述处理单元,进一步用于配置第二监控sql语句;利用所述第二监控sql语句,确定所述源数据中是否存在与所述字段名相关联的至少一个业务表;如果是,利用所述第二监控sql语句,获取所述至少一个业务表;利用所述第二监控sql语句,将所述至少一个业务表转换为Avro模式的第二数据。
在本发明一实施例中,所述处理单元,进一步用于针对每一个所述业务表,确定所述源数据中是否存在与所述业务表相关联的至少一个附件;如果是,获取所述至少一个附件;
所述通信单元,用于将所述第一数据、所述第二数据和所述至少一个附件发送给每一个所述目标业务系统。
如图3所示,本发明实施例提供了一种数据同步交互系统,包括:至少一个图2中任一所述数据交互平台301和至少两个业务系统302;
所述至少两个业务系统302中的待监控业务系统,用于存储源数据;
所述至少两个业务系统302中的目标业务系统,用于接收所述数据交互平台发送的数据,并存储所述数据。
在本发明实施例中,通过监控预先确定的至少一个外部的待监控业务系统中的至少一个数据表,可以确定各个数据表中的数据是否发生变更,可以在监控到至少一个数据表中的数据发生变更时,根据变更后的数据所对应的字段名,可以从确定的至少一个外部的待监控业务系统存储的源数据中,确定其对应的至少一个外部的目标业务系统,以确定变更后的数据的去向,再将变更后的数据发送给确定的每一个目标业务系统,各个目标业务系统即可在接收到变更后的数据后,存储该数据,完成数据同步交互工作,而无需通过接口实现,因此可以降低开发人员的开发接口的工作,降低不同系统之间数据交互的管理难度。
为了更加清楚的说明本发明的技术方案及优点,下面以用户指定的待监控业务系统Y和数据交互平台Q为例,对本发明实施例提供的一种数据同步交互系统进行详细说明,如图4所示,具体可以包括以下步骤:
步骤401:数据交互平台Q按照预设的监控时长,确定待监控业务系统Y中的预设数据变化列表中,是否新增至少一个数据表标识。
具体地,数据交互平台Q与待监控业务系统Y相连,并按照预设的确定时长(例如1min),确定待监控业务系统Y中的预设数据变化列表中的数据是否发生变更,如果监控到预设数据变化列表中的数据发生变更,即是否新增数据表的标识。
步骤402:数据交互平台Q在确定预设数据变化列表中新增至少一个数据表的标识时,从待监控业务系统Y存储的源数据中,分别获取每一个数据表标识对应的数据表。
具体地,数据交互平台Q在监控到预设数据变化列表中的数据发生变更时,需要根据预设数据变化列表中新增的数据表标识,从待监控业务系统Y存储的源数据中获取数据表标识对应的数据表,并从预设数据变化列表中获取每一个数据表标识对应的字段名,即每一个数据表中变更后的数据对应的字段名,以使根据字段名,从对应的数据表中获取变更后的数据。
步骤403:数据交互平台Q针对每一个数据表,执行:从预设数据变化列表中,获取数据表中变更后的数据对应的字段名。
步骤404:数据交互平台Q配置第一监控sql语句。
步骤405:数据交互平台Q利用第一监控sql语句,从待监控业务系统存储的源数据中,确定字段名对应的至少一个目标业务系统。
步骤406:数据交互平台Q利用第一监控sql语句,从数据表中获取变更后的数据。
步骤407:数据交互平台Q利用第一监控sql语句,将获取的数据转换为Avro模式的第一数据。
具体地,数据交互平台Q通过配置用于确定变更后的数据去向和转换变更后的数据的第一监控sql语句,可以确定利用第一监控sql语句确定字段名对应的目标业务系统,即变更后的数据的去向信息,再将变更后的数据转换为Avro模式的第一数据,以提高第一数据传输过程中的安全性。
步骤408:数据交互平台Q配置第二监控sql语句。
步骤409:数据交互平台Q利用第二监控sql语句,确定源数据中是否存在与字段名相关联的至少一个业务表。
步骤410:数据交互平台Q在确定源数据中存在与字段名相关联的至少一个业务表时,利用第二监控sql语句获取至少一个业务表。
步骤411:数据交互平台Q利用第二监控sql语句,将至少一个业务表转换为Avro模式的第二数据。
具体地,通过配置用于确定与变更后的数据相关联的业务表和转换相关联的业务表的第二监控sql语句,可以确定字段名相关联的业务表,再将相关联的业务表转换为Avro模式的第二数据,以提高第二数据传输过程中的安全性。
步骤412:针对每一个业务表,数据交互平台Q确定源数据中是否存在与业务表相关联的至少一个附件。
步骤413:数据交互平台Q在确定源数据中存在与业务表相关联的至少一个附件时,获取至少一个附件。
步骤414:数据交互平台Q将第一数据、第二数据和至少一个附件发送给每一个目标业务系统。
具体地,在将业务表和获取的变更后的数据转换为对应的Avro模式的数据后,还需要确定待监控业务系统Y中的源数据中是否存在相关联的附件,如果存在相关联的附件,则从源数据中获取附件的存储路径,再通过数据交互平台Q的FTP处理器,利用存储路径获取对应的附件,再将转换后的Avro模式的数据和获取的附件发送给每一个目标业务系统。而在确定业务表不存在相关联的附件时,可以通过数据交互平台Q用于处理数据的数据处理器,将转换后的Avro模式的数据发送给每一个目标业务系统。
本发明各个实施例至少具有如下有益效果:
1、在本发明一实施例中,通过监控预先确定的至少一个外部的待监控业务系统中的至少一个数据表,可以确定各个数据表中的数据是否发生变更,可以在监控到至少一个数据表中的数据发生变更时,根据变更后的数据所对应的字段名,可以从确定的至少一个外部的待监控业务系统存储的源数据中,确定其对应的至少一个外部的目标业务系统,以确定变更后的数据的去向,再将变更后的数据发送给确定的每一个目标业务系统,各个目标业务系统即可在接收到变更后的数据后,存储该数据,完成数据同步交互工作,而无需通过接口实现,因此可以降低开发人员的开发接口的工作,降低不同系统之间数据交互的管理难度。
2、在本发明一实施例中,在获取到变更后的数据后,还需要从待监控业务系统存储的源数据中,确定是否与变更后的数据对应的字段名相关联的业务表,如果存在,获取相关联的业务表,将获取的业务表和获取的变更后的数据一同发送给每一个目标业务系统,这样各个目标业务系统在接收到业务表和数据后,可以将与接收到的信息对应的原始信息替换为接收到的信息,以使存储的信息与待监控业务系统中的变更后的数据同步。
3、在本发明一实施例中,将获取的数据和各个业务表分别转换为对应的Avro模式的数据,再将转换后的数据发送给每一个目标业务系统,能够提高数据传输过程中的安全性。
4、在本发明一实施例中,通过配置用于确定变更后的数据的去向信息和转换变更后的数据的第一监控sql语句,可以利用第一监控sql语句确定字段名对应的外部目标业务系统,即变更后的数据的去向信息,再将变更后的数据转换为Avro模式的第一数据,以提高第一数据传输过程中的安全性。同样地,通过配置用于确定与变更后的数据相关联的业务表和转换相关联的业务表的第二监控sql语句,可以从待监控业务系统存储的源数据中,确定与变更后的数据所对应的字段名相关联的业务表,再将相关联的业务表转换为Avro模式的第二数据,以提高第二数据传输过程中的安全性。
5、在本发明一实施例中,获取的业务表可能存在相关联的附件,所有在确定业务表存在相关联的附件后,可以通过获取附件的存储路径,通过数据交互平台的文件传输协议FTP处理器利用该存储路径获取该附件,再将第一数据、第二数据、以及获取的附件发送给各个目标业务系统,完成数据交互。而在确定业务表不存在相关联的附件时,可以通过数据交互平台的用于处理数据的数据处理器,第一数据和第二数据发送给每一个目标业务系统,以完成数据同步交互。
6、在本发明一实施例中,在监控外部待监控业务系统中的数据表时,需要按照预设的监控时长,确定各个待监控业务系统中的预设数据变化列表中的信息是否有变更,如果是,则可以确定待监控业务系统中的数据表中的数据有变更,从预设数据变化列表中获取新增的数据表的标识和变更后的数据对应的字段名,即可根据获取的信息,获取变更后的数据以及该数据的去向信息。
需要说明的是,在本文中,诸如第一和第二之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个······”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同因素。
最后需要说明的是:以上所述仅为本发明的较佳实施例,仅用于说明本发明的技术方案,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所做的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
Claims (3)
1.一种数据同步交互方法,其特征在于,应用于数据交互平台,预先确定用户指定的至少一个外部的待监控业务系统,包括:
针对每一个所述待监控业务系统,执行:
监控所述待监控业务系统中的至少一个数据表中的数据是否发生变更;
如果是,针对每一个所述数据表,确定所述数据表中变更后的所述数据对应的字段名;
从所述待监控业务系统存储的源数据中,确定所述字段名对应的至少一个外部的目标业务系统;
从所述数据表中获取变更后的所述数据;
将获取的所述数据发送给每一个所述目标业务系统,以使所述目标业务系统存储接收到的所述数据;
在所述从所述数据表中获取变更后的所述数据之后,在所述将获取的所述数据发送给每一个所述目标业务系统之前,进一步包括:
确定所述源数据中是否存在与所述字段名相关联的至少一个业务表;
如果是,获取所述至少一个业务表;
所述将获取的所述数据发送给每一个所述目标业务系统,包括:
将获取的所述数据和所述至少一个业务表发送给每一个所述目标业务系统;
在所述获取所述至少一个业务表之后,在所述将获取的所述数据和所述至少一个业务表发送给每一个所述目标业务系统之前,进一步包括:
将获取的所述数据转换为Avro模式的第一数据;
将所述至少一个业务表转换为Avro模式的第二数据;
所述将获取的所述数据和所述至少一个业务表发送给每一个所述目标业务系统,包括:
将所述第一数据和所述第二数据发送给每一个所述目标业务系统;
在所述确定所述数据表中变更后的所述数据对应的字段名之后,在所述从所述待监控业务系统存储的源数据中,确定所述字段名对应的至少一个外部的目标业务系统之前,进一步包括:
配置第一监控sql语句;
所述从所述待监控业务系统存储的源数据中,确定所述字段名对应的至少一个外部的目标业务系统,包括:
利用所述第一监控sql语句,从所述待监控业务系统存储的源数据中,确定所述字段名对应的至少一个外部的目标业务系统;
所述从所述数据表中获取变更后的所述数据,包括:
利用所述第一监控sql语句,从所述数据表中获取变更后的所述数据;
所述将获取的所述数据转换为Avro模式的第一数据,包括:
利用所述第一监控sql语句,将获取的所述数据转换为Avro模式的第一数据;
和/或,
在所述确定所述数据表中变更后的所述数据对应的字段名之后,在所述确定所述源数据中是否存在与所述字段名相关联的至少一个业务表之前,进一步包括:
配置第二监控sql语句;
所述确定所述源数据中是否存在与所述字段名相关联的至少一个业务表,如果是,获取所述至少一个业务表,包括:
利用所述第二监控sql语句,确定所述源数据中是否存在与所述字段名相关联的至少一个业务表;
如果是,利用所述第二监控sql语句,获取所述至少一个业务表;
所述将所述至少一个业务表转换为Avro模式的第二数据,包括:
利用所述第二监控sql语句,将所述至少一个业务表转换为Avro模式的第二数据;
和/或,
在所述将所述至少一个业务表转换为Avro模式的第二数据之后,在所述将所述第一数据和所述第二数据发送给每一个所述目标业务系统之前,进一步包括:
针对每一个所述业务表,确定所述源数据中是否存在与所述业务表相关联的至少一个附件;
如果是,获取所述至少一个附件;
所述将所述第一数据和所述第二数据发送给每一个所述目标业务系统,包括:
将所述第一数据、所述第二数据和所述至少一个附件发送给每一个所述目标业务系统;
所述监控所述待监控业务系统中的至少一个数据表中的数据是否发生变更,如果是,针对每一个所述数据表,确定所述数据表中变更后的所述数据对应的字段名,包括:
按照预设的监控时长,确定所述待监控业务系统中的预设数据变化列表中,是否新增至少一个数据表标识;
如果是,从所述待监控业务系统存储的源数据中,分别获取每一个所述数据表标识对应的数据表;
针对每一个所述数据表,执行:
从所述预设数据变化列表中,获取所述数据表中变更后的所述数据对应的字段名。
2.一种数据交互平台,其特征在于,包括:
监控单元,用于预先确定用户指定的至少一个外部的待监控业务系统;针对确定的每一个所述待监控业务系统,执行:监控所述待监控业务系统中的至少一个数据表中的数据是否发生变更;
处理单元,用于在所述监控单元监控到所述至少一个数据表中的数据发生变更时,针对每一个所述数据表,确定所述数据表中变更后的所述数据对应的字段名;从所述待监控业务系统存储的源数据中,确定所述字段名对应的至少一个外部的目标业务系统;从所述数据表中获取变更后的所述数据;
通信单元,用于将所述处理单元获取的所述数据发送给每一个所述目标业务系统,以使所述目标业务系统存储接收到的所述数据;
所述处理单元,进一步用于确定所述源数据中是否存在与所述字段名相关联的至少一个业务表;如果是,获取所述至少一个业务表;
所述通信单元,进一步用于将所述处理单元获取的所述数据和所述至少一个业务表发送给每一个所述目标业务系统;
所述处理单元,进一步用于将获取的所述数据转换为Avro模式的第一数据;将所述至少一个业务表转换为Avro模式的第二数据;
所述通信单元,用于将所述第一数据和所述第二数据发送给每一个所述目标业务系统;
所述处理单元,进一步用于配置第一监控sql语句;利用所述第一监控sql语句,从所述待监控业务系统存储的源数据中,确定所述字段名对应的至少一个外部的目标业务系统;利用所述第一监控sql语句,从所述数据表中获取变更后的所述数据;利用所述第一监控sql语句,将获取的所述数据转换为Avro模式的第一数据;
和/或,
所述处理单元,进一步用于配置第二监控sql语句;利用所述第二监控sql语句,确定所述源数据中是否存在与所述字段名相关联的至少一个业务表;如果是,利用所述第二监控sql语句,获取所述至少一个业务表;利用所述第二监控sql语句,将所述至少一个业务表转换为Avro模式的第二数据;
和/或,
所述处理单元,进一步用于针对每一个所述业务表,确定所述源数据中是否存在与所述业务表相关联的至少一个附件;如果是,获取所述至少一个附件;
所述通信单元,用于将所述第一数据、所述第二数据和所述至少一个附件发送给每一个所述目标业务系统。
3.一种数据同步交互系统,其特征在于,包括:至少一个权利要求2所述数据交互平台和至少两个业务系统;
所述至少两个业务系统中的待监控业务系统,用于存储源数据;
所述至少两个业务系统中的目标业务系统,用于接收所述数据交互平台发送的数据,并存储所述数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811219823.8A CN109408565B (zh) | 2018-10-19 | 2018-10-19 | 一种数据同步交互方法、系统和数据交互平台 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811219823.8A CN109408565B (zh) | 2018-10-19 | 2018-10-19 | 一种数据同步交互方法、系统和数据交互平台 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109408565A CN109408565A (zh) | 2019-03-01 |
CN109408565B true CN109408565B (zh) | 2021-09-28 |
Family
ID=65468639
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811219823.8A Active CN109408565B (zh) | 2018-10-19 | 2018-10-19 | 一种数据同步交互方法、系统和数据交互平台 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109408565B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112243244A (zh) * | 2019-07-16 | 2021-01-19 | 中兴通讯股份有限公司 | 一种同源数据处理装置及方法和基站 |
CN110874364B (zh) * | 2019-11-19 | 2023-04-11 | 北京启迪区块链科技发展有限公司 | 一种查询语句处理方法、装置、设备及存储介质 |
CN112328677B (zh) * | 2021-01-05 | 2021-04-02 | 平安科技(深圳)有限公司 | 基于表关联的丢失数据回收方法、装置、设备及介质 |
CN113808723B (zh) * | 2021-09-30 | 2023-08-22 | 北京蓝海医信科技有限公司 | 一种业务系统信息集成平台 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101697169A (zh) * | 2009-10-23 | 2010-04-21 | 中兴通讯股份有限公司 | 源数据库和目的数据库之间数据同步的方法、装置及系统 |
CN101968793A (zh) * | 2010-08-25 | 2011-02-09 | 大唐软件技术股份有限公司 | 一种基于异构数据源数据核对的方法和系统 |
CN102202073A (zh) * | 2010-03-24 | 2011-09-28 | 杭州华三通信技术有限公司 | 一种分布式系统及其数据同步方法 |
CN102486785A (zh) * | 2010-12-06 | 2012-06-06 | 金蝶软件(中国)有限公司 | 一种数据同步方法、装置及系统 |
CN107203642A (zh) * | 2017-06-19 | 2017-09-26 | 山东浪潮通软信息科技有限公司 | 一种数据同步方法和装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7814052B2 (en) * | 2006-11-03 | 2010-10-12 | Salesforce.Com, Inc. | Implementing formulas for custom fields in an on-demand database |
-
2018
- 2018-10-19 CN CN201811219823.8A patent/CN109408565B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101697169A (zh) * | 2009-10-23 | 2010-04-21 | 中兴通讯股份有限公司 | 源数据库和目的数据库之间数据同步的方法、装置及系统 |
CN102202073A (zh) * | 2010-03-24 | 2011-09-28 | 杭州华三通信技术有限公司 | 一种分布式系统及其数据同步方法 |
CN101968793A (zh) * | 2010-08-25 | 2011-02-09 | 大唐软件技术股份有限公司 | 一种基于异构数据源数据核对的方法和系统 |
CN102486785A (zh) * | 2010-12-06 | 2012-06-06 | 金蝶软件(中国)有限公司 | 一种数据同步方法、装置及系统 |
CN107203642A (zh) * | 2017-06-19 | 2017-09-26 | 山东浪潮通软信息科技有限公司 | 一种数据同步方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN109408565A (zh) | 2019-03-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109408565B (zh) | 一种数据同步交互方法、系统和数据交互平台 | |
CN110489391B (zh) | 一种数据处理方法及相关设备 | |
US10680874B2 (en) | Network service fault handling method, service management system, and system management module | |
US9171053B2 (en) | Method and device for automatic migration of system configuration item | |
US10341509B2 (en) | Client device state collection and network-based processing solution | |
CN107992537B (zh) | 业务属性传递方法、装置、计算机设备及存储介质 | |
CN112084098A (zh) | 资源监控系统及工作方法 | |
CN113742031B (zh) | 节点状态信息获取方法、装置、电子设备及可读存储介质 | |
US11108829B2 (en) | Managing network connections based on their endpoints | |
EP3001606B1 (en) | Fault processing method, device and system | |
CN108563455A (zh) | 一种k-ux操作系统上中间件部署方法、系统及设备 | |
WO2019223178A1 (zh) | 跨平台任务调度方法、系统、计算机设备和存储介质 | |
WO2016074412A1 (zh) | 基于网络配置协议进行兼容管理的方法、存储介质及设备 | |
CN109165261A (zh) | 数据同步方法、装置、服务器及计算机存储介质 | |
CN111639086A (zh) | 一种数据对账方法、装置、设备及存储介质 | |
CN106657360A (zh) | 一种Linux系统下NIS服务器的同步方法和系统 | |
US20220382637A1 (en) | Snapshotting hardware security modules and disk metadata stores | |
CN108154343B (zh) | 一种企业级信息系统的应急处理方法及系统 | |
EP4009167A1 (en) | Instantiated request generation method, interface virtual machine configuration method, nfvo, and vim | |
US20140366084A1 (en) | Management system, management method, and non-transitory storage medium | |
CN110750424B (zh) | 资源巡检方法和装置 | |
CN106506247B (zh) | 虚拟网络创建方法和装置 | |
CN113168357A (zh) | 从参与文档协作会话的各用户收集重复诊断数据 | |
TW201610907A (zh) | 電信訂單異質化資料同步轉換的方法 | |
US20240039999A1 (en) | Accessing representational state transfer application programming interfaces using simple mail transfer protocol |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20210908 Address after: 250100 Inspur science and Technology Park, 1036 Inspur Road, hi tech Zone, Jinan City, Shandong Province Applicant after: Inspur Software Technology Co.,Ltd. Address before: 250100 Ji'nan hi tech Zone No. 2877, Shandong Province Applicant before: INSPUR GROUP Co.,Ltd. |
|
TA01 | Transfer of patent application right | ||
GR01 | Patent grant | ||
GR01 | Patent grant |