一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种数据同步方法及系统与流程

2022-02-22 23:09:09 来源:中国专利 TAG:


1.本发明涉及数据处理技术领域,尤其涉及一种数据同步方法及系统。


背景技术:

2.目前,大部分的网管系统都需要承载大量的数据操作,越来越多的实时数据查询操作使得数据库负荷越来越重,影响系统无法显示直接查询的结果。因此为了提升系统对数据操作的处理效率,系统可以将大量的数据操作分配到多个不同的设备上执行,并且由于大型的网管系统所承载的数据来源于多个设备,或者多个系统同时需要同一份数据。因此,各个设备与设备之间、各个系统与系统之间需要进行数据同步,使得系统上显示的数据更全面,各个设备上保存的数据信息也完全一致,从而避免数据不一致而导致系统无法正常运行。
3.数据同步的操作不仅应用系统需要向数据库进行增、删、改和查操作,同样数据仓库也需要从众多的数据库中获取不同交易数据来完善自身的数据集。而对于数据同步,一种是增量的同步,一种是全量的同步,这两种方式各有各的好处,也各有各的问题,增量同步的处理逻辑都不会很简单,时间一长容易造成数据的不一致。全量同步一般不会造成数据的不一致情况,但随着数据量的增大,全量数据到最后往往会非常大。


技术实现要素:

4.本发明提供一种数据同步方法及系统,用以解决现有技术中存在的缺陷。
5.第一方面,本发明提供一种数据同步方法,包括:
6.确定微服务平台模块的预设数据发布接口;
7.数据订阅模块通过所述预设数据发布接口获取待发布数据,并选择数据同步方式和目的数据库进行数据同步。
8.在一个实施例中,还包括:
9.保存每次数据同步任务的执行日志,并在数据订阅系统上标记数据同步任务的执行结果。
10.在一个实施例中,所述确定微服务平台模块的预设数据发布接口,包括:
11.所述微服务平台模块发布具有json格式的restful接口。
12.在一个实施例中,所述数据订阅模块通过所述预设数据发布接口获取待发布数据,并选择数据同步方式和目的数据库进行数据同步,包括:
13.基于sql形式查询所述待发布数据,在所述微服务平台模块上配置数据库信息;
14.在所述数据订阅模块的对应栏目中完成同步配置;
15.提交订阅申请,待审批通过在所述数据订阅模块上配置同步执行配置;
16.启动同步任务,根据所述同步执行配置连接所述目的数据库。
17.在一个实施例中,所述数据库信息包括数据库ip、数据库端口、数据库类型、数据库服务名、数据库用户名、数据库密码和sql查询语句。
18.在一个实施例中,所述在所述数据订阅模块的对应栏目中完成同步配置,包括:
19.在所述数据订阅系统模块的服务产品栏配置接口地址,在用户管理栏添加服务,在数据源栏配置所述目的数据库。
20.在一个实施例中,所述数据同步方式包括增量同步和全量同步。
21.第二方面,本发明还提供一种数据同步系统,包括:
22.第一处理模块,用于确定微服务平台模块的预设数据发布接口;
23.第二处理模块,用于数据订阅模块通过所述预设数据发布接口获取待发布数据,并选择数据同步方式和目的数据库进行数据同步。
24.第三方面,本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述数据同步方法的步骤。
25.第四方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述数据同步方法的步骤。
26.本发明提供的数据同步方法及系统,通过应用基于微服务的数据同步方法,能实现增量同步和全量同步功能,并能实现用户界面配置的同步,从而有效确保数据的前后一致性。
附图说明
27.为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
28.图1是本发明提供的数据同步方法的流程示意图;
29.图2是本发明提供的数据同步系统的结构示意图;
30.图3是本发明提供的电子设备的结构示意图。
具体实施方式
31.为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
32.针对现有技术存在的数据同步问题,本发明提出一种基于微服务的数据同步方法,图1是本发明提供的数据同步方法的流程示意图,如图1所示,包括:
33.s1,确定微服务平台模块的预设数据发布接口;
34.s2,数据订阅模块通过所述预设数据发布接口获取待发布数据,并选择数据同步方式和目的数据库进行数据同步。
35.具体地,本发明应用的微服务是一种云原生架构方法,其中单个应用程序由许多松散耦合且可独立部署的较小组件或服务组成,优点在于可以更轻松地更新代码,团队可以为不同的组件使用不同的堆栈,组件可以彼此独立地进行缩放,从而减少了因必须缩放
整个应用程序而产生的浪费和成本,因为单个功能可能面临过多的负载。
36.微服务架构的核心是为了解决应用微服务化之后的服务治理问题,需要使用到微服务架构中的一个最重要的组件:服务注册中心,所有服务都注册到服务注册中心,同时也可以从服务注册中心获取当前可用的服务清单;解决服务发现问题后,接着需要解决微服务分布式部署带来的第二个问题:服务配置管理的问题。当服务数量超过一定程度之后,如果需要在每个服务里面分别维护每一个服务的配置文件,则需要用到微服务架构里面第二个重要的组件:配置中心。另外,微服务的服务治理还涉及很多内容,比如:通过熔断、限流等机制保证高可用;微服务之间调用的负载均衡;分布式事务(2pc、3pc、tcc、lcn等);服务调用链跟踪等等。
37.对应地,本发明提出的数据同步方法,主要功能包括服务发布、数据订阅和数据存储,对应的系统模块包括微服务平台模块和数据订阅模块。微服务平台发布json格式的restful接口,数据订阅模块通过调用微服务的restful接口获取到数据,然后通过数据订阅模块选择数据同步方式和目的数据库进行数据同步任务。
38.本发明通过应用基于微服务的数据同步方法,能实现增量同步和全量同步功能,并能实现用户界面配置的同步,从而有效确保数据的前后一致性。
39.基于上述实施例,还包括:
40.存每次数据同步任务的执行日志,并在数据订阅系统上标记数据同步任务的执行结果。
41.具体地,在执行完数据同步任务后,还对每次同步任务的执行日志进行保存,在数据订阅系统上标记出数据同步任务执行的结果是成功状态,还是同步异常状态。
42.通常地,根据配置的同步任务,每次执行保存执行日志,且系统可以查询日志,如果执行异常,在任务列表中会有异常标记。
43.本发明通过对执行同步任务的日志进行保存,并对执行结果进行分类标注,能完整保留同步的执行过程,便于后续的工作回溯。
44.基于上述任一实施例,该方法中的步骤s1,包括:
45.所述微服务平台模块发布具有json格式的restful接口。
46.具体地,根据目前主流的三种web服务交互方案中,rest相比于soap(simple object access protocol,简单对象访问协议)以及xml-rpc更加简单明了,无论是对url的处理还是对payload的编码,rest都倾向于用更加简单轻量的方法设计和实现。
47.因此,本发明采用微服务平台模块发布json格式的restful接口。
48.基于上述任一实施例,该方法中的步骤s2,包括:
49.基于sql形式查询所述待发布数据,在所述微服务平台模块上配置数据库信息;
50.在所述数据订阅模块的对应栏目中完成同步配置;
51.提交订阅申请,待审批通过在所述数据订阅模块上配置同步执行配置;
52.启动同步任务,根据所述同步执行配置连接所述目的数据库。
53.其中,所述数据库信息包括数据库ip、数据库端口、数据库类型、数据库服务名、数据库用户名、数据库密码和sql查询语句。
54.其中,所述在所述数据订阅模块的对应栏目中完成同步配置,包括:
55.在所述数据订阅系统模块的服务产品栏配置接口地址,在用户管理栏添加服务,
在数据源栏配置所述目的数据库。
56.其中,所述数据同步方式包括增量同步和全量同步。
57.具体地,首先将要发布的数据以sql的形式查询出来,在微服务平台系统上配置数据的数据库信息,包括数据库ip、数据库端口、数据库类型、数据库服务名、数据库用户名、数据库密码和sql查询语句,配置完接口便发布完成,客户端访问接口即从数据库获取数据,以json数据格式返回。
58.其次分别在数据订阅系统上的服务产品栏配置微服务平台发布的接口地址,在用户管理栏添加服务,以及在数据源栏配置同步过程的目的数据库。
59.接下来提交订阅申请,审批完成后可具备调用此服务的权限。
60.然后是在数据订阅系统上配置数据源接口地址、调度方式、调度频率、同步方式、接收库、接收表、关键字段、删除条件和字段的对应关系。
61.待同步任务启动后,根据配置连接接收库的数据库,对应的数据同步方式包括增量同步和全量同步。在增量同步中,根据关键字段删除目的表中不在临时表中的数据,插入在目的表中不存在的数据,更新在目的表中已经存在的数据,如果执行异常,则执行回滚操作,并关闭数据库连接,删除临时表;在全量同步中,清空目的表数据,批量插入数据至目的表中。
62.本发明实现了跨产品或者跨系统的数据同步,即实现了增量同步和全量同步功能,又能通过界面配置同步,简化了同步过程以及同步工作量。
63.下面对本发明提供的数据同步系统进行描述,下文描述的数据同步系统与上文描述的数据同步方法可相互对应参照。
64.图2是本发明提供的数据同步系统的结构示意图,如图2所示,包括:第一处理模块21和第二处理模块22,其中:
65.第一处理模块21用于确定微服务平台模块的预设数据发布接口;第二处理模块22用于数据订阅模块通过所述预设数据发布接口获取待发布数据,并选择数据同步方式和目的数据库进行数据同步。
66.本发明通过应用基于微服务的数据同步系统,能实现增量同步和全量同步功能,并能实现用户界面配置的同步,从而有效确保数据的前后一致性。
67.图3示例了一种电子设备的实体结构示意图,如图3所示,该电子设备可以包括:处理器(processor)310、通信接口(communicationsinterface)320、存储器(memory)330和通信总线340,其中,处理器310,通信接口320,存储器330通过通信总线340完成相互间的通信。处理器310可以调用存储器330中的逻辑指令,以执行数据同步方法,该方法包括:确定微服务平台模块的预设数据发布接口;数据订阅模块通过所述预设数据发布接口获取待发布数据,并选择数据同步方式和目的数据库进行数据同步。
68.此外,上述的存储器330中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,
read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。
69.另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法所提供的数据同步方法,该方法包括:确定微服务平台模块的预设数据发布接口;数据订阅模块通过所述预设数据发布接口获取待发布数据,并选择数据同步方式和目的数据库进行数据同步。
70.又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各提供的数据同步方法,该方法包括:确定微服务平台模块的预设数据发布接口;数据订阅模块通过所述预设数据发布接口获取待发布数据,并选择数据同步方式和目的数据库进行数据同步。
71.以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
72.通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
73.最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献