一种对数据抽取方法的改进技术

技术编号:23238997 阅读:31 留言:0更新日期:2020-02-04 18:24
本发明专利技术提供了一种对数据抽取方法的改进,包括以下步骤:第一步:获取源数据库表结构;第二步:对比目标数据库表结构,获取有无差异;第三步:更新目标数据库表结构;第四步:判断是否有类型屏蔽;第五步:加载屏蔽类型;第六步:数据抽取;第七步:抽取任务完成。本发明专利技术通过对数据抽取方法的改进,实现了不同源数据表结构的同步更新,并且可自定义屏蔽源系统数据类型,自动屏蔽源系统BLOB类型涉及到的所有字段。

An improvement of data extraction method

【技术实现步骤摘要】
一种对数据抽取方法的改进
本专利技术涉及一种不同数据库间同步数据的方法,具体涉及一种不同数据库间同步数据的ETL方法的优化。
技术介绍
在数据库大量运用的环境下,数据库之间数据同步技术是维护各个数据库节点之间数据一致性的重要方法。其中,包括大量异构数据库之间需要进行数据同步的需求。因此,经常涉及到对大量异构的数据进行处理,数据抽取、转换、装载的过程(Extract-Transform-Load,ETL)是重要的一个环节。在现有技术中,数据在ETL处理过程中,经常遇到源表结构发生变化、源表结构中存在特殊类型字段导致数据抽取失败的情况,而目前主流的ETL工具需要繁琐的人工处理才能解决此类问题,因此需要对不同数据库间同步数据的ETL方法进行改进。
技术实现思路
本专利技术针对一般通用的在数据库间同步数据的ETL方法的优化及改进,对数据源的变化采用自动更新,实现源系统数据表结构变化同步和自定义数据类型屏蔽。本专利技术的技术方案如下:一种对数据抽取方法的改进,所述方法包括以下步骤:第一步:获取源数据库表结构;查询源数据库的字典表获取源数据库表结构;第二步:对比目标数据库表结构,获取有无差异;查询目标数据库的字典表获取目标数据库表结构,将目标数据库表结构与第一步查询到的源数据库表结构进行比对,分析有无差异;第三步:更新目标数据库表结构;如果源数据库表结构与目标数据库表结构有差异,则更新目标数据库表结构,进入下一步;如果源数据库表结构与目标数据库表结构无差异,则直接进入下一步;第四步:判断是否有类型屏蔽;查询屏蔽类型用户配置表,判断字段是否属于屏蔽类型;第五步:加载屏蔽类型;如字段属于屏蔽类型,则过滤该字段,进入下一步;如字段不属于屏蔽类型,则直接进入下一步;第六步:数据抽取;从源数据库表中抽取数据,存入目标数据库表;第七步:抽取结束,并完成存储,操作完成。优选的,第一步中所述的源数据库表结构,包括用户名、表名、字段名、字段类型、字段长度、字段顺序等信息。优选的,第二步中所述目标数据库表结构,包括用户名、表名、字段名、字段类型、字段长度、字段顺序等信息。优选的,第二步中所述数据库表结构进行比对的内容包括字段数量、字段名、字段类型、字段长度、字段顺序等信息。本专利技术与现有技术相比,优点在于:1)本专利技术通过数据同步前侦测源数据库表结构和目标数据库表结构是否有差异,如果存在差异,则同步更新目标数据库表结构,保证了目标数据库表结构的变化同步:2)本专利技术通过查询屏蔽类型用户配置表,判断字段是否属于屏蔽类型,实现了通过自定义屏蔽源系统数据类型,自动过滤源系统BLOB类型涉及到的所有字段。附图说明图1为一种对数据抽取改进方法的基本流程。具体实施方式下面结合具体实施例来对本专利技术进行进一步说明,但并不将本专利技术局限于这些具体实施方式。本领域技术人员应该认识到,本专利技术涵盖了权利要求书范围内所可能包括的所有备选方案、改进方案和等效方案。一种对数据抽取方法的改进,如图1所示包括以下步骤:第一步:获取源数据库表结构。查询源数据库的字典表获取源数据库表结构;源数据库表结构包括用户名、表名、字段名、字段类型、字段长度、字段顺序等信息。第二步:对比目标数据库表结构,获取有无差异。查询目标数据库的字典表获取目标数据库表结构,目标数据库表结构包括用户名、表名、字段名、字段类型、字段长度、字段顺序等信息;将目标数据库表结构与第一步查询到的源数据库表结构进行比对,比对的内容包括字段数量、字段名、字段类型、字段长度、字段顺序等信息,分析有无差异;数据库表结构的差异主要包括字段数量不同、字段类型不同、占用字节数不同、小数位不同、默认值不同等差异。第三步:更新目标表结构。如果源数据库表结构与目标数据库表结构有差异,则更新目标数据库表结构,进入下一步;如果源数据库表结构与目标数据库表结构无差异,则直接进入下一步;第四步:判断是否有类型屏蔽。根据需要创建数据库的屏蔽类型用户配置表,指定需要屏蔽的数据类型;在数据抽取前,查询屏蔽类型用户配置表,获取屏蔽类型的内容,根据屏蔽类型的内容,判断数据库表内的各个字段是否属于屏蔽类型;第五步:加载屏蔽类型。如字段属于屏蔽类型,则自动过滤该字段,进入下一步;如字段不属于屏蔽类型,则直接进入下一步;第六步:数据抽取。从源数据库表中抽取数据,存入目标数据库表;第七步:抽取结束,并完成存储,操作完成。如上所示,本专利技术虽然已参照有限的实施例和附图进行了说明,但在本专利技术所属领域中具备通常知识的人均可以从此记载中进行各种修改和变形。由此,其他实施例及权利要求书与等同物均属于权利要求的保护范围。本文档来自技高网...

【技术保护点】
1.一种对数据抽取方法的改进,其特征在于:所述方法包括以下步骤:/n第一步:获取源数据库表结构;查询源数据库的字典表获取源数据库表结构;/n第二步:对比目标数据库表结构,获取有无差异;查询目标数据库的字典表获取目标数据库表结构,将目标数据库表结构与第一步查询到的源数据库表结构进行比对,分析有无差异;/n第三步:更新目标数据库表结构;如果源数据库表结构与目标数据库表结构有差异,则更新目标数据库表结构,进入下一步;如果源数据库表结构与目标数据库表结构无差异,则直接进入下一步;/n第四步:判断是否有类型屏蔽;查询屏蔽类型用户配置表,判断字段是否属于屏蔽类型;/n第五步:加载屏蔽类型;如字段属于屏蔽类型,则过滤该字段,进入下一步;如字段不属于屏蔽类型,则直接进入下一步;/n第六步:数据抽取;从源数据库表中抽取数据,存入目标数据库表;/n第七步:抽取结束,并完成存储,操作完成。/n

【技术特征摘要】
1.一种对数据抽取方法的改进,其特征在于:所述方法包括以下步骤:
第一步:获取源数据库表结构;查询源数据库的字典表获取源数据库表结构;
第二步:对比目标数据库表结构,获取有无差异;查询目标数据库的字典表获取目标数据库表结构,将目标数据库表结构与第一步查询到的源数据库表结构进行比对,分析有无差异;
第三步:更新目标数据库表结构;如果源数据库表结构与目标数据库表结构有差异,则更新目标数据库表结构,进入下一步;如果源数据库表结构与目标数据库表结构无差异,则直接进入下一步;
第四步:判断是否有类型屏蔽;查询屏蔽类型用户配置表,判断字段是否属于屏蔽类型;
第五步:加载屏蔽类型;如字段属于屏蔽类型,则过滤该字段,进入下一步;如字段不属于屏蔽类...

【专利技术属性】
技术研发人员:李东升
申请(专利权)人:南京我爱我家信息科技有限公司
类型:发明
国别省市:北京;11

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

1