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

基于消息队列的存量数据与增量数据融合的数据同步方法与流程

2023-01-15 05:15:00 来源:中国专利 TAG:

技术特征:
1.基于消息队列的存量数据与增量数据融合的数据同步方法,其特征在于,包括以下步骤:步骤1、创建数据源信息并存放至数据库中;步骤2、拉取数据源中待同步的数据表作为待同步表列表,获取数据表和数据表对应的数据源信息,建立数据表与目标数据表的映射关系;步骤3、创建增量同步任务,获取增量数据并根据映射关系发送至消息队列中;步骤4、创建存量同步任务,异步获取存量数据并根据映射关系发送至消息队列中;步骤5、创建数据实时接入任务,将消息队列中的增量数据或存量数据写入目标数据库对应的目标数据表中。2.根据权利要求1所述的基于消息队列的存量数据与增量数据融合的数据同步方法,其特征在于,所述步骤1中,数据源信息至少包括数据源、以及各数据源对应的源数据库信息、消息队列信息、主题前缀和目标数据库信息,目标数据库信息至少包括数据库类型、数据库链接信息和数据库库名。3.根据权利要求2所述的基于消息队列的存量数据与增量数据融合的数据同步方法,其特征在于,数据表与目标数据表的映射关系为:获取数据库中数据表和数据表对应的主题前缀,建立目标数据库中的目标数据表和数据表、主题的映射关系,将所述映射关系存放至集合map中。4.根据权利要求3所述的基于消息队列的存量数据与增量数据融合的数据同步方法,其特征在于,所述步骤3包括:步骤31、选取待同步表列表中待同步的数据表,构建增量同步列表,将增量同步列表中的数据表与目标数据库中的目标数据表对比,新建新的目标数据表或修改已存在的目标数据表;步骤32、校验是否存在与待同步的数据表对应的cdc任务,若不存在则新建对应的cdc任务;步骤33、由cdc任务监控待同步的数据表的变更,然后生成、解析变更日志并生成变更记录、建立第一json文件;步骤34、判断待同步的数据表是否发生变更,若发生变更,生成最新schem信息并进行注册获得当前schem版本,将当前schem版本存放至集合map中并生成数据表对应的schem总信息;步骤35、从集合map中获取当前schem版本并写入第一json文件中形成增量数据;步骤36、将增量数据及对应的数据表的名称发送至消息队列发送模块,消息队列发送模块根据映射关系获取对应的主题,并将增量数据发送至消息队列对应的主题中。5.根据权利要求4所述的基于消息队列的存量数据与增量数据融合的数据同步方法,其特征在于,所述步骤32中,新建cdc任务时,根据待同步的数据表对应数据库类型加载对应的任务模板,并在任务模板中至少填充数据表对应的源数据库信息、待同步的数据表信息和消息队列信息;所述步骤34中,schem总信息至少包括schem版本号、以及对应的schem信息和数据表。6.根据权利要求5所述的基于消息队列的存量数据与增量数据融合的数据同步方法,其特征在于,所述步骤4包括:步骤41、选取待同步表列表中待同步的数据表,构建存量同步列表,初始化存量同步列表为待执行状态;步骤42、异步获取待执行状态的存量同步列表,获取所述存量同步列表中数据表的对应数据源信息的源数据库信息;步骤43、根据源数据库信息的源数据库类型选择对应的存量同步方式,通过数据表的主键分批查询和同步存量数据。
7.根据权利要求6所述的基于消息队列的存量数据与增量数据融合的数据同步方法,其特征在于,所述查询和同步存量数据的方法包括:步骤431、查询源数据库的数据表并获取schem信息,注册当前的schem信息并返回至对应的schema版本号;步骤432、建立第二json文件,将返回的schema版本号写入第二json文件中形成存量数据;步骤433、将存量数据及对应数据表的名称发送至消息队列发送模块,消息队列发送模块根据映射关系获取对应的主题,并将存量数据发送至消息队列对应的主题中。8.根据权利要求7所述的基于消息队列的存量数据与增量数据融合的数据同步方法,其特征在于,所述步骤5包括:步骤51、设置数据实时接入任务的数据接入模块,消费消息队列信息;步骤52、设置数据实时接入任务的数据处理模块,处理数据源信息。9.根据权利要求8所述的基于消息队列的存量数据与增量数据融合的数据同步方法,其特征在于,所述步骤52包括:步骤521、设置目标数据库信息;步骤522、由目标数据库信息的数据库类型,选择对应的数据处理模板,解析消息队列中的增量数据或存量数据,并根据映射关系将增量数据或存量数据写入对应的目标数据表中。10.根据权利要求9所述的基于消息队列的存量数据与增量数据融合的数据同步方法,其特征在于,所述步骤522包括以下过程:步骤a、基于schema总信息加载schema版本及对应schema信息到集合map中;步骤b、解析增量数据或存量数据,获取对应的schema版本号,再从集合map中获取对应的schema信息;步骤c、校验获取的schema信息与目标数据表的schema信息是否一致或兼容;步骤d、校验结果一致或兼容时,根据目标数据表的schema信息和数据库类型,调用数据写入模块将增量数据或存量数据写入目标数据表中。

技术总结
本发明公开了基于消息队列的存量数据与增量数据融合的数据同步方法,属于大数据技术领域,包括创建数据源信息并存放至数据库中;拉取数据源中待同步的数据表作为待同步表列表,获取数据表和数据表对应的数据源信息,建立数据表与目标数据表的映射关系;创建增量同步任务,获取增量数据并根据映射关系发送至消息队列中;创建存量同步任务,异步获取存量数据并根据映射关系发送至消息队列中;创建数据实时接入任务,将消息队列中的增量数据或存量数据写入目标数据库对应的目标数据表中。本发明采用消息队列融合存量同步和增量同步数据,仅使用一条链路即同时满足存量、增量同步的需求,减轻数据同步的操作难度和实施成本。减轻数据同步的操作难度和实施成本。减轻数据同步的操作难度和实施成本。


技术研发人员:向才锋
受保护的技术使用者:云筑信息科技(成都)有限公司
技术研发日:2022.12.15
技术公布日:2023/1/13
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

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

相关文献