一种制造技术

技术编号:39719282 阅读:7 留言:0更新日期:2023-12-17 23:25
本申请涉及一种

【技术实现步骤摘要】
一种ETL执行模板的生成方法


[0001]本公开涉及
ETL
任务执行
,尤其涉及一种
ETL
执行模板的生成方法

系统和电子设备


技术介绍

[0002]如附图1所示的
ETL
任务执行示意图,主要是指在
ETL
模块的
JobEngine
任务工厂中进行任务执行,
ETL
任务执行,主要是对用户输入的算子图进行解析操作,生成对应的任务引擎通用脚本,以便在任务引擎中执行
。ETL
执行上下文工厂产生
ETL
执行上下文,基于
BaseETLContext
提供一些基础性的上下文的算子操作方法

[0003]ETL
执行上下文兼具两个功能:
[0004]一个是将参数转换为
DataFlow

BaseCommand
拓扑排序;
[0005]另一个是隔离其他域

使
ETL
不与其他域直接接触,防止两者直接耦合

[0006]因此
ETL
执行上下文相当于一个外观模式,目的是隐藏外部调用的复杂性,提供了
ETL
域与其他域交互的委托调用

[0007]而
ETL
任务,主要包含
ETL
任务执行流程以及对应的
ETL
务预览
。ETL
任务执行流程指的是按照预设的执行逻辑执行所构建的
ETL
任务,按照业务逻辑对
ETL
任务中的算子图进行解析和执行;以及
ETL
任务预览,按照一定的业务逻辑将
ETL
任务的执行结果展示给用户

[0008]从上来看,执行过程和预览过程,在逻辑上来看,
ETL
的执行和预览在执行流程上相似性很大

[0009]因此,为了遵循
DRY
原则,用户等不期望重复地实现相同的业务逻辑,也就是说希望按照一个统一的业务逻辑模式,能够重复调用并实现
ETL
的执行和预览,期望对
ETL
的执行和预览实现统一的处理流畅

[0010]因此,本申请欲在预览和执行之间抽取出一个统一的
ETL
执行模板,由模板工厂产生一个规范的执行模板,兜底一些统一的异常处理流程


技术实现思路

[0011]为了解决上述问题,本申请提出一种
ETL
执行模板的生成方法

系统和电子设备

[0012]本申请一方面,提出一种
ETL
执行模板的生成方法,包括如下步骤:
[0013]通过
ETL
执行上下文工厂

ETL Execution Context Factory
生成
ETL
执行上下文

ETL Execution Contextx

[0014]解析所述
ETL
执行上下文

ETL Execution Contextx
,得到所述
ETL
执行上下文中的执行逻辑:算子依赖

生命周期和基本属性;
[0015]将所述执行逻辑发送至预览工厂

ET LPreview Factory

[0016]由所述预览工厂

ET LPreview Factory
根据所述执行逻辑,生成业务逻辑与所述
ETL
执行上下文所对应的
ETL
业务执行模板

Abstract ETL Business Template。
[0017]作为本申请的一可选实施方案,可选地,所述算子依赖,包括:
[0018]支撑算子解析的相关封装逻辑;
[0019]算子解析中需要使用到外部的表达式构建;
[0020]算子依赖中会对算子解析需要使用的复杂函数进行封装,以便算子解析使用

[0021]作为本申请的一可选实施方案,可选地,所述生命周期,包括:
[0022]ETL
执行过程中需要创建
/
更新数据集;
[0023]获取输入
/
输出数据集;
[0024]检查输出数据集;
[0025]继承数据集;
[0026]运行完成通知;
[0027]检查输入数据集是否可用

[0028]作为本申请的一可选实施方案,可选地,所述基本属性,包括:
[0029]提供本次
ETL
运行时需要的基本属性,包括算子网

版本

拆分节点信息



所有者

优先级设置

附加任务参数和触发路径

[0030]作为本申请的一可选实施方案,可选地,由所述预览工厂

ET LPreview Factory
根据所述执行逻辑,生成业务逻辑与所述
ETL
执行上下文所对应的
ETL
业务执行模板

Abstract ETL Business Template
,包括:
[0031]所述预览工厂

ET LPreview Factory
根据所述
ETL
执行上下文中的执行逻辑:算子依赖

生命周期和基本属性,构建如下模板内容:
[0032](1)、
产生执行任务模块

spawn
,用于:
[0033]产生一个
ETL
执行任务并提交任务管理执行;
[0034](2)、
构建返回信息模块

build Response
,用于:
[0035]构建返回信息,包含任务
ID、
报错信息,以及前端进行展示;
[0036](3)、
任务执行前置检查模块

before Execute Task
,用于
[0037](3.1)、
任务执行时的前置逻辑检查:
[0038]根据参数判断,执行是否已经熔断;
[0039]判断是否设置了超时标识,具有超时标识则表示该
ETL
存在严重性能问题,不应允许执行;
[0040]判断是否已经处于运行中,防止重复运行;本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.
一种
ETL
执行模板的生成方法,其特征在于,包括如下步骤:通过
ETL
执行上下文工厂

ETL Execution Context Factory
生成
ETL
执行上下文

ETL Execution Contextx
;解析所述
ETL
执行上下文

ETL Execution Contextx
,得到所述
ETL
执行上下文中的执行逻辑:算子依赖

生命周期和基本属性;将所述执行逻辑发送至预览工厂

ET LPreview Factory
;由所述预览工厂

ET LPreview Factory
根据所述执行逻辑,生成业务逻辑与所述
ETL
执行上下文所对应的
ETL
业务执行模板

Abstract ETL Business Template。2.
根据权利要求1所述的
ETL
执行模板的生成方法,其特征在于,所述算子依赖,包括:支撑算子解析的相关封装逻辑;算子解析中需要使用到外部的表达式构建;算子依赖中会对算子解析需要使用的复杂函数进行封装,以便算子解析使用
。3.
根据权利要求1所述的
ETL
执行模板的生成方法,其特征在于,所述生命周期,包括:
ETL
执行过程中需要创建
/
更新数据集;获取输入
/
输出数据集;检查输出数据集;继承数据集;运行完成通知;检查输入数据集是否可用
。4.
根据权利要求1所述的一种
ETL
执行模板的生成方法,其特征在于,所述基本属性,包括:提供本次
ETL
运行时需要的基本属性,包括算子网

版本

拆分节点信息



所有者

优先级设置

附加任务参数和触发路径
。5.
根据权利要求1所述的
ETL
执行模板的生成方法,其特征在于,由所述预览工厂

ET LPreview Factory
根据所述执行逻辑,生成业务逻辑与所述
ETL
执行上下文所对应的
ETL
业务执行模板

Abstract ETL Business Template
,包括:所述预览工厂

ET LPreview Factory
根据所述
ETL
执行上下文中的执行逻辑:算子依赖

生命周期和基本属性,构建如下模板内容:
(1)、
产生执行任务模块

spawn
,用于:产生一个
ETL
执行任务并提交任务管理执行;
(2)、
构建返回信息模块

build Response
,用于:构建返回信息,包含任务
ID、
报错信息,以及前端进行展示;
(3)、
任务执行前置检查模块

before Execute Task
,用于
(3.1)、
...

【专利技术属性】
技术研发人员:周远戴舒原吴宝琪张怡
申请(专利权)人:杭州观远数据有限公司
类型:发明
国别省市:

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

1