异构多源多目的数据同步方法及装置制造方法及图纸

技术编号:39650897 阅读:9 留言:0更新日期:2023-12-09 11:19
本申请提供了一种异构多源多目的数据同步方法及装置

【技术实现步骤摘要】
异构多源多目的数据同步方法及装置、计算机、存储介质


[0001]本申请涉及数据处理
,具体而言,涉及一种异构多源多目的数据同步方法及装置

计算机

可读存储介质


技术介绍

[0002]随着互联网技术和云计算技术的发展,微服务技术
(Microservices technology)
和多租户技术
(multi

tenancy technology)
应用越来越广,不可避免的将不同用户的数据分散不同的数据库租户中进行隔离存储,不同微服务采用独有的技术栈和数据存储,甚至业务系统和数据分析系统
(BI)
使用不同云厂商的云版数据库,这样享受云计算

微服务和多租户技术优势的同时增加系统数据整体汇总分析的复杂度和困难


技术实现思路

[0003]本申请旨在解决或改善上述技术问题

[0004]为此,本申请的第一目的在于提供一种异构多源多目的数据同步方法

[0005]本申请的第二目的在于提供一种异构多源多目的数据同步装置

[0006]本申请的第三目的在于提供一种计算机

[0007]本申请的第四目的在于提供一种可读存储介质

[0008]为实现本申请的第一目的,本申请第一方面的技术方案提供了一种异构多源多目的数据同步方法,包括:对系统参数进行配置,得到配置信息,配置信息包括数据源和目的地,数据源包括数据库和
/
或消息中间件,目的地包括多种通信协议;根据配置信息中的数据源初始化线程池,线程池包括以下之一或其组合:拉取线程池
、ETL
线程池

目的地线程池

失败数据处理线程和过期数据缓存清理线程;根据配置信息和数据源建立连接拉取数据,并对数据进行反序列化处理和生成统一数据对象;对数据对象根据预设过滤和清洗规则进行数据过滤清洗转换,得到过滤清洗数据;根据配置信息中的目的地对过滤清洗数据进行数据格式转换,得到转换数据,并根据目的地的通信协议将转换数据推送到目的地

[0009]根据本申请提供的异构多源多目的数据同步方法,首先对系统参数进行配置,得到配置信息

配置信息包括数据源

目的地

过滤黑名单和系统公共参数配置及其关系维护

数据源支持数据库和消息中间件,目的地支持
JDBC

Http/Https
协议两种通信协议,以便支持数据库和
APIs
类型的目的地,数据源和目的地支持对多对的关系

然后根据配置信息初始化并启动每个数据源的一套拉取线程池
、ETL
线程池和目的地线程池

然后根据数据源配置信息建立连接拉取数据,进行数据的反序列化并转换成同步系统的统一数据对象

然后对数据对象根据预设过滤和清洗规则进行数据过滤清洗转换,得到过滤清洗数据

获取数据目的地清单将数据每个目的地配置信息进行数据格式转换和通信协议将数据推送到目的地

通过本申请的技术方案,能够能支持不同类型数据库

消息中间件作为数据源,支持不同类型数据库和
APIs
作为目的地,支持将一个数据源同时同步到多个不同类型的目的地的,以降低采用微服务技术和多租户技术的系统数据整体分析和汇总工作的复杂度和
工作量,提升不同业务场景下数据同步效率

数据一致性

准确性,进而提升数据分析质量和分析效率

[0010]另外,本申请提供的技术方案还可以具有如下附加技术特征:
[0011]在一些技术方案中,可选地,异构多源多目的数据同步方法还包括:判断转换数据是否推送到目的地;若是,则将成功状态发到数据源端;若否,则将数据对象

数据源

目的地和失败原因保存,得到失败数据,并唤醒失败数据处理线程;通过自动或手工处理失败数据

[0012]在该技术方案中,异构多源多目的数据同步方法还包括判断转换数据是否推送到目的地

推送成功时将成功状态发到数据源端

失败时,将数据对象和失败原因保存,并唤醒失败数据处理线程进行自动或手工处理

[0013]在一些技术方案中,可选地,通过自动或手工处理失败数据,具体包括:判断失败数据是否超过自动处理阀值;若是,则通过失败数据处理线程处理失败数据;若否,则通过装置提供可视化页面手工处理失败数据

[0014]在该技术方案中,通过自动或手工处理失败数据,具体为判断失败数据是否超过自动处理阀值

若是,则通过失败数据处理线程处理失败数据

若否,则通过装置提供可视化页面手工处理失败数据

通过设置自动处理阀值,能够通过失败数据处理线程进行自动处理,超过自动处理阀值的数据可通过装置提供可视化页面进行手工处理

[0015]在一些技术方案中,可选地,配置信息包括以下之一或其组合:数据源

目的地

过滤黑名单和系统公共参数

[0016]在该技术方案中,配置信息包括数据源

目的地

过滤黑名单和系统公共参数配置及其关系维护,其中,数据源支持数据库和消息中间件,目的地支持
JDBC

Http/Https
协议两种通信协议,以便支持数据库和
APIs
类型的目的地,数据源和目的地支持对多对的关系,配置信息系统启动初始化模块使用

配置信息支持自由配置不限个数的数据库类型和消息中间件类型的数据源,支持自由配置不限个数的数据库类型和
Http/Https APIs
类型的目的地,不同类型的数据源和不同类型的目的地可自由组合,从而适配更多业务的场景

[0017]在一些技术方案中,可选地,根据配置信息和数据源建立连接拉取数据,并对数据进行反序列化处理和生成统一数据对象,具体包括:根据配置信息和数据源建立连接拉取数据;对数据进行反序列化处理,并按照不同数据源的数据格式生成数据源数据对象;将数据源数据对象按照预设规则生成统一数据对象,并将数据对象放进
ETL
队列,同时唤醒
ETL
线程池的
ETL
线程

[0018]在该技术方案中,根据配置信息和数据源建立连接拉取数据,并对数据进行反序列化处理和生成统一数据对象,具体为首先根据配置信息和数据源建立连接拉取数据
...

【技术保护点】

【技术特征摘要】
1.
一种异构多源多目的数据同步方法,其特征在于,包括:对系统参数进行配置,得到配置信息,所述配置信息包括数据源和目的地,所述数据源包括数据库和
/
或消息中间件,所述目的地包括多种通信协议;根据所述配置信息中的数据源初始化线程池,所述线程池包括以下之一或其组合:拉取线程池
、ETL
线程池

目的地线程池

失败数据处理线程和过期数据缓存清理线程;根据所述配置信息和数据源建立连接拉取数据,并对数据进行反序列化处理和生成统一数据对象;对所述数据对象根据预设过滤和清洗规则进行数据过滤清洗转换,得到过滤清洗数据;根据所述配置信息中的目的地对所述过滤清洗数据进行数据格式转换,得到转换数据,并根据所述目的地的通信协议将所述转换数据推送到所述目的地
。2.
根据权利要求1所述的异构多源多目的数据同步方法,其特征在于,还包括:判断所述转换数据是否推送到所述目的地;若是,则将成功状态发到数据源端;若否,则将所述数据对象

所述数据源

所述目的地和失败原因保存,得到失败数据,并唤醒所述失败数据处理线程;通过自动或手工处理所述失败数据
。3.
根据权利要求2所述的异构多源多目的数据同步方法,其特征在于,所述通过自动或手工处理所述失败数据,具体包括:判断所述失败数据是否超过自动处理阀值;若是,则通过失败数据处理线程处理所述失败数据;若否,则通过装置提供可视化页面手工处理所述失败数据
。4.
根据权利要求1所述的异构多源多目的数据同步方法,其特征在于,所述配置信息包括以下之一或其组合:数据源

目的地

过滤黑名单和系统公共参数
。5.
根据权利要求1所述的异构多源多目的数据同步方法,其特征在于,所述根据所述配置信息和数据源建立连接拉取数据,并对所述数据进行反序列化处理和生成统一数据对象,具体包括:根据所述配置信息和数据源建立连接拉取数据;对数据进行反序列化处理,并按照不同数据源的数据格式生成数据源数据对象;将所述数据源数据对象按照预设规则生成统一数据对象,并将所述数据对象放进
ETL
队列,同时唤醒所述
ETL
线程池的
ETL
线程
。6.
根据权利要求5所述的异构多源多目的数据同步方法,其特征在于,所述根据所述配置信息和数据源建立连接拉取数据,具体包括:根据所述配置信息和数据源建立连接在同一节点拉取处理数据;和
/
或根据所述配置信息和数据源建立连接在不同节点拉取处理数据
。7.
根据权利要求5所述的异构多源多目的数据同步方法,其特征在于,所述拉取数据包括增量拉取数据和
/
或全量拉取数据
。8.
根据权利要求1至7中任一项所述的异构多源多目的数据同步方法,其特征在于,所述对所述数据对象根据预设过滤...

【专利技术属性】
技术研发人员:邱明杰黄雪珍王思远尹洪伟高海龙
申请(专利权)人:用友汽车信息科技上海股份有限公司
类型:发明
国别省市:

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

1