1.概述
ETL任务流设计器是以图形化的方式完成ETL任务的前驱后继关系和调度顺序的定义。ETL任务依赖关系分为强制依赖和非强制依赖,强制依赖是指作业之间有着业务上的依赖关系,前置作业的输出作为后置作业的输入,只有前置作业执行完成后,才能进行后续作业的调度,而非强制依赖是指作业之间没有任何的业务依赖关系,为了管理的需要将一组作业进行序列化的处理,在前置作业执行出错时候,可以选择跳过进入到下一个作业的执行中去。
在”调度平台“-左侧资源树中选择-任务流定义,点击新建按钮或编辑已有ETL任务流,进入ETL任务流设计器界面。
2.ETL任务流设计器
2.1界面概览
2.2菜单栏
菜单栏包含设计器所有的管理功能。
【更多】下有文件、编辑、查看等菜单项。
- 文件
保存:保存ETL任务流,同菜单栏中的功能。
另存为:另存为ETL任务流。
检查:同菜单栏中,具体见检查。
清除检查标记:检查标记为执行检查操作时没有通过检查的组件右上角的叉号标记,如果想要取消该标记,可以点击清除检查标记。
- 编辑
撤销:撤销最近一次操作,支持无限次撤销,快捷键是CTRL+Z。
重做:重新执行刚撤销的操作,快捷键是CTRL+Y。
剪切:对编辑区内选中组件进行剪切,快捷键是CTRL+X。
复制:对编辑区内选中组件进行复制,快捷键是CTRL+C。
粘贴:对复制的内容进行粘贴,快捷键是CTRL+V。
删除:对选中组件进行删除,快捷键DELTE。
- 查看
对编辑区内容进行放大和缩小,分为实际尺寸(即100%)、按比例放大缩小、适合窗口。
【适合窗口】是将编辑区内容缩小到一屏显示。如下图所示ETL任务流,实际尺寸显示时有些组件已经超出屏幕可视范围。
点击“适合窗口”可以一键缩放到合适大小,一屏显示所有组件。
2)属性
图标:
点击弹出对话框,可设置ETL任务流的名称、标题和描述。
图标:
点击即保存ETL任务流。如果是首次保存,会弹出属性编辑界面,需要对ETL任务流进行命名,如下图:
可以自行对ETL任务流进行命名,也可以使用系统自动生成的名称和标题。
注:也可以使用快捷键 Ctrl+S 进行保存。
4)发布图标:
点击即发布ETL任务流到运行区。ETL任务流引用的ETL任务也会一同发布到运行区。发布时,会弹出发布路径选择弹窗,包含“和设计区分组一致”、“自定义分组”以及后续步骤”发布成功后,新建任务流调度“三个选项。如下图:
和设计区分组一致:会发布到和当前ETL任务流所在设计区的分组路径一样的路径中。如果运行区中路径不存在,则会创建对应路径。
自定义分组:选择运行区中已有的分组。
点击【确定】后系统会自动执行检查,检查通过后才能正常进行发布,检查不通过会终止发布。
5)草稿图标:
ETL任务流每发布一次后就会存储一个历史版本,点击保存存为草稿。点击草稿按钮弹出历史版本列表,如下图:
在历史版本列表中点击某个版本可切换到该版本,点击保存存为草稿,点击发布生成最新版本。
6)参数图标:
这里用来定义ETL任务流的输入参数,并且能给输入参数指定默认值。当ETL任务中也有同名输入参数时,会自动继承ETL任务流的输入参数值。如下图:
- 名称
名称列表中罗列出当前ETL任务流所有添加的参数,通过+/-两个符号可以添加和删除选中的参数。
- 属性
选中参数会在属性面板显示该参数属性,可以设置参数名称、标题、输入方式默认值和描述。
名称:不能为空,并且只能是字母、数字、下划线组成以字母开头;
标题:不能含有除汉字、英文大小写、数字、符号_-+.()()&%=之外的字符
输入方式:包含三种类型,分别是输入框、下拉选择框、日期选择框
输入方式 |
① 输入框 输入框支持单行输入和多行输入,单行输入只会将输入的值显示为一行,多行输入,输入的内容可以换行显示,如下图: ② 下拉框选择 支持枚举值和关联维两种下拉输入方式。 枚举值:枚举处所有可选值,可选值之间用英文分号“;”进行分割。参数可选值由显示值和实际值组成,显示值与实际值之间用英文冒号“:”分割,如2015年:2015;2016年:2016。 如果显示值与实际值一样,只写实际值即可,如2015;2016。 选中输入框会有参数值格式提示,如下图: 关联维:可以选择主题域、主题集中的维表和公共维表,如下如图: ③ 日期选择 此参数为只需要设置输出的日期格式即可,如下图: |
- 模板
可以将此次设计的参数组合保存为模板,以便于后续使用。如下图:
① 保存为模板
点击模板>保存为模板,输入模板名称后点击确定,可将当前参数组合保存为一个模板。
② 装入模板
点击装入模板,选择模板,可以将参数模板中的参数添加到当前参数设置中,如下图:
③ 管理模板
可以对服务器中存储的参数模板进行管理。选中参数模板后,点击“删除”按钮可以删除参数模板。选中参数模板后,点击“装入”按钮可以将参数模板中的参数添加到当前参数设置中,等同于“装入模板”功能。
图标:
检查各任务组件设置是否有语法错误,同时也会对任务组件所关联的ETL任务或ETL任务流进行语法检查。检查不通过时不允许发布,只能保存。检查不通过时,会在检查消息中输出错误提示。
需要根据检查信息的错误信息提示,对ETL任务流中的组件进行修改,直至检查通过。没有通过的组件会打上标记,如果想要取消该标记,可以点击文件>取消检查标记进行取消。
9)自动布局
图标:
对编辑区内的组件进行自动排版。
10)运行与取消图标:
运行:执行ETL任务流。
取消:中断正在执行的ETL任务流。
11)XML查看图标:
支持将任务流定义中的全部组件以xml格式查看,全局查看所有组件的基础信息。
12)缩放比例拖动滑块可以对编辑区内容进行放大和缩小。也可以在滑动条右侧输入框中输入缩放值后回车。输入框中支持输入值的大小为10~200之间的整数,并且是5的倍数,例如15、20、25、……。
2.3组件区
组件区包含组件、导航面板、资源面板三个页签。
1)组件组件这里显示了制作ETL任务流所有可用的任务组件,可拖动任务组件到编辑区进行ETL任务流设计。
ETL任务:ETL任务组件主要是为了调用任务,支持互拆和依赖任务定义等。
任务流:任务流组件主要是为了调用任务流,支持互斥和依赖任务定义等。
分支任务:分支任务主要用于控制流程的条件分析,只能拥有一个输入,但是有多个输出,当输入条件满足任意分支时,才能进行后续操作,支持多任务并行执行。
存储过程任务:选择连接池后,会根据不同的连接池刷新存储过程列表,选择存储过程,参数列表会相应字段加载设置输出后,表达式框不可用。输入参数设置输入字段或表达式。
SQL任务:SQL任务用来执行SQL语句(只能执行INSERT、UPDATE和DELETE,不支持SELECT),SQL语句可以引用参数,SQL组件大多数来执行清理表数据等。可使用参数列表中的参数执行SQL语句,SQL中使用问号作为参数占位符,注意顺序与参数列表中的顺序一致,如果前置组件输入的记录有多条将多次执行SQL语句。
Shell任务:主要是用于调用系统脚本。
EMail任务:EMail任务用于发送邮件,常用于执行成功或失败后进行通知,支持发送执行日志。
文件监听任务:文件监听主要用于对文件事件进行监控,是基于文件到达类 ETL 作业的出发条件,文件监听主要通过配置扫描目录、文件名称、文件内容进行判断文件是否到达,是否传输完毕,然后触发后续的进程。
FTP监听任务:FTP监听主要用于对文件事件进行监控,判断FTP服务器中指定文件是否存在,然后触发后续的进程。
参数赋值:参数赋值任务用于根据输入的记录来更新ETL编辑器中定义的参数值。参数值可以设置输入的字段、表达式、宏等。
Groovy脚本任务:Groovy脚本用于执行自定义Java脚本,内置方法如下getFirstlnputQuery0:用于获取输入Query对象:getParamater(String key):用于获取参数值:setParamater(String key, String value):用于设置参数值,addLog(Object log):用于记录日志等方法。
备注:备注任务用于标记当前任务或组件,进行操作提示或其他备注说明。
忽略异常:接在需要忽略异常的任务的后面,在执行时忽略前面任务的异常。
2)导航面板这里显示了当前ETL任务流用到的任务组件,在导航面板中单击组件节点,可选中编辑区中对应的组件,如下图:
在导航面板中双击组件节点,可打开对应组件的设置界面。
3)资源面板资源面析这里显示设计区内可用的所有ETL任务及ETL任务流资源,可以将这些资源直接拖动到编辑区中,系统会自动生成ETL任务组件或ETL任务流组件。
2.4编辑区
编辑区是设计ETL任务流的区域。需要将左侧组件列表里的组件拖动到此区域,按照任务执行先后顺序将各组件或串行或并行连接起来,并设置任务组件属性来完成整体流程设计。
编辑区中组件可拖动改变位置,右击打开到组件编辑界面。编辑区中支持框选组件。在组件上右键可“删除”、“复制”、“编辑”组件,通过“连接到”查看对应的ETL任务或ETL任务流,”血缘分析“是可以对任务流节点血缘分析。
在编辑区中,右键中的“编辑”,会出现窗口。
2.5日志区
日志:以表格形式输出ETL任务流运行日志。展示字段包括有任务标题、所属任务流、执行开始时间、执行结束时间、执行耗时、重做次数、重试次数、状态、操作(查看详情、断点、取消断点、重做、强制成功)。
日志列表以执行开始时间升序排排列,未执行的任务放置在底部。
可在日志区选择具体任务行进行相关任务操作,如对断点任务设置取消断点,对未设置断点的任务设置断点属性,当任务流处于执行完成状态时可以对任意组件进行重做执行。
对执行失败的任务进行强制成功操作
同时直接在ETL任务流设计器选择任务组件右键也可进行上述操作。
检查消息:用于输出任务组件配置异常信息。
请先登录