一种etl模型生成方法及装置的制造方法
【专利摘要】本申请提供一种ETL模型生成方法及装置,应用于ETL开发平台,ETL开发平台包括至少一种扩展,每种扩展包括至少一个第一数据模型,第一数据模型为以组件作为最小构成单元生成的指示特定数据处理流程的模型。该方法通过接收携带ETL分析需求的ETL模型生成请求;确定ETL需求分析包括的各个工程,分别属于每个工程的各个工作流组,以及分别属于每个工作流组的各个工作流;针对每个工程,利用工程所属的扩展中的第一数据模型,生成与工程对应的数据模型(数据模型包括工程中的各个工作流组中每个工作流对应的第二数据模型);根据各个数据模型,生成与ETL模型生成请求对应的ETL目标数据模型的方式,实现了生成ETL模型的目的。
【专利说明】
一种ETL模型生成方法及装置
技术领域
[0001]本发明涉及数据处理技术领域,特别是涉及一种ETL模型生成方法及装置。
【背景技术】
[0002]信息是现代企业的重要资源,是企业运用科学管理、决策分析的基础。目前,大多数企业花费大量的资金和时间来构建联机事务处理系统和办公自动化系统,用来记录事务处理的各种相关数据。据统计,记录的事务处理的数据每2?3年时间就会成倍增长,这些数据蕴含着巨大的商业价值,而企业所关注的通常只占在总数据的2%?4%左右。可见,企业并没有最大化地利用已存储的数据资源,以致于浪费了很多的时间和资金,也失去制定关键商业决策的最佳契机。于是,企业如何把数据转换为需要的信息、知识,已经成了提高核心竞争力的主要方向。
[0003]目前,企业一般通过使用ETL达到将数据转换为需要的信息、知识的目的,以提高企业核心竞争力。其中,ETL为Extract-Transform-Load的缩写,中文名称为数据抽取、转换和加载。ETL是数据仓库的核心和灵魂,负责完成数据从数据源向目标数据仓库转化的过程,是实施数据仓库的重要步骤。
[0004]随着ETL在企业应用中地位的提升,ETL模型生成技术也越来越受到人们关注。ETL模型生成技术对于ETL在企业应用中起着举足轻重的基础作用,是不可或缺的一环。
【发明内容】
[0005]有鉴于此,本发明实施例提供一种ETL模型生成方法及装置,以实现生成ETL模型的目的。
[0006]为了实现上述目的,本发明实施例提供的技术方案如下:
[0007]—种ETL模型生成方法,应用于ETL开发平台,所述ETL开发平台包括至少一种扩展,每种所述扩展对应ETL作业中的唯一种业务处理方式;每种所述扩展包括至少一个第一数据模型,所述第一数据模型为以组件作为最小构成单元生成的指示特定数据处理流程的模型;所述组件指示所述特定数据处理流程中的单个处理动作;
[0008]该方法包括:
[0009]接收ETL模型生成请求,所述ETL模型生成请求中携带ETL需求分析;
[0010]确定所述ETL需求分析包括的各个工程,分别属于每个所述工程的各个工作流组,以及分别属于每个所述工作流组的各个工作流;
[0011]针对每个所述工程,利用所述工程所属的扩展中的第一数据模型,生成与所述工程对应的数据模型,所述数据模型包括:所述工程中的各个工作流组中每个工作流对应的第二数据模型;
[0012]根据各个所述数据模型,生成与所述ETL模型生成请求对应的ETL目标数据模型。
[0013]优选的,所述利用所述工程所属的扩展中的第一数据模型,生成与所述工程对应的数据模型,包括:
[0014]针对所述工程中的各个工作流组中的每个工作流,利用所述工程所属的扩展中的第一数据模型,生成与所述工作流对应的第二数据模型;
[0015]其中,所述利用所述工程所属的扩展中的第一数据模型,生成与所述工作流对应的第二数据模型包括,响应接收到的用户输入的与所述工作流对应的建模操作,根据所述建模操作中包括的各个第一数据模型以及各个所述第一数据模型的数据处理流程,生成与所述工作流对应的第二数据模型。
[0016]优选的,所述根据各个所述数据模型,生成与所述ETL模型生成请求对应的ETL目标数据模型,包括:
[0017]将所有所述数据模型的集合,作为与所述ETL模型生成请求对应的ETL目标数据模型;
[0018]其中,所述集合中的每个数据模型分别对应一个唯一的第一标识信息,所述第一标识信息指示与其对应的数据模型所对应工程;所述数据模型中的每个第二数据模型分别对应一个唯一的第二标识信息,所述第二标识信息指示与其对应的第二数据模型所对应的工作流,以及所述工作流所属的工作流组,以及所述工作流组所属的工程。
[0019]优选的,还包括:
[0020]利用所述第一标识信息和第二标识信息,关联显示所述ETL目标数据模型中的各个数据模型;
[0021 ]针对每个所述数据模型,关联显示属于所述数据模型的每个工作流组;
[0022]针对每个所述工作流组,关联显示属于所述工作流组的每个工作流对应的第二数据模型。
[0023]优选的,还包括:
[0024]接收ETL文件生成请求,所述ETL文件生成请求中包括ETL文件格式需求;
[0025]根据所述ETL目标数据模型,生成满足所述ETL文件格式需求的ETL文件。
[0026]优选的,当所述ETL文件格式需求为生成的ETL文件的格式适用于任何数据平台时,
[0027]根据所述ETL目标数据模型,生成的ETL文件为可被任何所述数据平台识别的ETL中间结果文件;其中,所述ETL中间结果文件所应用的数据平台,可接收携带第一目标格式要求的转换请求,将所述中间结果文件转换成满足所述第一目标格式要求的ETL文件。
[0028]优选的,当所述ETL文件格式需求为生成的ETL文件的格式适用于目标数据平台时,
[0029]根据所述ETL目标数据模型,生成的ETL文件为满足所述目标数据平台的第二目标格式要求的ETL文件。
[0030]优选的,还包括:
[0031 ]将所述ETL文件发送至共享服务器,以实现所述ETL文件的共享。
[0032]优选的,还包括:
[0033]响应接收到的ETL测试请求,将所述ETL文件发送至远程服务器;
[0034]接收所述远程服务器反馈的所述ETL文件的测试结果。
[0035]—种ETL模型生成装置,应用于ETL开发平台,所述ETL开发平台包括至少一种扩展,每种所述扩展对应ETL作业中的唯一种业务处理方式;每种所述扩展包括至少一个第一数据模型,所述第一数据模型为以组件作为最小构成单元生成的指示特定数据处理流程的模型;所述组件指示所述特定数据处理流程中的单个处理动作;
[0036]该装置包括:
[0037]请求接收单元,用于接收ETL模型生成请求,所述ETL模型生成请求中携带ETL需求分析;
[0038]信息确定单元,用于确定所述ETL需求分析包括的各个工程,分别属于每个所述工程的各个工作流组,以及分别属于每个所述工作流组的各个工作流;
[0039]数据模型生成单元,用于针对每个所述工程,利用所述工程所属的扩展中的第一数据模型,生成与所述工程对应的数据模型,所述数据模型包括:所述工程中的各个工作流组中每个工作流对应的第二数据模型;
[0040]ETL目标数据模型生成单元,用于根据各个所述数据模型,生成与所述ETL模型生成请求对应的ETL目标数据模型。
[0041]本申请提供一种ETL模型生成方法及装置,应用于ETL开发平台,ETL开发平台包括至少一种扩展,每种扩展包括至少一个第一数据模型,第一数据模型为以组件作为最小构成单元生成的指示特定数据处理流程的模型。该方法通过接收携带ETL分析需求的ETL模型生成请求;确定ETL需求分析包括的各个工程,分别属于每个工程的各个工作流组,以及分别属于每个工作流组的各个工作流;针对每个工程,利用工程所属的扩展中的第一数据模型,生成与工程对应的数据模型(其中,数据模型包括工程中的各个工作流组中每个工作流对应的第二数据模型);进而根据各个数据模型,生成与ETL模型生成请求对应的ETL目标数据模型的方式,实现了生成ETL模型的目的。
【附图说明】
[0042]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0043]图1为本申请实施例提供的一种ETL模型生成方法流程图;
[0044]图2为本申请实施例提供的另一种ETL模型生成方法流程图;
[0045]图3为本申请实施例提供的一种ETL模型生成装置的结构示意图;
[0046]图4为本申请实施例提供的另一种ETL模型生成装置的结构示意图;
[0047]图5为本申请实施例提供的又一种ETL模型生成装置的结构示意图。
【具体实施方式】
[0048]为了使本技术领域的人员更好地理解本发明中的技术方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
[0049]实施例:
[0050]图1为本申请实施例提供的一种ETL模型生成方法流程图。
[0051]在本申请实施例中,优选的,如图1所示的一种ETL模型生成方法应用于ETL开发平台,ETL开发平台包括至少一种扩展,每种扩展对应ETL作业中的唯一种业务处理方式;每种扩展包括至少一个第一数据模型,第一数据模型为以组件作为最小构成单元生成的指示特定数据处理流程的模型;组件指示特定数据处理流程中的单个处理动作。
[0052]可选的,ETL开发平台包括至少一种扩展,每种扩展对应ETL作业中的唯一种业务处理方式。其中,扩展包括:操作数据层(0DS)、基础数据层(BDS)、共性加工数据层(GDS)Ji据集市层(DMS)等。
[0053]ODS = Operat1n Data操作数据层,该层尽量保持业务数据原貌,保留源系统的原始和历史数据,该层保存时间相对较短的历史数据,能够方便且快速地支持需要按源系统数据结构进行数据加工的分析型应用。
[0054]BDS = Basic Data Store基础数据层,该层基于事实与维度建模方法,按客户、产品、合约、存款、贷款等业务主题对数据进行拼接与整合,形成企业级的统一数据视图;同时,保留详细的历史数据,用于支持各类整合型的分析型应用。
[0055]GDS:General Data Sect1n共性加工数据层,该层由基础数据区数据进行预关联、预汇总和预加工形成标准统一、口径一致、可复用的公共数据,该层兼顾了业务需求和数据处理性能,有多种数据粒度和数据保留周期。
[0056]DMS:Data Market Sect1n数据集市层,满足特定的部门或者用户需求,按照多维的方式进行存储,包括定义维度、需要计算的指标、维度的层次等,生成面向决策分析需求的数据立方体。
[0057]以上仅仅为本申请实施例的优选方式,发明人可根据自己的需求任意设置扩展的具体内容,如调度等,在此不做限定。
[0058]可选的,每种扩展均包括至少一个第一数据模型,该第一数据模型为以组件作为最小构成单元生成的指示特定数据处理流程的模型。其中,第一数据模型指示的特定数据处理流程,属于该第一数据模型所属的扩展对应的业务处理方式。
[0059]可选的,组件指示特定数据处理流程中的单个处理动作。例如,当第一数据模型指示的特定数据处理流程为:先执行数据插入,在执行数据更新,进而执行数据导出时,第一数据模型由三个组件构成,分别为数据插入组件、数据更新组件以及数据导出组件。其中,数据插入组件指示特定数据处理流程中的数据插入动作、数据更新组件指示特定数据处理流程中的数据更新动作、数据导出组件指示特定数据处理流程中的数据导出动作。
[0060]以上仅仅是本申请实施例的优选方式,发明人可根据自己的需求任意设置组件以及第一数据模型对应的特定数据处理流程的具体内容,在此不做限定。
[0061]如图1所示,该方法包括:
[0062]SlOl、接收ETL模型生成请求,ETL模型生成请求中携带ETL需求分析;
[0063]在本申请实施例中,优选的,ETL模型生成请求是由用户向ETL开发平台发送的,并且用户发送的ETL模型生成请求中携带了 ETL需求分析。
[0064]可选的,ETL需求分析是用户根据自己对于待生成的ETL模型的功能需求而生成的。
[0065]可选的,本申请实施例提供的一种ETL模型生成方法,根据ETL需求分析可生成满足该ETL需求分析指示的ETL模型的功能需求的ETL模型。
[0066]S102、确定ETL需求分析包括的各个工程,分别属于每个工程的各个工作流组,以及分别属于每个工作流组的各个工作流;
[0067]可选的,ETL需求分析中包括至少一个工程,且每个工程中包括至少一个工作流组,每个工作流组中包括至少一个工作流。当接收到ETL模型生成请求后,可确定该ETL模型生成请求中携带的ETL需求分析中包括的工程,以及每个工程包括的工作流组,以及每个工作流组包括的工作流。
[0068]可选的,ETL需求分析中的每个工程携带一个唯一的工程标识,每个工作流组携带一个唯一的工作流组标识(该工作流组标识指示与其对应的工作流组所属的工程),每个工作流携带一个唯一的工作流标识(该工作流标识指示与其对应的工作流所属的工作流组)。进而,当接收到ETL模型生成请求后,可根据工程标识、工作流组标识以及工作流标识,确定ETL需求分析中的各个工程,每个工程包括的工作流组,以及每个工作流组包括的工作流。
[0069]以上仅仅是本申请实施例的优选方式,发明人可根据自己的需求任意设置确定ETL需求分析包括的各个工程,分别属于每个工程的各个工作流组,以及分别属于每个工作流组的各个工作流的方式,在此不做限定。
[0070]S103、针对每个工程,利用工程所属的扩展中的第一数据模型,生成与工程对应的数据模型,数据模型包括:工程中的各个工作流组中每个工作流对应的第二数据模型;
[0071]可选的,针对ETL需求分析中的每个工程执行以下过程:利用工程所属的扩展中的第一数据模型,生成与工程对应的数据模型,数据模型包括:工程中的各个工作流组中每个工作流对应的第二数据模型。
[0072]可选的,ETL需求分析中的每个工程还携带一个扩展标识。扩展标识指示的扩展,即为携带该扩展标识的工程所属的扩展。
[0073]S104、根据各个数据模型,生成与ETL模型生成请求对应的ETL目标数据模型。
[0074]为了使得本申请实施例提供的一种ETL模型生成方法更加清楚、完整,在此对本申请实施例提供的一种ETL模型生成方法中的“利用工程所属的扩展中的第一数据模型,生成与工程对应的数据模型”的方法进行详细介绍。
[0075]在本申请实施例中,优选的,利用工程所属的扩展中的第一数据模型,生成与工程对应的数据模型的方法,具体包括:针对工程中的各个工作流组中的每个工作流,利用工程所属的扩展中的第一数据模型,生成与工作流对应的第二数据模型。
[0076]可选的,利用工程所属的扩展中的第一数据模型,生成与工作流对应的第二数据模型包括,响应接收到的用户输入的与工作流对应的建模操作,根据建模操作中包括的各个第一数据模型以及各个第一数据模型的数据处理流程,生成与工作流对应的第二数据模型。
[0077]在本申请实施例中,优选的,可接收用户输入的与工作流对应的建模操作。其中,接收建模操作的过程包括:接收用户将第一数据模型拖入建模操作区域的动作,确定用户拖入建模操作区域中的各个第一数据模型;以及接收用户在建模操作区域对其拖入的各个第一数据模型赋予的数据处理流程(即各个第一数据模型的数据处理顺序)。
[0078]可选的,根据用户针对工作流,拖入建模操作区域中的各个第一数据模型以及为建模操作区域中的各个第一数据模型赋予的数据处理流程,可生成与该工作流对应的第二数据模型。
[0079]通过上述对本申请实施例提供的ETL模型生成方法中的“利用工程所属的扩展中的第一数据模型,生成与工程对应的数据模型”方法的进一步介绍,使得本申请实施例提供的ETL模型生成方法更加清晰、完整,便于本领域技术人员理解。
[0080]为了使得本申请实施例提供的一种ETL模型生成方法更加清楚、完整,在此对本申请实施例提供的一种ETL模型生成方法中的“根据各个数据模型,生成与ETL模型生成请求对应的ETL目标数据模型”的方法进行详细介绍。
[0081]在本申请实施例中,优选的,根据各个数据模型,生成与ETL模型生成请求对应的ETL目标数据模型,包括:将所有数据模型的集合,作为与ETL模型生成请求对应的ETL目标数据模型。
[0082]可选的,集合中的每个数据模型分别对应一个唯一的第一标识信息,第一标识信息指示与其对应的数据模型所对应工程;数据模型中的每个第二数据模型分别对应一个唯一的第二标识信息,第二标识信息指示与其对应的第二数据模型所对应的工作流,以及工作流所属的工作流组,以及工作流组所属的工程。
[0083]通过上述对本申请实施例提供的ETL模型生成方法中的“根据各个数据模型,生成与ETL模型生成请求对应的ETL目标数据模型”方法的进一步介绍,使得本申请实施例提供的ETL模型生成方法更加清晰、完整,便于本领域技术人员理解。
[0084]为了便于用户对本申请实施例提供的一种ETL模型生成方法所生成的ETL目标数据模型的了解,本申请实施例在上述实施例的基础上,在根据各个数据模型,生成与ETL模型生成请求对应的ETL目标数据模型之后,进一步包括:
[0085]利用第一标识信息和第二标识信息,关联显示ETL目标数据模型中的各个数据模型;针对每个数据模型,关联显示属于数据模型的每个工作流组;针对每个工作流组,关联显示属于工作流组的每个工作流对应的第二数据模型。
[0086]可选的,本申请实施例提供的一种ETL模型生成方法,在生成ETL目标数据模型之后,还可显示该ETL目标数据模型。
[0087]可选的,显示生成的ETL目标数据模型的方式为:关联显示ETL目标数据模型中的各个数据模型(其中,关联显示各个数据模型的方式为:将各个数据模型同时在第一层级显示);针对显示的每个数据模型对其划分第二层级,在每个数据模型划分的第二层级中,关联显示属于该数据模型的每个工作流组(其中,关联显示属于数据模型的每个工作流组的方式为:在针对给数据模型划分的第二层级中,同时显示属于该数据模型的各个工作流组);针对显示的每个工作流组对其划分第三层级,在每个工作流组划分的第三层级中,关联显示属于该工作流组的每个工作流对应的第二数据模型(其中,关联显示属于工作流组的每个工作流对应的第二数据模型的方式为:在针对给工作流组划分的第三层级中,同时显示属于该工作流组的每个工作流对应的第二数据模型)。
[0088]可选的,可响应接收到的用户输入的显示规则,显示第一层级、第二层级和/或第三层级。
[0089]在上述实施例提供的一种ETL模型生成方法的基础上,在根据各个数据模型,生成与ETL模型生成请求对应的ETL目标数据模型之后,通过对生成的ETL目标数据模型的显示,使得本申请实施例提供的一种ETL模型生成方法更加人性化,便于用户理解。
[0090]图2为本申请实施例提供的另一种ETL模型生成方法流程图。
[0091]如图2所示,该方法包括:
[0092]S201、接收ETL模型生成请求,ETL模型生成请求中携带ETL需求分析;
[0093]S202、确定ETL需求分析包括的各个工程,分别属于每个工程的各个工作流组,以及分别属于每个工作流组的各个工作流;
[0094]S203、针对每个工程,利用工程所属的扩展中的第一数据模型,生成与工程对应的数据模型,数据模型包括:工程中的各个工作流组中每个工作流对应的第二数据模型;
[0095]S204、根据各个数据模型,生成与ETL模型生成请求对应的ETL目标数据模型;
[0096]本申请实施例中的步骤S201-S204的执行过程与上述实施例中的步骤S101-S104的执行过程相同,有关步骤S201-S204的具体执行过程,请参见上述实施例中对S101-S104的描述,在此不做赘述。
[0097]S205、接收ETL文件生成请求,ETL文件生成请求中包括ETL文件格式需求;
[0098]在本申请实施例中,优选的,在生成ETL目标数据模型后,还可接收ETL文件生成请求。具体的,在接收到的ETL文件生成请求中包括ETL文件格式需求。
[0099]S206、根据ETL目标数据模型,生成满足ETL文件格式需求的ETL文件。
[0100]在本申请实施例中,优选的,在接收到ETL文件生成请求后,可根据生成的ETL目标数据模型生成ETL文件。其中,生成的ETL文件满足ETL文件生成请求中携带的ETL文件格式需求。
[0101]在本申请实施例中,优选的,当ETL文件格式需求为生成的ETL文件的格式适用于任何数据平台时,根据ETL目标数据模型,生成的ETL文件为可被任何数据平台识别的ETL中间结果文件。
[0102]可选的,ETL中间结果文件所应用的数据平台,可接收携带第一目标格式要求的转换请求,将中间结果文件转换成满足第一目标格式要求的ETL文件。
[0103]可选的,生成的ETL中间结果文件的格式为XML格式。其中,XML格式的ETL中间结果文件可适用于任何数据平台。
[0104]以上仅仅是本申请实施例的优选方式,发明人可根据自己的需求任意设置生成的ETL中间结果文件的具体格式,在此不做限定。
[0105]可选的,当ETL中间结果文件放置于不同的数据平台时(S卩ETL中间结果文件在不同的数据平台使用时),放置有ETL中间结果文件的数据平台可接收用户输入的转换请求(该转换请求中携带第一目标格式要求),进而将放置于该数据平台的ETL中间结果文件转换成满足第一目标格式要求的ETL文件。
[0106]在本申请实施例中,优选的,当ETL文件格式需求为生成的ETL文件的格式适用于目标数据平台时,根据ETL目标数据模型,生成的ETL文件为满足目标数据平台的第二目标格式要求的ETL文件。
[0107]可选的,当ETL文件格式需求为生成的ETL文件的格式适用于目标数据平台时,可首先确定与目标数据平台对应的第二目标格式要求,进而根据ETL目标数据模型,生成满足第二目标格式要求的ETL文件。
[0108]在上述实施例提供的一种ETL模型生成方法的基础上,在根据各个数据模型,生成与ETL模型生成请求对应的ETL目标数据模型之后,通过根据ETL目标数据模型生成ETL文件的方式,可便于同一 ETL文件被不同数据平台使用,便于ETL模型的移植应用,使得本申请实施例提供的一种ETL模型生成方法更加人性化,便于用户使用。
[0109]进一步的,本申请实施例提供的一种ETL模型生成方法中,在生成ETL文件之后,还包括:将ETL文件发送至共享服务器,以实现ETL文件的共享。
[0110]在本申请实施例中,优选的,将ETL文件发送至共享服务器后,可实现ETL文件的共享。例如,当其他用户登录共享服务器后,若看到满足其需求的ETL文件,则可直接从该共享服务器中下载该ETL文件(实现ETL文件的获取),并将获取到的ETL文件应用在其需要应用的数据平台上。
[0111]在本申请实施例中,为了便于从共享服务器获取到的ETL文件可被多种数据平台识别应用。优选的,将放置在共享服务器的ETL文件设置为ETL中间结果文件。
[0112]本申请实施例通过在上述实施例提供的一种ETL模型生成方法的基础上,进一步增加将生成的ETL文件进行共享的过程,使得本申请实施例提供的ETL模型生成方法的内容更加丰富、更加人性化、便于应用。
[0113]进一步的,本申请实施例提供的一种ETL模型生成方法中,在生成ETL文件之后,还包括:响应接收到的ETL测试请求,将ETL文件发送至远程服务器;接收远程服务器反馈的ETL文件的测试结果。
[0114]在本申请实施例中,优选的,在生成ETL文件后,ETL开发平台可接收用户输入的ETL测试请求,并响应接收到的ETL测试请求,将生成的ETL文件发送至远程服务器,以便远程服务器对接收到的ETL文件进行测试,并反馈测试结果,进而便于ETL开发平台接收由远程服务器反馈的ETL文件的测试结果。
[0115]本申请实施例通过在上述实施例提供的一种ETL模型生成方法的基础上,进一步增加通过远程服务器对生成的ETL文件进行测试的方案,使得本申请实施例提供的ETL模型生成方法所生成的ETL文件更加准确。
[0116]本申请提供一种ETL模型生成方法,应用于ETL开发平台,ETL开发平台包括至少一种扩展,每种扩展包括至少一个第一数据模型,第一数据模型为以组件作为最小构成单元生成的指示特定数据处理流程的模型。该方法通过接收携带ETL分析需求的ETL模型生成请求;确定ETL需求分析包括的各个工程,分别属于每个工程的各个工作流组,以及分别属于每个工作流组的各个工作流;针对每个工程,利用工程所属的扩展中的第一数据模型,生成与工程对应的数据模型(其中,数据模型包括工程中的各个工作流组中每个工作流对应的第二数据模型);进而根据各个数据模型,生成与ETL模型生成请求对应的ETL目标数据模型的方式,实现了生成ETL模型的目的。
[0117]图3为本申请实施例提供的一种ETL模型生成装置的结构示意图。
[0118]如图3所示的一种ETL模型生成装置应用于ETL开发平台,ETL开发平台包括至少一种扩展,每种扩展对应ETL作业中的唯一种业务处理方式;每种扩展包括至少一个第一数据模型,第一数据模型为以组件作为最小构成单元生成的指示特定数据处理流程的模型;组件指示特定数据处理流程中的单个处理动作。
[0119]如图3所示,该装置包括:
[0120]请求接收单元31,用于接收ETL模型生成请求,ETL模型生成请求中携带ETL需求分析;
[0121]信息确定单元32,用于确定ETL需求分析包括的各个工程,分别属于每个工程的各个工作流组,以及分别属于每个工作流组的各个工作流;
[0122]数据模型生成单元33,用于针对每个工程,利用工程所属的扩展中的第一数据模型,生成与工程对应的数据模型,数据模型包括:工程中的各个工作流组中每个工作流对应的第二数据模型;
[0123]ETL目标数据模型生成单元34,用于根据各个数据模型,生成与ETL模型生成请求对应的ETL目标数据模型。
[0124]在本申请实施例中,优选的,数据模型生成单元33针对工程中的各个工作流组中的每个工作流,利用工程所属的扩展中的第一数据模型,生成与工作流对应的第二数据模型;其中,利用工程所属的扩展中的第一数据模型,生成与工作流对应的第二数据模型包括,响应接收到的用户输入的与工作流对应的建模操作,根据建模操作中包括的各个第一数据模型以及各个第一数据模型的数据处理流程,生成与工作流对应的第二数据模型。
[0125]在本申请实施例中,优选的,ETL目标数据模型生成单元34将所有数据模型的集合,作为与ETL模型生成请求对应的ETL目标数据模型;其中,集合中的每个数据模型分别对应一个唯一的第一标识信息,第一标识信息指示与其对应的数据模型所对应工程;数据模型中的每个第二数据模型分别对应一个唯一的第二标识信息,第二标识信息指示与其对应的第二数据模型所对应的工作流,以及工作流所属的工作流组,以及工作流组所属的工程。
[0126]进一步的,在本申请实施例提供的一种ETL模型生成装置中,还包括:显示单元,该显示单元,用于利用第一标识信息和第二标识信息,关联显示ETL目标数据模型中的各个数据模型;针对每个数据模型,关联显示属于数据模型的每个工作流组;针对每个工作流组,关联显示属于工作流组的每个工作流对应的第二数据模型。
[0127]图4为本申请实施例提供的另一种ETL模型生成装置的结构示意图。
[0128]如图4所示的ETL模型生成装置,在上述如图3所示的ETL模型生成装置的基础上,进一步包括:ETL文件生成单元41。
[0129]其中,ETL文件生成单元41,用于接收ETL文件生成请求,ETL文件生成请求中包括ETL文件格式需求;根据ETL目标数据模型,生成满足ETL文件格式需求的ETL文件。
[0130]在本申请实施例中,优选的,当ETL文件格式需求为生成的ETL文件的格式适用于任何数据平台时,根据ETL目标数据模型,生成的ETL文件为可被任何数据平台识别的ETL中间结果文件;其中,ETL中间结果文件所应用的数据平台,可接收携带第一目标格式要求的转换请求,将中间结果文件转换成满足第一目标格式要求的ETL文件。
[0131]在本申请实施例中,优选的,当ETL文件格式需求为生成的ETL文件的格式适用于目标数据平台时,根据ETL目标数据模型,生成的ETL文件为满足目标数据平台的第二目标格式要求的ETL文件。
[0132]进一步的,在本申请实施例提供的一种ETL模型生成装置中,还包括:共享单元,该共享单元,用于将ETL文件发送至共享服务器,以实现ETL文件的共享。
[0133]图5为本申请实施例提供的又一种ETL模型生成装置的结构示意图。
[0134]如图5所示的ETL模型生成装置,在上述如图4所示的ETL模型生成装置的基础上,进一步包括:测试单元51。
[0135]其中,测试单元51,用于响应接收到的ETL测试请求,将ETL文件发送至远程服务器;接收远程服务器反馈的ETL文件的测试结果。
[0136]本申请提供一种ETL模型生成装置,应用于ETL开发平台,ETL开发平台包括至少一种扩展,每种扩展包括至少一个第一数据模型,第一数据模型为以组件作为最小构成单元生成的指示特定数据处理流程的模型。该方法通过接收携带ETL分析需求的ETL模型生成请求;确定ETL需求分析包括的各个工程,分别属于每个工程的各个工作流组,以及分别属于每个工作流组的各个工作流;针对每个工程,利用工程所属的扩展中的第一数据模型,生成与工程对应的数据模型(其中,数据模型包括工程中的各个工作流组中每个工作流对应的第二数据模型);进而根据各个数据模型,生成与ETL模型生成请求对应的ETL目标数据模型的方式,实现了生成ETL模型的目的。
[0137]本发明中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
[0138]以上仅是本发明的优选实施方式,使本领域技术人员能够理解或实现本发明。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
【主权项】
1.一种ETL模型生成方法,其特征在于,应用于ETL开发平台,所述ETL开发平台包括至少一种扩展,每种所述扩展对应ETL作业中的唯一种业务处理方式;每种所述扩展包括至少一个第一数据模型,所述第一数据模型为以组件作为最小构成单元生成的指示特定数据处理流程的模型;所述组件指示所述特定数据处理流程中的单个处理动作; 该方法包括: 接收ETL模型生成请求,所述ETL模型生成请求中携带ETL需求分析; 确定所述ETL需求分析包括的各个工程,分别属于每个所述工程的各个工作流组,以及分别属于每个所述工作流组的各个工作流; 针对每个所述工程,利用所述工程所属的扩展中的第一数据模型,生成与所述工程对应的数据模型,所述数据模型包括:所述工程中的各个工作流组中每个工作流对应的第二数据模型; 根据各个所述数据模型,生成与所述ETL模型生成请求对应的ETL目标数据模型。2.根据权利要求1所述的方法,其特征在于,所述利用所述工程所属的扩展中的第一数据模型,生成与所述工程对应的数据模型,包括: 针对所述工程中的各个工作流组中的每个工作流,利用所述工程所属的扩展中的第一数据模型,生成与所述工作流对应的第二数据模型; 其中,所述利用所述工程所属的扩展中的第一数据模型,生成与所述工作流对应的第二数据模型包括,响应接收到的用户输入的与所述工作流对应的建模操作,根据所述建模操作中包括的各个第一数据模型以及各个所述第一数据模型的数据处理流程,生成与所述工作流对应的第二数据模型。3.根据权利要求2所述的方法,其特征在于,所述根据各个所述数据模型,生成与所述ETL模型生成请求对应的ETL目标数据模型,包括: 将所有所述数据模型的集合,作为与所述ETL模型生成请求对应的ETL目标数据模型; 其中,所述集合中的每个数据模型分别对应一个唯一的第一标识信息,所述第一标识信息指示与其对应的数据模型所对应工程;所述数据模型中的每个第二数据模型分别对应一个唯一的第二标识信息,所述第二标识信息指示与其对应的第二数据模型所对应的工作流,以及所述工作流所属的工作流组,以及所述工作流组所属的工程。4.根据权利要求3所述的方法,其特征在于,还包括: 利用所述第一标识信息和第二标识信息,关联显示所述ETL目标数据模型中的各个数据模型; 针对每个所述数据模型,关联显示属于所述数据模型的每个工作流组; 针对每个所述工作流组,关联显示属于所述工作流组的每个工作流对应的第二数据模型。5.根据权利要求1所述的方法,其特征在于,还包括: 接收ETL文件生成请求,所述ETL文件生成请求中包括ETL文件格式需求; 根据所述ETL目标数据模型,生成满足所述ETL文件格式需求的ETL文件。6.根据权利要求5所述的方法,其特征在于,当所述ETL文件格式需求为生成的ETL文件的格式适用于任何数据平台时, 根据所述ETL目标数据模型,生成的ETL文件为可被任何所述数据平台识别的ETL中间结果文件;其中,所述ETL中间结果文件所应用的数据平台,可接收携带第一目标格式要求的转换请求,将所述中间结果文件转换成满足所述第一目标格式要求的ETL文件。7.根据权利要求6所述的方法,其特征在于,当所述ETL文件格式需求为生成的ETL文件的格式适用于目标数据平台时, 根据所述ETL目标数据模型,生成的ETL文件为满足所述目标数据平台的第二目标格式要求的ETL文件。8.根据权利要求5所述的方法,其特征在于,还包括: 将所述ETL文件发送至共享服务器,以实现所述ETL文件的共享。9.根据权利要求5所述的方法,其特征在于,还包括: 响应接收到的ETL测试请求,将所述ETL文件发送至远程服务器; 接收所述远程服务器反馈的所述ETL文件的测试结果。10.一种ETL模型生成装置,其特征在于,应用于ETL开发平台,所述ETL开发平台包括至少一种扩展,每种所述扩展对应ETL作业中的唯一种业务处理方式;每种所述扩展包括至少一个第一数据模型,所述第一数据模型为以组件作为最小构成单元生成的指示特定数据处理流程的模型;所述组件指示所述特定数据处理流程中的单个处理动作; 该装置包括: 请求接收单元,用于接收ETL模型生成请求,所述ETL模型生成请求中携带ETL需求分析; 信息确定单元,用于确定所述ETL需求分析包括的各个工程,分别属于每个所述工程的各个工作流组,以及分别属于每个所述工作流组的各个工作流; 数据模型生成单元,用于针对每个所述工程,利用所述工程所属的扩展中的第一数据模型,生成与所述工程对应的数据模型,所述数据模型包括:所述工程中的各个工作流组中每个工作流对应的第二数据模型; ETL目标数据模型生成单元,用于根据各个所述数据模型,生成与所述ETL模型生成请求对应的ETL目标数据模型。
【文档编号】G06F17/30GK106021624SQ201610581334
【公开日】2016年10月12日
【申请日】2016年7月21日
【发明人】常青, 陈宏晓, 游黎
【申请人】中国农业银行股份有限公司