首页 / 专利库 / 人工智能 / 目标语言 / 一种基于关系型数据库动态增量加载数据的方法

一种基于关系型数据库动态增量加载数据的方法

阅读:862发布:2020-05-11

专利汇可以提供一种基于关系型数据库动态增量加载数据的方法专利检索,专利查询,专利分析的服务。并且本 发明 公开了一种基于关系型 数据库 动态增量加载数据的方法,涉及数据库技术领域。本发明包括建立数据源配置模板表;建立动态增量 抽取 配置模板表,将所有ETL配置归总成固定成若干项;创建存储过程;在目标数据库通过数据库SQL语言创建定时调度任务;将ODS表的数据源配置按照配置模板录入数据源配置模板表;将ODS表的ETL配置按照配置模板录入动态增量抽取配置模板表;启动定时调度任务,定时动态增量抽取数据。本发明通过建立数据源配置模板表以及动态增量抽取配置模板;减少了ODS表创建ETL流程和任务的工作量,ETL配置化的方式管理了所有ODS表,减少了维护难度。,下面是一种基于关系型数据库动态增量加载数据的方法专利的具体信息内容。

1.一种基于关系型数据库动态增量加载数据的方法,其特征在于,包括如下步骤:
A00:建立数据源配置模板表;
A01:建立动态增量抽取配置模板表,将所有ETL配置归总成固定成若干项;
A02:创建存储过程,通过读取数据源配置表和动态增量抽取配置表,实现对数据的抽取、过滤、转换以及装载;
A03:在目标数据库通过数据库SQL语言创建定时调度任务,调度任务定时执行A02步骤中创建好的存储过程,完成定期抽取源数据的功能;
A04:将ODS表的数据源配置按照配置模板录入数据源配置模板表;
A05:将ODS表的ETL配置按照配置模板录入动态增量抽取配置模板表;
A06:启动定时调度任务,定时动态增量抽取数据。
2.根据权利要求1所述的一种基于关系型数据库动态增量加载数据的方法,其特征在于,所述数据源配置模板表结构如下:
字段名 字段类型 字段描述
id int 数据源id
connect_name varchar 数据源的连接名称,用于区分多数据源
sdb_ip varchar 数据源的数据库ip
sdb_port int 数据源的数据库端口号
sdb_name varchar 数据源的数据库名称
sdb_username varchar 数据源的数据库登录用户名
sbd_password varchar 数据源的数据库登录密码

3.根据权利要求1所述的一种基于关系型数据库动态增量加载数据的方法,其特征在于,所述动态增量抽取配置模板表结构如下:
4.根据权利要求1所述的一种基于关系型数据库动态增量加载数据的方法,其特征在于,A02中数据的抽取、过滤、转换以及装载过程如下:
B00:获取所述数据源配置模板表中的配置;
B01:将远程源数据表映射到目标数据库本地;
B02:在所述目标数据库上建立目标数据表;
B03:根据所述动态增量抽取配置模板表对源数据进行动态增量抽取、转换,然后装载到所述目标数据表;
B04:更新所述动态增量抽取配置模板的增量标记点,为下次增量抽取数据做准备。

说明书全文

一种基于关系型数据库动态增量加载数据的方法

技术领域

[0001] 本发明属于数据库技术领域,特别是涉及一种基于关系型数据库动态增量加载数据的方法。

背景技术

[0002] 数据仓库是面向决策分析的中央存储库。数据仓库建立方式是:定期将来自于事务系统、关系数据库等其他来源的数据,根据不同的主题进行抽取、转换操作,最后将清洗好的数据装载到中央存储库,为决策者提供决策的依据。
[0003] 目前,数据仓库的建立过程需要依赖C、Java、Python、SQL等多种语言的组合开发;并且数据仓库需要将多数据源的数据抽取流程拆分成多个单数据源的数据抽取流程,导致建仓过程非常繁琐;另外,在源数据结构发生变化和数据仓库业务升级后,数据仓库需要进行重新建立,这就造成了数据仓库的运维成本变高。
[0004] 现有的技术方案是为数据仓库的ODS层的每张表配置一套完整的ETL流程,然后给ODS层的每张表创建一个任务来完成数据抽取、转换、装载工作。当数据仓库进行业务升级后,需要再继续创建新的ETL流程和新的任务来完成新增ODS表的数据抽取、转换、装载工作。当ODS表的抽取、转换逻辑发生变动,需要删除ODS表旧的ETL配置流程,然后重新配置一套完整的ETL流程。
[0005] 现有技术一的缺点:1、需要为每张ODS表配置一套ETL流程和任务,ODS表的数量过多,会增加配置ETL流程的工作量,ODS表的数量与配置ELT流程工作量成正比;2、配置的ETL流程和任务过多,会增加管理和维护的难度,配置ETL流程和任务的数量与管理和维护难度成正比;3、配置的任务过多,会增加服务器的使用开销,配置任务的数量与服务器开销成正比;4、配置ETL流程和任务依赖C、Java、Python、SQL等多种语言,增加了开发难度和学习成本。

发明内容

[0006] 本发明的目的在于提供一种基于关系型数据库动态增量加载数据的方法,通过建立数据源配置模板表以及动态增量抽取配置模板;减少了ODS表创建ETL流程和任务的工作量,ETL配置化的方式管理了所有ODS表,减少了维护难度,解决了现有的数据转换效率低以及管理复杂的问题。
[0007] 为解决上述技术问题,本发明是通过以下技术方案实现的:
[0008] 本发明为一种基于关系型数据库动态增量加载数据的方法,包括如下步骤:
[0009] A00:建立数据源配置模板表;
[0010] A01:建立动态增量抽取配置模板表,将所有ETL配置归总成固定成若干项;
[0011] A02:创建存储过程,通过读取数据源配置表和动态增量抽取配置表,实现对数据的抽取、过滤、转换以及装载;
[0012] A03:在目标数据库通过数据库SQL语言创建定时调度任务,调度任务定时执行A02步骤中创建好的存储过程,完成定期抽取源数据的功能;
[0013] A04:将ODS表的数据源配置按照配置模板录入数据源配置模板表;
[0014] A05:将ODS表的ETL配置按照配置模板录入动态增量抽取配置模板表;
[0015] A06:启动定时调度任务,定时动态增量抽取数据。
[0016] 优选地,所述数据源配置模板表结构如下:
[0017] 字段名 字段类型 字段描述id int 数据源id
connect_name varchar 数据源的连接名称,用于区分多数据源
sdb_ip varchar 数据源的数据库ip
sdb_port int 数据源的数据库端口号
sdb_name varchar 数据源的数据库名称
sdb_username varchar 数据源的数据库登录用户名
sbd_password varchar 数据源的数据库登录密码

[0018] 优选地,所述动态增量抽取配置模板表结构如下:
[0019]
[0020]
[0021] 优选地,A02中数据的抽取、过滤、转换以及装载过程如下:
[0022] B00:获取所述数据源配置模板表中的配置;
[0023] B01:将远程源数据表映射到目标数据库本地;
[0024] B02:在所述目标数据库上建立目标数据表;
[0025] B03:根据所述动态增量抽取配置模板表对源数据进行动态增量抽取、转换,然后装载到所述目标数据表;
[0026] B04:更新所述动态增量抽取配置模板的增量标记点,为下次增量抽取数据做准备。
[0027] 本发明具有以下有益效果:
[0028] 1、本发明通过一套数据源配置模板表和一套基于数据库SQL语言的数据抽取、转换、装载的流程,完成多数据源场景下的数据仓库建立的工作;提高了效率;
[0029] 2、本发明通过配置化的方式管理了所有ODS层表,减少了数据仓库的运维难度;
[0030] 3、本发明通过动态增量抽取配置模板表实现了数据仓库所有ODS层表的抽取、转换、装载,无需在基于每张ODS层表建立一套ETL流程;减少了ODS表创建ETL流程和任务的工作量,ETL配置化的方式管理了所有ODS表,减少了维护难度;
[0031] 4、本发明通过数据源配置模板表、动态增量抽取配置模板和数据ETL流程仅依赖数据库SQL语言,降低了数据仓库管理员的学习使用难度。
[0032] 当然,实施本发明的任一产品并不一定需要同时达到以上所述的所有优点。附图说明
[0033] 为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0034] 图1为本发明的一种基于关系型数据库动态增量加载数据的方法的流程图
[0035] 图2为本发明中数据的抽取、过滤、转换以及装载过程的流程图。

具体实施方式

[0036] 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
[0037] 请参阅图1所示,本发明为一种基于关系型数据库动态增量加载数据的方法,包括如下步骤:
[0038] A00:建立数据源配置模板表,用于解决多数据源场景下的数据仓库建立问题;
[0039] 数据源配置模板表结构如下:
[0040]字段名 字段类型 字段描述
id int 数据源id
connect_name varchar 数据源的连接名称,用于区分多数据源
sdb_ip varchar 数据源的数据库ip
sdb_port int 数据源的数据库端口号
sdb_name varchar 数据源的数据库名称
sdb_username varchar 数据源的数据库登录用户名
sbd_password varchar 数据源的数据库登录密码
[0041] A01:建立动态增量抽取配置模板表,将所有ETL配置归总成固定成若干项;
[0042] 其中,动态增量抽取配置模板表结构如下:
[0043]
[0044]
[0045] A02:创建存储过程,通过读取数据源配置表和动态增量抽取配置表,实现对数据的抽取、过滤、转换以及装载;通过一套数据源配置模板表和一套基于数据库SQL语言的数据抽取、转换、装载的流程,完成多数据源场景下的数据仓库建立的工作;提高了效率;
[0046] A03:在目标数据库通过数据库SQL语言创建定时调度任务,调度任务定时执行A02步骤中创建好的存储过程,完成定期抽取源数据的功能;
[0047] A04:将ODS表的数据源配置按照配置模板录入数据源配置模板表,减少了数据仓库的运维难度;
[0048] A05:将ODS表的ETL配置按照配置模板录入动态增量抽取配置模板表,通过动态增量抽取配置模板表实现了数据仓库所有ODS层表的抽取、转换、装载,无需在基于每张ODS层表建立一套ETL流程;减少了ODS表创建ETL流程和任务的工作量,ETL配置化的方式管理了所有ODS表,减少了维护难度;
[0049] A06:启动定时调度任务,定时动态增量抽取数据,实际使用过程中,A00-A06均在目标数据库中实现。
[0050] 具体的,A02中数据的抽取、过滤、转换以及装载过程如下:
[0051] B00:获取数据源配置模板表中的配置;
[0052] B01:将远程源数据表映射到目标数据库本地;
[0053] B02:在目标数据库上建立目标数据表;
[0054] B03:根据动态增量抽取配置模板表对源数据进行动态增量抽取、转换,然后装载到目标数据表;
[0055] B04:更新动态增量抽取配置模板的增量标记点,为下次增量抽取数据做准备。
[0056] 值得注意的是,上述系统实施例中,所包括的各个单元只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
[0057] 另外,本领域普通技术人员可以理解实现上述各实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,相应的程序可以存储于一计算机可读取存储介质中。
[0058] 以上公开的本发明优选实施例只是用于帮助阐述本发明。优选实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施方式。显然,根据本说明书的内容,可作很多的修改和变化。本说明书选取并具体描述这些实施例,是为了更好地解释本发明的原理和实际应用,从而使所属技术领域技术人员能很好地理解和利用本发明。本发明仅受权利要求书及其全部范围和等效物的限制。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈