多数据源元数据快速比对方法、系统、设备和存储介质技术方案

技术编号:35156731 阅读:18 留言:0更新日期:2022-10-05 10:39
本发明专利技术涉及数据处理技术领域,具体涉及多数据源元数据快速比对方法、系统、设备和存储介质。该方法根据数据源名称获取当前数据库连接,构建初始化SQL语句,查询数据库中对应的元数据信息;根据查询到的数据库中的元数据信息,基于Hash规则计算每条元数据信息内容的Hash值;针对待比较的元数据信息,比对元数据信息的Hash值,并以列存储方式进行分块并行计算;分块并行计算Hash值对比的待比较的元数据信息的内容是否相同,筛选出本地待删减、新增、修改的表和字段的元数据记录。本发明专利技术通过将多种数据源的元数据进行快速比对,提高了数据交互的效率,通过Hash值比对的方式,避免逐条逐个记录的比对,提高了计算效率。提高了计算效率。提高了计算效率。

【技术实现步骤摘要】
多数据源元数据快速比对方法、系统、设备和存储介质


[0001]本专利技术涉及数据处理
,尤其涉及一种多数据源元数据快速比对方法、系统、设备和存储介质。

技术介绍

[0002]企业数字化经营中,企业数据呈现海量、多源、快速变化的特点。在数据混合部署的形态下,企业数据会分散存储于孤岛式的Oracle、SQL、PostgreSQL等各种数据库、或Hbase等大数据平台、数据中台、以及各项业务系统中。企业因经营发展的需要,在调用多数据源下的数据时,往往需要企业的技术人员根据需求,根据不同数据源进行重复性的数据开发、数据处理等代码编写工作。耗费大量的时间成本和人力成本。
[0003]企业或可导入目前市面上的数据管理工具辅助使用,但现有技术中的数据管理工具,一般仅支持单一的数据源、或与该工具同厂商的数据源,提供数据管理功能,无法实现兼容目前市面上通用的多数据源同时进行数据管理的需求。
[0004]同时针对各个数据库和数据平台的管理中做到数据资产化和后续数据服务化的一个核心能力主要在于针对不同数据库和平台的元数据的集成能力。由于企业需要集中管理的数据系统越来越多,保证统一数据管理平台的元数据和各自源系统的元数据的同步成为影响后续基于数据应用的关键。因为企业内部各个应用系统的变化会导致各自元数据会有变化,如果统一数据管理平台无法同步各自平台的元数据会影响后续基于元数据的功能使用,比如数据目录,API开发,数据质量等。
[0005]传统的元数据更新一般采取的方式主要是通过读取各个数据平台的元数据表/视图,然后把所有记录都同步到统一数据管理平台内和已经存储的元数据进行逐条比对。这个过程耗时很长,同时有可能影响源系统的系统负载。另外伴随着统一数据管理平台所管理的数据库数量,以及每个数据库内部表的数量的增长,整体元数据更新效率将成为影响平台可扩展性,整体效率和稳定性的关键因素之一。

技术实现思路

[0006]鉴于此,针对目前绝大部分数据库/平台都存在多数据应用或者多schema的情况,本专利技术提供了一种多数据源元数据快速比对方法、系统、设备和存储介质,通过针对应用层面分库分表的方式分别读取更新相关元数据信息,从而能达到分而治之方式并发读取相关元数据信息,减少单一超大查询长时间锁库锁表的情况;而且,采取Hash校验的方式改变过去每次比对需要读取整行数据同时对比一行中每列记录的情况,通过Hash算法一次只需要比对一条Hash结果就可以确定元数据是否发生变化需要更新,整体可以极大提高更新比对的效率。
[0007]为实现上述目的,本专利技术实施例提供了如下的技术方案:第一方面,在本专利技术提供的一个实施例中,提供了一种多数据源元数据快速比对方法,包括以下步骤:
根据数据源名称获取当前数据库连接,构建初始化SQL语句,查询数据库中对应的元数据信息;根据查询到的数据库中的元数据信息,基于Hash规则计算每条元数据信息内容的Hash值;针对待比较的元数据信息,比对元数据信息的Hash值,并以列存储方式进行分块并行计算;分块并行计算Hash值对比的待比较的元数据信息的内容是否相同,筛选出本地待删减、新增、修改的表和字段的元数据记录。
[0008]作为本专利技术的进一步方案,所述多数据源元数据快速比对方法中,采取Hash校验的方式比对元数据信息之间的Hash值,基于一条Hash结果用以确定元数据是否发生变化需要更新。
[0009]作为本专利技术的进一步方案,根据数据源名称获取当前数据库连接,还包括:查询数据库中的同步标识状态,检查当前同步任务是否为第一次全量同步;若为第一次全量同步,则将同步状态更新为“开始同步”,并查询数据库中是否存在当前数据源的元数据配置,存在则清空。
[0010]作为本专利技术的进一步方案,构建初始化SQL语句,查询数据库中对应的元数据信息之前,还包括:读取目标数据库信息, 根据type类型判断需连接的数据库,获取数据库数据连接。
[0011]作为本专利技术的进一步方案,查询数据库时,还包括:判断数据源内数据库的数目,根据数据库的数目初始化每个数据库单独的元数据读取语句,并根据多条查询SQL的情况设置后续数据写入的合并逻辑的标识符。
[0012]作为本专利技术的进一步方案,所述多数据源元数据快速比对方法,还包括:根据多个数据库分别的查询解析查询到的目标数据库元数据信息,将目标库的表信息、属性信息保存至本地数据库中;每个数据库的分别读取SQL,并判断所需保存的数据是否超过预设保存阈值,若超过预设保存阈值则分批次保存,否则一次性保存。
[0013]作为本专利技术的进一步方案,每个数据库的分别读取SQL,所需保存的数据在分批次保存时,采用列存储方式进行分块并行计算,将Hash整体比对划分为分块多线程Hash比对。
[0014]作为本专利技术的进一步方案,所需保存的数据在分批次保存成功时,更新数据库中的同步状态标志位“同步成功”;若分批次保存失败,则更新同步状态为“同步失败”;分批次保存失败时, 判断是否为第一次全量同步,若是则则将同步状态更新为“开始同步”,若不是第一次全量同步,则进行更新数据源操作。
[0015]作为本专利技术的进一步方案,读取目标数据库信息时,根据type类型判断需要连接的数据库,获取数据库数据连接、构建初始化SQL语句,查询数据库中对应的元数据信息;若数据源下有多个数据库,则根据数据库数目单独生成多条SQL读取语句。
[0016]作为本专利技术的进一步方案,读取目标数据库信息成功时,解析查询到的元数据信息,获取查询到的表数及列数,若为空,清空本地保存的表和字段元数据信息,不为空,则进行元数据对比操作。
[0017]作为本专利技术的进一步方案,筛选出本地需要删减、新增、修改的表和字段的元数据记录,判断需要删减、新增、修改的表和字段的元数据记录数量是否超过分批次阈值,若超过则分批次删减、新增、修改,若不超过则直接删减、新增、修改。
[0018]作为本专利技术的进一步方案,所述多数据源元数据快速比对方法,还包括:删除过期的元数据信息,同步结束时,记录同步执行时间,更新同步状态。
[0019]第二方面,在本专利技术提供的一个实施例中,提供了一种多数据源元数据快速比对系统,该系统包括:初始化模块,用于根据数据源名称获取当前数据库连接,构建初始化SQL语句,查询数据库中对应的元数据信息;元数据计算模块,用于根据查询到的数据库中的元数据信息,基于Hash规则计算每条元数据信息内容的Hash值;Hash值比对模块,用于针对待比较的元数据信息,比对元数据信息的Hash值,并以列存储方式进行分块并行计算;元数据记录更新模块,用于分块并行计算Hash值对比的待比较的元数据信息的内容是否相同,筛选出本地待删减、新增、修改的表和字段的元数据记录。
[0020]第三方面,在本专利技术提供的又一个实施例中,提供了一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器加载并执行所述计算机程序时实现多数据源元数据快速比对方法的步骤。
[0021]第四方面,在本本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种多数据源元数据快速比对方法,其特征在于,该方法包括以下步骤:根据数据源名称获取当前数据库连接,构建初始化SQL语句,查询数据库中对应的元数据信息;根据查询到的数据库中的元数据信息,基于Hash规则计算每条元数据信息内容的Hash值;针对待比较的元数据信息,比对元数据信息的Hash值,并以列存储方式进行分块并行计算;分块并行计算Hash值对比的待比较的元数据信息的内容是否相同,筛选出本地待删减、新增、修改的表和字段的元数据记录。2.如权利要求1所述的多数据源元数据快速比对方法,其特征在于,所述多数据源元数据快速比对方法中,采取Hash校验的方式比对元数据信息之间的Hash值,基于一条Hash结果用以确定元数据是否发生变化需要更新。3.如权利要求2所述的多数据源元数据快速比对方法,其特征在于,根据数据源名称获取当前数据库连接,还包括:查询数据库中的同步标识状态,检查当前同步任务是否为第一次全量同步;若为第一次全量同步,则将同步状态更新为“开始同步”,并查询数据库中是否存在当前数据源的元数据配置,存在则清空。4.如权利要求3所述的多数据源元数据快速比对方法,其特征在于,构建初始化SQL语句,查询数据库中对应的元数据信息之前,还包括:读取目标数据库信息, 根据type类型判断需连接的数据库,获取数据库数据连接。5.如权利要求1所述的多数据源元数据快速比对方法,其特征在于,查询数据库时,还包括:判断数据源内数据库的数目,根据数据库的数目初始化每个数据库单独的元数据读取语句,并根据多条查询SQL的情况设置后续数据写入的合并逻辑的标识符。6.如权利要求5所述的多数据源元数据快速比对方法,其特征在于,所述多数据源元数据快速比对方法,...

【专利技术属性】
技术研发人员:程志国
申请(专利权)人:北京麦聪软件有限公司
类型:发明
国别省市:

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

1