CN112667733A - 数据仓库数据导入方法与系统 - Google Patents
数据仓库数据导入方法与系统 Download PDFInfo
- Publication number
- CN112667733A CN112667733A CN202110276425.5A CN202110276425A CN112667733A CN 112667733 A CN112667733 A CN 112667733A CN 202110276425 A CN202110276425 A CN 202110276425A CN 112667733 A CN112667733 A CN 112667733A
- Authority
- CN
- China
- Prior art keywords
- data
- target
- import
- task
- source table
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Abstract
本发明提供了一种数据仓库数据导入方法与系统,该导入方法包括:数据导入系统唤起导入任务;被唤起的导入任务为目标导入任务;数据导入系统使用目标导入任务中配置的数据源连接信息获取源表;数据导入系统从源表中提取源表元数据和目标字段;目标字段根据第二映射关系决定;数据导入系统根据源表元数据和第一映射关系,调用相应的数据处理函数对提取出的目标字段进行数据处理;数据导入系统根据目标表元数据和第二映射关系,将经数据处理后的数据映射至数据仓库中目标表的相应字段中。从而解决了现有方式中每添加一个导入流都需要开发一个导入处理流程的问题,以及解决了中间数据和无用数据多的问题。
Description
技术领域
本发明涉及大数据处理技术领域,特别涉及数据仓库数据导入方法与系统。
背景技术
在对业务数据进行分析时,经常需要分析数月乃至数年的数据,涉及数万至数亿行,这样的查询计算量在业务数据库上时无法实现的。所以需要将数据导入到注重分析计算能力的数据仓库/分析型数据库中,在其上进行数据分析工作。
业务数据库中保存的信息不一定是完整的,需要进行跨库补齐或逻辑处理。
举例来讲,假设需要导入一个实体的销售信息,涉及两个表:表sell(销售数据表)和表item(详细信息表)。表sell的字段包括商品id,时间(time), 项目id(item_id),表item的字段包括项目id和项目名(item_name)。可见,在表sell表中对于商品存有商品id,相应的商品的名称、介绍等详细信息则在表item中。当这两张表处于不同的数据库时,即会出现跨库补齐的需求。
传统导入会包含下列流程:
将sell和item表各自全量导入到数据仓库,作为备份表sell’和item’;
用ETL(Extract-Transform-Load)处理系统读取数据仓库中的sell’和item’,对其进行join操作,生成一个具有全部所需要信息的宽表(目标表):表sell_mixed,其字段包括:商品id, time, item_id, item_name等;
最后将sell_mixed存入数据仓库。
并且,当处理过程中涉及较复杂的逻辑运算或正则匹配等需要时,则需要流处理系统参与。
例如,某表中包含客户端请求来源url,需要依靠url判断来源是否合法,及获取来源名称,此类需求仅靠SQL语句无法完成,需要开发流处理程序进行处理。流处理系统将原始业务数据(上述备份表sell’和item’)从数据仓库中读出后,将数据分割为多个片段,在多台机器上分别执行处理程序,最后汇总再存回数据仓库。
也即,数据仓库的传统解决方案是建立一套流处理流程或ETL流程,但这种方案存在如下问题:
每添加一个导入流(从原始业务数据加工得到目标表展示用统计数据的流程)都需要开发一个导入处理流程;
中间数据和无用数据多:导入多使用全量导入,并且中间数据(例如上述备份表sell’和item’)占用系统空间。
发明内容
有鉴于此,本发明实施例提供数据仓库数据导入方法与系统,以解决每添加一个导入流都需要开发一个导入处理流程,且中间数据和无用数据多的问题。
为实现上述目的,本发明实施例提供如下技术方案:
本申请第一方面提供了一种数据仓库数据导入方法,基于数据导入系统,所述数据导入系统维护有导入任务;每一导入任务通过配置页面预先配置;每一导入任务至少包括:数据源连接信息、源表元数据、目标表元数据、源表元数据中的字段名与数据处理函数之间的第一映射关系、源表元数据中字段名与目标表元数据中字段名间的第二映射关系;包括:
所述数据导入系统唤起导入任务;被唤起的导入任务为目标导入任务;
所述数据导入系统使用所述目标导入任务中配置的数据源连接信息获取源表;
所述数据导入系统从所述源表中提取源表元数据和目标字段;所述目标字段根据所述第二映射关系决定;
所述数据导入系统根据所述源表元数据和所述第一映射关系,调用相应的数据处理函数对提取出的目标字段进行数据处理;
所述数据导入系统根据所述目标表元数据和所述第二映射关系,将经数据处理后的数据映射至数据仓库中目标表的相应字段中。
可选的,所述导入任务还包括:
任务执行时间和时间窗;
所述唤起导入任务包括:
唤起任务执行时间与当前时刻相匹配的导入任务;
所述获取源表包括:
获取源表在所述时间窗内的原始数据;所述原始数据包括:源表元数据,以及,源表中各字段在所述时间窗内的业务数据;
所述从所述源表中提取源表元数据和目标字段包括:
从所述原始数据中提取源表元数据,以及提取目标字段在所述时间窗内的业务数据。
可选的,数据处理函数存储于通用数据处理函数库;
任一数据处理函数通过开发函数开发,或通过配置界面配置得到。
可选的,当调用的数据处理函数用于跨库数据映射处理时,所述对提取出的目标字段进行数据处理包括:
向目标数据库批量发送数据获取请求,每一数据获取请求包括目标字段中的业务数据;所述目标数据库与所述源表所属数据库为不同数据库;
接收所述目标数据库返回的数据;
所述根据所述目标表元数据和所述第二映射关系,将经数据处理后的数据映射至数据仓库中目标表的相应字段中包括:
由数据处理函数根据自身的映射处理逻辑,将返回的数据映射至目标表的相应字段中。
本申请第二方面提供了一种数据导入系统,包括:
任务系统、数据获取模块和数据处理模块;所述任务系统维护有导入任务;每一导入任务通过配置页面预先配置;每一导入任务至少包括:数据源连接信息、源表元数据、目标表元数据、源表元数据中的字段名与数据处理函数之间的第一映射关系、源表元数据中字段名与目标表元数据中字段名间的第二映射关系;
其中,
所述任务系统用于:唤起导入任务;被唤起的导入任务为目标导入任务;
所述数据获取模块用于:使用所述目标导入任务中配置的数据源连接信息获取源表;
从所述源表中提取源表元数据和目标字段;所述目标字段根据所述第二映射关系决定;
所述数据处理模块用于:
根据所述源表元数据和所述第一映射关系,调用相应的数据处理函数对提取出的目标字段进行数据处理;
根据所述目标表元数据和所述第二映射关系,将经数据处理后的数据映射至数据仓库中目标表的相应字段中。
可选的,所述导入任务还包括:
任务执行时间和时间窗;
在所述唤起导入任务的方面,所述任务系统具体用于:唤起任务执行时间与当前时刻相匹配的导入任务;
在所述获取源表的方面,所述数据获取模块具体用于:
获取源表在所述时间窗内的原始数据;所述原始数据包括:源表元数据,以及,源表中各字段在所述时间窗内的业务数据;
在所述从所述源表中提取源表元数据和目标字段的方面,所述数据获取模块具体用于:
从所述原始数据中提取源表元数据,以及提取目标字段在所述时间窗内的业务数据。
可选的,数据处理函数存储于通用数据处理函数库;
任一数据处理函数通过开发函数开发,或通过配置界面配置得到。
可选的,当调用的数据处理函数用于跨库数据映射处理时,在所述对提取出的目标字段进行数据处理的方面,所述数据处理模块通过调用数据获取模块执行:
向目标数据库批量发送数据获取请求,每一数据获取请求包括目标字段中的业务数据;所述目标数据库与所述源表所属数据库为不同数据库;
接收所述目标数据库返回的数据;
在所述根据所述目标表元数据和所述第二映射关系,将经数据处理后的数据映射至数据仓库中目标表的相应字段中的方面,所述数据处理模块具体用于:
由数据处理函数根据自身的映射处理逻辑,将返回的数据映射至目标表的相应字段中。
本申请第三方面提供了一种数据导入系统,至少包括处理器和存储器;处理器通过执行存储器中存放的程序以及调用其他设备,执行本申请第一方面所提供的数据仓库数据导入方法。
可见,在本发明实施例中,可通过调用数据处理函数进行数据处理。数据处理函数可以通过配置进行复用,任一导入流程需要使用时,不需要进行代码开发,只需要配置导入任务时配置调用函数即可。解决了现有方式中每添加一个导入流都需要开发一个导入处理流程的问题。并且,数据导入系统直接从数据源读取数据,进行处理后,直接存入数据仓库中的目标表,在此期间,不需要先将各种表全量导入到数据仓库,作为备份表,再从数据仓库中提取备份表进行数据处理,从而不产生中间数据,解决了中间数据和无用数据多的问题。可见,在本发明实施例中,可通过调用数据处理函数进行数据处理。数据处理函数可以通过配置进行复用,任一导入流程需要使用时,不需要进行代码开发,只需要配置导入任务时配置调用函数即可。解决了现有方式中每添加一个导入流都需要开发一个导入处理流程的问题。并且,数据导入系统直接从数据源读取数据,进行处理后,直接存入数据仓库中的目标表,在此期间,不需要先将各种表全量导入到数据仓库,作为备份表,再从数据仓库中提取备份表进行数据处理,从而不产生中间数据,解决了中间数据和无用数据多的问题。
附图说明
图1为本申请实施例提供的一种数据导入系统的结构示意图;
图2为本申请实施例提供的一种数据导入系统的应用场景示意图;
图3为本申请实施例提供的一种数据仓库数据导入方法的流程示意图;
图4为本申请实施例提供的另一种数据仓库数据导入方法的流程示意图;
图5为本申请实施例提供的一种数据导入系统的硬件结构示意图。
具体实施方式
本发明实施例提供了数据仓库数据导入方法与数据导入系统,以解决每添加一个导入流都需要开发一个导入处理流程,且中间数据和无用数据多的问题。
请参见图1,上述数据导入系统可包括任务系统1、数据获取模块2和数据处理模块3。
其中,任务系统1维护有导入任务。导入任务一般为定时执行的任务,也可为执行一次的任务。
每一导入任务可通过配置页面预先配置。因此,仍请参见图1,上述数据导入系统包括配置模块4。
本文后续将结合方法介绍每一模块或系统的作用。
图2示出了上述数据导入系统的一种示例性应用场景。在该应用场景中,数据导入系统部署于服务器中,位于数据仓库和数据源之间,相当于数据仓库与源数据之间的数据导入中间层。
下面将从技术角度介绍如何实现上述应用场景。
图3示出了由上述数据导入系统所执行的数据仓库数据导入方法的一种示例性流程,包括:
S1:数据导入系统唤起导入任务。
被唤起的导入任务可为目标导入任务。
具体的,每一导入任务至少包括如下内容:
1,源表元数据;
元数据即各列列名及列类型,如有表sell,元数据为(int id、dataTimecreate_time、string is_from、int item_id)。
2,数据源连接信息;
数据源可以为数据库或接口。
数据源连接信息和源表元数据用于连接数据源获取库、表、字段名和字段类型等。
具体的,在配置数据源连接信息时,可配置使用SQL语句,用于从数据库中获取数据,或通过URL从指定接口中获取。
3,目标表元数据;
目标表指最终在数据仓库中存储的表。
4,源表元数据中的字段名与数据处理函数之间的第一映射关系;
字段也即列,数据处理函数是针对列的数据处理函数。通过配置第一映射关系,可配置对源表中的字段的处理操作。如有表sell,元数据为(int id, dataTimecreate_time,string is_from, int item_id),可配置对is_from字段进行正则匹配判断来源,对item_id和item_name做id-name的映射,从id获取name。
5,源表元数据中字段名与目标表元数据中字段名间的第二映射关系。
例如,可将源表中的create_time与目标表中的create_time相映射。
S2:数据导入系统使用目标导入任务中配置的数据源连接信息获取源表。
具体的,可根据数据源连接信息的SQL语句或URL获取源表。
S3:数据导入系统从源表中提取源表元数据和目标字段。
其中,目标字段是根据第二映射关系决定的。第二映射关系中涉及的源表中的字段即为所需字段。
举例来讲,源表元数据为(字段名a、字段名b、字段名c、字段名d、字段名e),目标表元数据为(字段名1、字段名2、字段名3、字段名4),其中,字段名a与字段名1相映射,字段名c与字段名2相映射,字段名d与字段名4相映射,字段名e与字段名3相映射。
那么,目标字段就包括字段名a、c、d、e。
需要说明的是,在导入任务中配置了源表元数据,但在本步骤中还需要从数据库中获取源表元数据,以将获得的源表元数据与配置中的源表元数据进行比较。
S4:数据导入系统根据源表元数据和第一映射关系,调用相应的数据处理函数对提取出的目标字段进行数据处理。
举例来讲,对于表sell,元数据为(int id, dataTimecreate_time, string is_from, int item_id),即sell表中有id、creat_time、is_from和item_id四列,在第一映射关系中,可配置对id字段进行不满10位前面自动补0的数据处理函数,对is_from字段配置数据处理函数以进行正则匹配判断来源,对item_id和item_name配置数据处理函数以做id-name的映射,从id获取name,增加一列不存在于源表中的数据string item_name,将string item_name列映射到目标表的item_name列中,目标表元数据为(int id,dataTimecreate_time, string is_from, int item_id,stringitem_name),即比源表多一列item_name。
在提取到源表元数据和目标字段后,可根据第一映射关系,调用相应的数据处理函数对目标字段进行数据处理,得到经数据处理后的数据(字段)。
S5:数据导入系统根据目标表元数据和第二映射关系,将经数据处理后的数据映射至数据仓库中目标表的相应字段中。
举例来讲,假定源表元数据为(字段名a、字段名b、字段名c、字段名d、字段名e),目标表元数据为(字段名1、字段名2、字段名3、字段名4),其中,字段名a与字段名1相映射,字段名c与字段名2相映射,字段名d与字段名4相映射,字段名e与字段名3相映射。
那么,在对字段名a的字段进行数据处理后,会存至目标表的字段1中。
可见,在本发明实施例中,可通过调用数据处理函数进行数据处理。数据处理函数可以通过配置进行复用,任一导入流程需要使用时,不需要进行代码开发,只需要配置导入任务时配置调用函数即可。解决了现有方式中每添加一个导入流都需要开发一个导入处理流程的问题。并且,数据导入系统直接从数据源读取数据,进行处理后,直接存入数据仓库中的目标表,在此期间,不需要先将各种表全量导入到数据仓库,作为备份表,再从数据仓库中提取备份表进行数据处理,从而不产生中间数据,解决了中间数据和无用数据多的问题。
下面,以一更详细的例子,对数据仓库数据导入方法进行介绍。请参见图4,其示例性的包括如下步骤:
S400:数据导入系统提供配置页面,以获取导入任务的配置信息。
针对每一导入任务,在配置页面配置的配置信息包括但不限于:任务执行时间和时间窗、数据源连接信息、源表元数据、目标表元数据、源表元数据中的字段名与数据处理函数之间的第一映射关系、源表元数据中字段名与目标表元数据中字段名间的第二映射关系。
以任务执行时间为例,可配置任务在每天2:00执行。
时间窗指获取数据的时段,例如,时间窗可配置为:获取前日0:00至本日0:00的数据。
用户在配置完后,可点击配置页面上的“确定”或“生成”按钮,后续会生成导入任务。
S401:数据导入系统唤起任务执行时间与当前时刻相匹配的导入任务。
举例来讲,导入任务1的任务执行时间是每天2:00,导入任务2的任务执行时间是每天3:00,则在2:00时,会唤起导入任务1。
被唤起的导入任务可称为目标导入任务。
在一个示例中,可由前述的任务系统1(单独一个线程)按照各个导入任务的任务执行时间唤起相应的导入任务执行。
导入任务的执行历史会存入数据库中。
S402:数据导入系统从目标导入任务中配置的数据源连接信息,获取源表在时间窗内的原始数据。
其中,原始数据包括但不限于:源表元数据,以及,源表中各字段在时间窗内的业务数据。
举例来讲,时间窗配置为:前日0:00至本日0:00,则获取源表各字段在前日0:00至本日0:00内的业务数据。
在一个示例中,可由前述的数据获取模块2执行步骤S402。
S403:数据导入系统从原始数据中提取源表元数据,以及提取目标字段在时间窗内的业务数据(可称为目标业务数据)。
在一个示例中,可由前述的数据获取模块2执行步骤S403。
前述提及了,可配置使用SQL语句获取数据。可将时间窗口相关信息添加进SQL语句中。
举例来讲,假定某一导入任务配置的SQL语句包括:Create_time>{{start}} andcreat_time<{{end}}这样的占位符。这些占位符将在本步骤中,根据配置使用具体时间进行替换,如:Create_time> ‘2020-07-14’ and creat_time<‘2020-07-15。
目标字段根据第二映射关系决定。
数据获取模块2在提取出源表元数据和目标业务数据后,还可进行格式化,之后传递给前述的数据处理模块3。
S404:数据导入系统根据源表元数据和第一映射关系,调用相应的数据处理函数对提取出的目标业务数据进行数据处理。
不同的数据处理函数可实现不同的操作,其包括但不限于:
1,跨库的数据映射(例如id-name的映射):举例来讲表A中只存了商品id,而商品的名称、介绍等详细信息存储在表B中,那么在导入表A数据时,可配置实现跨库映射的数据处理函数,该函数可通过商品id获取商品的其他详细信息。
具体的,数据处理函数可调用数据获取模块向目标数据库批量发送数据获取请求,每一数据获取请求包括目标字段中的业务数据;
其中,目标数据库地址以及目标表可在数据处理函数中进行配置。
接收目标数据库返回的数据;
由数据处理函数根据自身的映射处理逻辑,将返回的数据映射至目标表的相应字段中。
以id-name的映射为例,在获取(集齐)一定数量的商品id后,向目标数据库批量发起请求(可选择每N个商品id同时发起),请求类似可根据数据处理函数的配置为SQL语句或URL请求,在获取目标数据库返回的商品详细信息后,可缓存并放入待存入数据仓库的数据。
2,正则匹配判断来源;
3,补零;
例如可配置对id字段进行不满10位前面自动补0的数据处理函数。
4,根据正则匹配进行替换;
5,小数据集的id名称替换(如1-正常;2-异常;3-暂停;4-已删除这类替换)等。
各数据处理函数可存储于通用数据处理函数库中。
任一数据处理函数可通过开发函数开发,或通过配置界面(模板)配置得到。例如id-name这样的简单映射关系可通过模板和元数据信息进行配置,而正则匹配或其他特殊需求则可通过开发函数完成。开发完成后,数据处理函数是可复用的,如商品id向商品名的映射在很多业务数据导入中均有需求,新加导入流程仅需要进行配置而不必进行开发。
S405:数据导入系统根据目标表元数据和第二映射关系,将经数据处理后的数据映射至数据仓库中目标表的相应字段中。
步骤S405与前述的S5相类似,在此不作赘述。
图1示出了上述数据导入系统的一种示例性结构,包括:
任务系统1,用于:唤起导入任务;
每一导入任务通过配置页面预先配置;
每一导入任务至少包括:数据源连接信息、源表元数据、目标表元数据、源表元数据中的字段名与数据处理函数之间的第一映射关系、源表元数据中字段名与目标表元数据中字段名间的第二映射关系;
被唤起的导入任务为目标导入任务。
数据处理函数存储于通用数据处理函数库;
任一数据处理函数通过开发函数开发,或通过配置界面配置得到。
数据获取模块2,用于:使用目标导入任务中配置的数据源连接信息获取源表。
从源表中提取源表元数据和目标字段(根据第二映射关系决定);
数据处理模块3,用于:
根据源表元数据和第一映射关系,调用相应的数据处理函数对提取出的目标字段进行数据处理;以及,根据目标表元数据和第二映射关系,将经数据处理后的数据映射至数据仓库中目标表的相应字段中。
由于每一导入任务可通过配置页面预先配置。因此,仍请参见图1,上述数据导入系统包括配置模块4。
在本发明其他实施例中,上述导入任务还可包括:任务执行时间和时间窗;
相应的,在唤起导入任务的方面,任务系统1具体可用于:唤起任务执行时间与当前时刻相匹配的导入任务;
在获取源表的方面,数据获取模块2具体可用于:
获取源表在时间窗内的原始数据;原始数据包括:源表元数据,以及,源表中各字段在时间窗内的业务数据;
而在从源表中提取源表元数据和目标字段的方面,数据获取模块2则可具体用于:
从原始数据中提取源表元数据,以及提取目标字段在时间窗内的业务数据。
在本发明其他实施例中,当调用的数据处理函数用于跨库数据映射处理时,在对提取出的目标字段进行数据处理的方面,数据处理模块3通过调用数据获取模块2执行:
向目标数据库批量发送数据获取请求,每一数据获取请求包括目标字段中的业务数据;目标数据库与源表所属数据库为不同数据库;
接收目标数据库返回的数据;
在根据目标表元数据和第二映射关系,将经数据处理后的数据映射至数据仓库中目标表的相应字段中的方面,数据处理模块具体用于:
由数据处理函数根据自身的映射处理逻辑,将返回的数据映射至目标表的相应字段中。
上述数据导入系统中的各模块可以软件或组件的形式部署于同一服务器上,或者,上述数据导入系统所包含的各模块可分别为独立的服务器。
图5示出了上述实施例中数据导入系统的一种可能的硬件结构示意图,包括:总线、处理器1、存储器2、通信接口3、输入设备4和输出设备5。处理器1、存储器2、通信接口3、输入设备4和输出设备5通过总线相互连接。其中:
总线可包括一通路,在计算机系统各个部件之间传送信息。
处理器1可以是通用处理器,例如通用中央处理器(CPU)、网络处理器(NetworkProcessor,简称NP)、微处理器等,也可以是特定应用集成电路(application-specificintegrated circuit,ASIC),或一个或多个用于控制本发明方案程序执行的集成电路。还可以是数字信号处理器(DSP)、现成可编程门阵字段(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
存储器2中保存有执行本发明技术方案的程序或脚本,还可以保存有操作系统和其他关键业务。具体地,程序可以包括程序代码,程序代码包括计算机操作指令。脚本则通常以文本(如ASCII)保存,只在被调用时进行解释或编译。
输入设备4可包括接收用户输入的数据和信息的系统,例如键盘、鼠标、摄像头、语音输入系统、触摸屏等。
输出设备5可包括允许输出信息给用户的系统,例如显示屏、扬声器等。
通信接口3可包括使用任何收发器一类的系统,以便与其他设备或通信网络通信,如以太网,无线接入网(RAN),无线局域网(WLAN)等。
处理器1通过执行存储器2中所存放的程序以及调用其他设备,可实现上述实施例提供的数据仓库数据导入方法。
此外,图5所示的数据导入系统中各单元的功能,可由前述的处理器1执行存储器2中所存放的程序以及调用其他设备实现。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及模型步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
结合本文中所公开的实施例描述的方法或模型的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、WD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (9)
1.一种数据仓库数据导入方法,其特征在于,基于数据导入系统,所述数据导入系统维护有导入任务;每一导入任务通过配置页面预先配置;每一导入任务至少包括:数据源连接信息、源表元数据、目标表元数据、源表元数据中的字段名与数据处理函数之间的第一映射关系、源表元数据中字段名与目标表元数据中字段名间的第二映射关系;
所述导入方法包括:
所述数据导入系统唤起导入任务;被唤起的导入任务为目标导入任务;
所述数据导入系统使用所述目标导入任务中配置的数据源连接信息获取源表;
所述数据导入系统从所述源表中提取源表元数据和目标字段;所述目标字段根据所述第二映射关系决定;
所述数据导入系统根据所述源表元数据和所述第一映射关系,调用相应的数据处理函数对提取出的目标字段进行数据处理;
所述数据导入系统根据所述目标表元数据和所述第二映射关系,将经数据处理后的数据映射至数据仓库中目标表的相应字段中。
2.如权利要求1所述的方法,其特征在于,
所述导入任务还包括:任务执行时间和时间窗;
所述唤起导入任务包括:
唤起任务执行时间与当前时刻相匹配的导入任务;
所述获取源表包括:
获取源表在所述时间窗内的原始数据;所述原始数据包括:源表元数据,以及,源表中各字段在所述时间窗内的业务数据;
所述从所述源表中提取源表元数据和目标字段包括:
从所述原始数据中提取源表元数据,以及提取目标字段在所述时间窗内的业务数据。
3.如权利要求1或2所述的方法,其特征在于,
数据处理函数存储于通用数据处理函数库;
任一数据处理函数通过开发函数开发,或通过配置界面配置得到。
4.如权利要求3所述的方法,其特征在于,
当调用的数据处理函数用于跨库数据映射处理时,所述对提取出的目标字段进行数据处理包括:
向目标数据库批量发送数据获取请求,每一数据获取请求包括目标字段中的业务数据;所述目标数据库与所述源表所属数据库为不同数据库;
接收所述目标数据库返回的数据;
所述根据所述目标表元数据和所述第二映射关系,将经数据处理后的数据映射至数据仓库中目标表的相应字段中包括:
由数据处理函数根据自身的映射处理逻辑,将返回的数据映射至目标表的相应字段中。
5.一种数据导入系统,其特征在于,包括:
任务系统、数据获取模块和数据处理模块;所述任务系统维护有导入任务;每一导入任务通过配置页面预先配置;每一导入任务至少包括:数据源连接信息、源表元数据、目标表元数据、源表元数据中的字段名与数据处理函数之间的第一映射关系、源表元数据中字段名与目标表元数据中字段名间的第二映射关系;
其中,
所述任务系统用于:唤起导入任务;被唤起的导入任务为目标导入任务;
所述数据获取模块用于:使用所述目标导入任务中配置的数据源连接信息获取源表;
从所述源表中提取源表元数据和目标字段;所述目标字段根据所述第二映射关系决定;
所述数据处理模块用于:
根据所述源表元数据和所述第一映射关系,调用相应的数据处理函数对提取出的目标字段进行数据处理;
根据所述目标表元数据和所述第二映射关系,将经数据处理后的数据映射至数据仓库中目标表的相应字段中。
6.如权利要求5所述的系统,其特征在于,
所述导入任务还包括:任务执行时间和时间窗;
在所述唤起导入任务的方面,所述任务系统具体用于:唤起任务执行时间与当前时刻相匹配的导入任务;
在所述获取源表的方面,所述数据获取模块具体用于:
获取源表在所述时间窗内的原始数据;所述原始数据包括:源表元数据,以及,源表中各字段在所述时间窗内的业务数据;
在所述从所述源表中提取源表元数据和目标字段的方面,所述数据获取模块具体用于:
从所述原始数据中提取源表元数据,以及提取目标字段在所述时间窗内的业务数据。
7.如权利要求5或6所述的系统,其特征在于,
数据处理函数存储于通用数据处理函数库;
任一数据处理函数通过开发函数开发,或通过配置界面配置得到。
8.如权利要求7所述的系统,其特征在于,
当调用的数据处理函数用于跨库数据映射处理时,在所述对提取出的目标字段进行数据处理的方面,所述数据处理模块通过调用数据获取模块执行:
向目标数据库批量发送数据获取请求,每一数据获取请求包括目标字段中的业务数据;所述目标数据库与所述源表所属数据库为不同数据库;
接收所述目标数据库返回的数据;
在所述根据所述目标表元数据和所述第二映射关系,将经数据处理后的数据映射至数据仓库中目标表的相应字段中的方面,所述数据处理模块具体用于:
由数据处理函数根据自身的映射处理逻辑,将返回的数据映射至目标表的相应字段中。
9.一种数据导入系统,其特征在于,至少包括处理器和存储器;处理器通过执行存储器中存放的程序以及调用其他设备,执行如权利要求1-4任一项的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110276425.5A CN112667733A (zh) | 2021-03-15 | 2021-03-15 | 数据仓库数据导入方法与系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110276425.5A CN112667733A (zh) | 2021-03-15 | 2021-03-15 | 数据仓库数据导入方法与系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112667733A true CN112667733A (zh) | 2021-04-16 |
Family
ID=75399417
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110276425.5A Pending CN112667733A (zh) | 2021-03-15 | 2021-03-15 | 数据仓库数据导入方法与系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112667733A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112860631A (zh) * | 2021-04-25 | 2021-05-28 | 成都淞幸科技有限责任公司 | 一种高效的元数据批量配置方法 |
CN113434606A (zh) * | 2021-06-30 | 2021-09-24 | 青岛海尔科技有限公司 | 一种数据导入方法、装置、设备及介质 |
CN116186130A (zh) * | 2022-12-26 | 2023-05-30 | 北京万里开源软件有限公司 | 一种MySQL协议数据库的数据导入导出方法及系统 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105354314A (zh) * | 2015-11-10 | 2016-02-24 | 中国建设银行股份有限公司 | 数据迁移方法及装置 |
CN105824849A (zh) * | 2015-01-08 | 2016-08-03 | 中国移动通信集团河南有限公司 | 一种数据导入方法及适配器 |
CN106257443A (zh) * | 2015-06-16 | 2016-12-28 | 华为软件技术有限公司 | 一种数据导入方法及装置 |
CN106687955A (zh) * | 2014-09-22 | 2017-05-17 | 甲骨文金融服务软件有限公司 | 简化将数据从数据源转移到数据目标的导入过程的调用 |
CN107145585A (zh) * | 2017-05-10 | 2017-09-08 | 温州市鹿城区中津先进科技研究院 | Hadoop数据仓库的自动导入数据方法及系统 |
CN107958057A (zh) * | 2017-11-29 | 2018-04-24 | 苏宁云商集团股份有限公司 | 一种用于异构数据库中数据迁移的代码生成方法及装置 |
CN108875017A (zh) * | 2018-06-20 | 2018-11-23 | 山东浪潮商用系统有限公司 | 一种基于Sqoop技术的海量数据同步系统及方法 |
-
2021
- 2021-03-15 CN CN202110276425.5A patent/CN112667733A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106687955A (zh) * | 2014-09-22 | 2017-05-17 | 甲骨文金融服务软件有限公司 | 简化将数据从数据源转移到数据目标的导入过程的调用 |
CN105824849A (zh) * | 2015-01-08 | 2016-08-03 | 中国移动通信集团河南有限公司 | 一种数据导入方法及适配器 |
CN106257443A (zh) * | 2015-06-16 | 2016-12-28 | 华为软件技术有限公司 | 一种数据导入方法及装置 |
CN105354314A (zh) * | 2015-11-10 | 2016-02-24 | 中国建设银行股份有限公司 | 数据迁移方法及装置 |
CN107145585A (zh) * | 2017-05-10 | 2017-09-08 | 温州市鹿城区中津先进科技研究院 | Hadoop数据仓库的自动导入数据方法及系统 |
CN107958057A (zh) * | 2017-11-29 | 2018-04-24 | 苏宁云商集团股份有限公司 | 一种用于异构数据库中数据迁移的代码生成方法及装置 |
CN108875017A (zh) * | 2018-06-20 | 2018-11-23 | 山东浪潮商用系统有限公司 | 一种基于Sqoop技术的海量数据同步系统及方法 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112860631A (zh) * | 2021-04-25 | 2021-05-28 | 成都淞幸科技有限责任公司 | 一种高效的元数据批量配置方法 |
CN113434606A (zh) * | 2021-06-30 | 2021-09-24 | 青岛海尔科技有限公司 | 一种数据导入方法、装置、设备及介质 |
CN116186130A (zh) * | 2022-12-26 | 2023-05-30 | 北京万里开源软件有限公司 | 一种MySQL协议数据库的数据导入导出方法及系统 |
CN116186130B (zh) * | 2022-12-26 | 2023-09-12 | 北京万里开源软件有限公司 | 一种MySQL协议数据库的数据导入导出方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112667733A (zh) | 数据仓库数据导入方法与系统 | |
CN109558575B (zh) | 在线表格编辑方法、装置、计算机设备及存储介质 | |
CN110162544B (zh) | 异构数据源数据获取方法及装置 | |
AU2019236628B2 (en) | Integrated entity view across distributed systems | |
US11366804B2 (en) | Integrated entity view across distributed systems | |
AU2017254506B2 (en) | Method, apparatus, computing device and storage medium for data analyzing and processing | |
CN110781183B (zh) | Hive数据库中增量数据的处理方法、装置以及计算机设备 | |
CN109241384B (zh) | 一种科研信息的可视化方法及装置 | |
CN109902117A (zh) | 业务系统分析方法和装置 | |
CN113268500B (zh) | 业务处理方法、装置及电子设备 | |
US11947613B2 (en) | System and method for efficiently querying data using temporal granularities | |
CN112416991A (zh) | 一种数据处理方法、装置以及存储介质 | |
US10635718B1 (en) | Method and system for implementing a data compare tool | |
US11269856B2 (en) | Methods, apparatuses, and systems for ingesting and consuming data utilizing a trading partner manager | |
US20140047377A1 (en) | Retrieving data from an external data source | |
CN112434056A (zh) | 一种详情数据的查询方法及装置 | |
CN110851518A (zh) | 知识产权案件数据导入方法、系统、电子终端及介质 | |
US10824803B2 (en) | System and method for logical identification of differences between spreadsheets | |
CN112491943A (zh) | 数据请求方法、装置、存储介质和电子设备 | |
US11609924B2 (en) | Database query execution on multiple databases | |
US20170161359A1 (en) | Pattern-driven data generator | |
CN115017185A (zh) | 一种数据处理方法、装置及存储介质 | |
CN112231377A (zh) | 数据映射方法、系统、装置、服务器和存储介质 | |
DE102017130229A1 (de) | Systeme und Verfahren für das Bereitstellen netzwerkübergreifender Ereigniszuordnung | |
CN116050371A (zh) | 一种通报报告生成方法、装置、设备及程序产品 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20210416 |
|
RJ01 | Rejection of invention patent application after publication |