云etl用户手册
1.系统概述
概述
一站式的数据运营开发平台,包括数据源管理、逻辑模型和物理模型开发与管理、表管理、ETL作业流开发与管理、作业组开发与管理、流计算模型开发、数据治理模型开发等。
2.编写目的
概述
编写本用户手册的目的是充分叙述本系统所能实现的功能,以便使用者能够充分了解本系统的适用范围和使用方法,同时为系统的更新和维护提供必要的信息。
2.1.系统用途
概述
本系统云ETL web端基于B/S结构。
2.2.功能模块介绍
概述
- 模型开发
主要包括以下模块:①创建表 ②数据源管理
- 数据集成
主要包括以下模块:①数据同步 ②批量数据同 ③实时数据同步 ④数据爬虫
- 数据开发
主要包括以下模块:①作业流 ②SQL任务 ③Spark任务 ④SparlShell任务
- 任务管理
主要包括以下模块:①任务设置 ②调度计划 ③公共设置 ④任务发布
3.详细功能介绍
概述
(此页面暂无内容)
3.1.模型开发
概述
(此页面暂无内容)
3.1.1.创建表
3.1.1.1.功能入口
在左侧资源目录树下,选中表管理节点或其子目录新建数据源,或是在主界面点击快捷方式新建表。如图3-1-1-1-1所示:

图3-1-1-1-1 新建表操作入口
3.1.1.2.新建表
创建表是指在所选数据源类型和数据源内创建一张表,给定指定的字段名称和类型后即可保存在定制资源的项目中使用。如图3-1-1-2-1所示:

图3-1-1-2-1 创建表
点击【查看DDL】按钮,可查看创建表的Sql命令。如图:3-1-1-2-2所示:

图3-1-1-2-2 查看DDL
3.1.2.数据源管理
数据源是指创建业务库和产品应用服务器的连接,拿到数据进行分析。
3.1.2.1.功能入口
在左侧资源目录树下,选中数据源管理节点或其子目录新建数据源,或是在主界面点击快捷方式新建数据源。如图3-1-2-1-1所示:

图3-1-2-1-1 新建数据源
在新建数据源或是打开数据源,可以看到数据源页面,如图3-1-2-1-2的连接信息。

图3-1-2-1-2 新建数据源页面
点击测试连接按钮后如出现【测试连接成功】提示,如图:3-1-2-1-3所示。
则可点击保存按钮保存此数据源在左侧资源目录树>公共设置>数据源管理下供后续使用。

图3-1-2-1-3 测试连接成功
3.2.数据集成
概述
数据同步和批量数据同步相当于把数据从一个数据源拷贝一个完全一样的数据到另一个数据源。所配置的数据源可以是默认的,也可以是创建的自有数据源。新建完成后的数据同步和批量数据同步都会保存在定制资源>项目名称>数据同步下。
3.2.1.数据同步
数据同步需要给源头表和目标表选定一个数据源、模式和数据表。如图3-2-1-1所示。字段校对处则需要根据【同名映射】、【同行映射】和【手动连线】三种方式来同步字段数据。如图3-2-1-2所示。新建完成的数据同步保存后,点击【执行】按钮,出现“执行成功”提示,则数据同步成功。在执行的过程中可以点击【取消执行】以及查看执行日志。在执行过程中如点击取消执行,则在日志中会有‘任务已经停止’字样,如图3-2-1-3所示。
同步成功后源头数据源源头表中的数据会根据配置同步到目标数据源中的目标表中。

图3-2-1-1 配置数据同步

图 3-2-1-2 数据校对

图3-2-1-3 查看执行日志
3.2.2.批量数据同步
批量数据同步需要给源库和目标库选择数据源类型、数据源以及模式,根据添加的配置规则批量同步数据。
添加规则后,需点击【执行规则】按钮,如图3-2-2-1所示。
根据所添加的规则,会出现相应的选择同步表,如图:3-2-2-2所示。
配置完成的批量数据同步需先点击最下方【提交任务】按钮,保存在相应的项目下,此时提交的任务会在表管理和数据库创建相应的任务并且在页面数据执行结果处显示“创建成功”,如图:3-2-2-3所示。
任务创建成功后,可以点击最下方【批量执行】按钮,对数据进行批量数据同步,数据在批量执行的过程中,可以点击【取消执行】按钮和查看执行日志。在执行过程中如点击取消执行,则在日志中会有‘任务已经停止’字样,如图:3-2-2-4所示。

图3-2-2-1 配置批量数据同步

图3-2-2-2 选择同步表

图3-2-2-3 任务创建成功

图3-2-2-4 查看执行日志
3.2.3.实时数据同步
3.2.3.1.创建kafka数据源连接
在公共设置-数据源管理右键新建即可
partNum、repeetNum为整形
Bootstrap-servers:kafka地址
用户可自定义参数配置

3.2.3.2.实时数据同步配置

源头数据源默认选择kafka数据源
字段分隔符不能与hive导出表分隔符一致
字段配置:根据json文件的配置,例如使用RWH,则字段配置为:before,RWH


目标数据源为hive
导入前准备语句可自定义编辑
更新频次为秒表示每间隔多少秒,从kafka中读取一次数据
导出的hive表支持分区表,普通表直接插入,分区表只能包含一个日期型分区字段
配置完成后,点击执行,查看执行日志。

如在执行过程中,点击取消执行,日志显示任务已经停止。

3.2.4.数据爬虫
打开数据爬虫页面,共有几个区域,分别是资源树、工具栏、代码编辑区、存储配置区以及运行日志区。
资源树区域可以选择已有的数据爬虫资源双击打开进行编辑。
工具栏包括保存、执行、停止执行、清空以及预览5个操作按钮,分别对爬虫脚本执行对应的操作,脚本必须先保存才能执行或预览。
代码编辑区用于编写爬虫代码,需按照python语言规范进行编写。
存储配置主要用于配置爬虫结果数据保存的目标表,需从支持的数据源中选择一个并选择要存数据的数据库,此处可供选择的数据库必须在资源树公共设置-数据源管理下线创建好。选择库中的表后表字段自动展示在右侧,可调整字段顺序。

需特别说明的是,此处数据库中的字段数量以及字段类型必须和爬虫脚本中输出到result数组中的变量个数和类型一致,否则无法执行成功。
脚本执行结果可以在运行日志处查看,运行日志和存储配置在同一个区域,通过切换Tab页打开。
数据爬虫支持权限控制,在权限管理 - 角色管理下的云ETL模块可以配置,没有此权限的用户数据集成下不会出现数据爬虫卡片。
【示例】
用Python代码爬取百度热搜,存储热搜排名、标题及热度,附件为对应爬虫脚本。

本次爬取结果为排名、标题及热度,共3个字段,两个数值一个字符,因此先在库中创建一个表用于存放爬取结果。

将脚本内容粘贴到代码编辑区,配置上一步创建的数据库表。

保存后执行,运行日志显示执行成功。

打开数据库表,百度当天热点信息存储到对应表中。

3.3.数据开发
概述
(此页面暂无内容)
3.3.1.作业流
新建作业流是指从左侧节点树拖动节点或双击节点到工作区,根据配置形成一条完整的工作流,通过输入、转换、输出节点对数据随意操作。如图:3-3-1-1所示。
输入节点中的表输入节点选择的是数据源管理中配置的数据源。

图3-3-1-1 作业流配置执行
3.3.2.Sql任务
3.3.2.1.操作入口
在左侧资源目录树下,选中数据开发节点或其子节点新建Sql任务,或是在主界面点击快捷方式新建Sql任务。如图3-3-2-1-1所示:

图3-3-2-1-1 新建sql任务操作入口
3.3.2.2.新建sql任务
新建Sql任务需先选择数据源,在工作区对数据进行操作。Sql任务主要功能:支持使用公共参数、执行、清除、格式化、预览、保存当前版本、hive数据源模式选择(hivesql、sparksql)。
3.3.2.2.1.支持使用公共参数
新建sql任务支持使用公共参数作为过滤条件,如图3-3-2-2-1-1所示。
注:参数作为过滤器使用在sql任务中时,sql任务只能获取参数中设置的默认值。

图3-3-2-2-1-1 sql任务中使用公共参数
3.3.2.2.2.执行
新建sql任务,点击执行按钮,执行成功后会在下方运行日志显示运行日志。如图3-3-2-2-2-1所示:

图3-3-2-2-2-1 执行sql任务
3.3.2.2.3.清除
点击清除按钮,任务则需重新编辑。
3.3.2.2.4.格式化
点击格式化按钮,sql会格式化展示。如图3-3-2-2-3-1所示:
图3-3-2-2-3-1 格式化sql任务
3.3.2.2.5.预览
点击预览按钮,任务会根据条件在下方运行日志后单独显示数据。如图3-3-2-2-4-1所示:

图3-3-2-2-4-1 预览sql任务
3.3.2.2.6.保存当前版本
在工作区新建sql任务后,可以保存当前版本后再次编辑sql任务,相当于为sql任务增添了一个保存历史数据的功能。如图3-3-2-2-5-1所示:

图3-3-2-2-5-1 保存当前版本
3.3.2.2.7.Hive数据源选择模式
hive数据源模式默认选择数据源为hive,如图3-3-2-2-7-1所示。配置选择hivesql时,执行完成后在监控页面看到类型为MAPREDUCE;配置为sparksql时,执行完成后在监控页面看到类型为SPARK。
注:执行语句为统计函数count、sum、avg、min、max等。预览这两种模式时监控页面类型都为MAPREDUCE,只在执行时区分。

图3-3-2-2-7-1 hive数据源配置以及模式选择
3.3.2.2.8.Sql任务支持敏感词过滤
3.3.2.2.8.1.敏感词设置
1)操作入口
敏感词操作入口在运维管理-系统工具-敏感词管理。如图3-3-2-2-8-1-1所示:

图3-3-2-2-8-1-1 新建敏感词操作入口
2)新建敏感词
进入敏感词管理后,点击【新建敏感词】按钮,出现新建敏感词弹框新建敏感词,编辑名称、类型后保存,会在列表显示。分别如图3-3-2-2-8-1-2、3-3-2-2-8-1-3所示:

图3-3-2-2-8-1-2 新建敏感词

图3-3-2-2-8-1-3 列表显示
3)列表显示的敏感词均可编辑、删除。
点击【编辑】按钮,出现敏感词编辑框,编辑后保存出现提示‘修改成功’即可在列表更新保存后的敏感词。如图3-3-2-2-8-1-4所示:


图3-3-2-2-8-1-4 编辑敏感词
点击【删除】按钮,出现弹框提示‘确认是否删除该功能?’,点击确定,即可删除此敏感词。
3.3.2.2.8.2.敏感词类型管理
敏感词类型管理,目前有四种类型:all、hawq++、hivesql、spark sql。如图3-3-2-2-8-2-1所示:

图3-3-2-2-8-2-1 敏感词类型设置
3.3.2.2.8.3.白名单管理
点击【白名单管理】按钮,出现选择框,选择相应的用户即可。如图3-3-2-2-8-3-1所示:

图3-3-2-2-8-3-1 白名单管理
在执行sql任务时,如有敏感词,但是执行sql任务的用户没在白名单中,则出现提示,执行失败,如图:3-3-2-2-8-3-2所示;如有敏感词,执行sql任务的用户在白名单中,则执行成功。

图3-3-2-2-8-3-2 执行包含敏感词的sql任务,用户不在白名单中
3.3.2.3.Sql任务支持创建存储过程
创建sql存储过程中,以“@@function”,声明表示sql编辑器输入的内容为存储过程,将去除注释后的的内容整体提交给数据库引擎解析执行。

支持以“@@segment”为分段标识,执行存储过程。

3.3.2.4.修改sql任务
在左侧资源目录树下,选中要修改的sql任务节点,单击即可在工作区随意编辑,编辑后点击保存按钮则修改成功。如图3-3-2-3-1所示:

图3-3-2-3-1 修改sql任务
3.3.2.5.删除sql任务
在左侧资源目录树下,选中要修改的sql任务节点,右键选择**【删除】**即可。如图3-3-2-4-1所示:

图3-3-2-4-1 删除sql任务
3.3.3.Spark任务
3.3.3.1.操作入口
在左侧资源目录树下,选中数据开发节点或其子节点新建Spark任务,或是在主界面点击快捷方式新建Spark任务,如图3-3-3-1-1所示:

图3-3-3-1-1 新建spark任务操作入口
3.3.3.2.新建spark任务
新建一个sqark任务,选择一个spark的jar包及其他配置,保存后可供后续使用,如图:3-3-3-2-1所示。
Spark任务配置说明:
jar包文件:spark任务依赖jar包
主jar包: spark任务主类所在jar包
运行Class: spark任务主函数(主类)
Executor内存: spark任务参数-执行内存
驱动内存: spark任务参数-驱动内存
Executor个数: spark任务参数-executor个数
Executor核心数: spark任务参数-executor核心数

图 3-3-3-2-1 新建spark任务
3.3.3.3.修改spark任务
在左侧资源目录树下,选中要修改的spark任务节点,单击即可编辑,编辑后点击保存按钮则修改成功。如图3-3-3-3-1所示:

图3-3-3-3-1 修改spark任务
3.3.3.4.删除spark任务
在左侧资源目录树下,选中要修改的spark任务节点,右键选择**【删除】**即可。如图3-3-3-4-1所示:

图3-3-3-4-1 删除spark任务
3.3.4.SparkShell开发
3.3.4.1.操作入口
在左侧资源目录树下,选中数据开发节点或其子节点新建SparkShell任务,或是在主界面点击快捷方式新建SparkShell任务,如图3-3-4-1-1所示:

图3-3-4-1-1 新建SparkShell任务操作入口
3.3.4.2.新建SparkShell任务
SparkShell开发可以实现大数据分析过程中的脚本编辑、脚本执行、版本管理、控制台执行结果。支持多种语言,默认是Scala(背后是Spark shell),SparkSql。支持脚本定时调度,支持脚本任务与ETL其他任务混合编排完成复杂业务。具备根据用户权限访问对应hive数据源的管控能力。
%spark:可指定在相应的数据库中执行。

3.3.4.2.1.执行
新建SparkShell任务,点击执行按钮,执行成功后会在下方运行日志显示运行结果。执行完成后会在相应的库中写入表和数据。

3.3.4.2.2.停止
点击停止按钮,任务则停止执行。
3.3.4.2.3.清除
点击清除按钮,任务则需重新编辑。
3.3.4.2.4.保存当前版本
在工作区新建SparkShell任务后,可以保存当前版本后再次编辑SparkShell任务,相当于为SparkShell任务增添了版本管理的功能。如需要回退到指定版本,在下拉框中选中回到的版本即可。如图3-3-4-2-4-1所示:


图3-3-4-2-4-1 保存当前版本
3.3.4.3.修改SparkShell任务
在左侧资源目录树下,选中要修改的SparkShell任务节点,单击即可编辑,编辑后点击保存按钮则修改成功。如图3-3-4-3-1所示:

图3-3-4-3-1 修改SparkShell任务
3.3.4.4.删除SparkShell任务
在左侧资源目录树下,选中要修改的SparkShell任务节点,右键选择**【删除】**即可。如图3-3-4-4-1所示:

图3-3-4-4-1 删除SparkShell任务
3.3.4.5.Sparkshell任务的使用
1)在工具商城,左侧目录树下,选中自定义任务右键新建作业组,可以将sparkshell任务与其他etl任务混合编排完成复杂业务。


- 在左侧资源目录树下,选中计划节点或其子目录节点,右键选择新建计划,或是在主界面点击快捷方式新建计划。

- 在新建计划页面选择待执行的任务,这里可以单独只选中sparkshell任务,也可选择刚才配置好的任务组,配置完成其他后保存。

- 可以点击页面上的手动执行调度,也可在发布管理发布计划定时调度任务。在发布管理处选择【任务发布】,选择刚才配置好的计划提交待办审批通过即可在调度日志查看调度执行结果。



3.4.任务管理
概述
(此页面暂无内容)
3.4.1.任务设置
任务表示调度执行的具体内容。任务类型:定制任务、计算元数据、数据预警、SFTP同步任务、工作流任务、作业组任务、数据同步任务、作业流任务、sql任务、spark任务、SparkShell任务。
3.4.1.1.功能入口
在左侧资源目录树下,选中任务节点或是其子目录节点右键选择新建任务,或是在主界面点击快捷方式新建任务,如图:3-4-1-1-1所示。

图3-4-1-1-1 新建任务入口
点击新建任务后,则进入任务定义区域,在任务类型处可选择定制、计算元数据、报表导出、数据预警、页面导出五个类型,如图:3-4-1-1-2所示:

图3-4-1-1-2 选择任务类型
3.4.1.2.界面介绍
任务基本信息区:根据需要输入任务的名称、别名和描述。
任务内容定义区:和任务类型关联,根据任务类型不同,则设置选项也不同。此内容介绍详细请参考各个任务类型设置。
任务操作按钮区:任务操作按钮。
查看运行脚本:查看任务生成的JS运行脚本。
测试运行:测试运行执行此任务,查看相关运行效果。
保存:保存此任务管理。
关闭:关闭此任务,进入任务管理主页面。

3.4.1.3.定制任务
定制任务是系统提供的一种任务类型,是指通过用户自己输入JavaScript脚本来定制任务,实现无法通过配置实现的其它功能。自定义的优势是能实现更丰富的功能满足各种特殊的应用,但这种方式比较复杂,需要熟悉JavaScript与任务编写规范。
3.4.1.3.1.操作入口****
在"新建任务"界面"基本信息区"的设置项"任务类型"下拉列表中选择定制,进入"定制"设置文本区。当编写自定义任务时,可以通过下面的写法来引入JAVA类:importClass(java.lang.System);通过这些类就可以使用Java的功能。如下图所示:

3.4.1.3.2.执行sql脚本和存储过程任务说明
3.4.1.3.2.1.执行sql说明
1、执行插入、更新、删除及存储过程接口:XQueryService.executeUpdate(数据源ID, sql)
2、执行查询数据接口:XQueryService.readDataBySourceIdAndSql(数据源ID, sql, maxRow)
3.4.1.3.2.2.查询使用示例
var smartResult=taskrun('XQueryService.readDataBySourceIdAndSql','datasource',
'["DS.baa6642fbb70469384c3fdb7f5f1b20c", "SELECT * FROM `yiyao_normal`", 2]');
var tool = new TaskRpcUtil();
var jsondata = tool.Obj2json(smartResult.data);
System.out.println(jsondata.getInteger("col"));//从结果集中获取列数
System.out.println(jsondata.getInteger("row"));//从结果集中获取行数
var griddata = jsondata.get("data");//从结果集中获取数据信息
var fields = jsondata.get("fields");//从结果集中获取字段信息
var row1Col7 = griddata.get(0).get(6); // 取第1行第7列
说明:
1:DS.baa6642fbb70469384c3fdb7f5f1b20c为数据管理下面的数据库的ID。
3.4.1.3.2.3.存储过程使用示例
var smartResult=taskrun('XQueryService.executeUpdate','datasource',
'["DS.baa6642fbb70469384c3fdb7f5f1b20c", '+ '"CALL user_procedure(\'drugX\', @num);"]');
说明:
1:DS.baa6642fbb70469384c3fdb7f5f1b20c为数据管理下面的数据库的ID。
2:本示例为mysql执行存储过程的方法,不同数据库稍有差异,请查找SQL标准。
3.4.1.3.2.4.插入使用示例
var smartResult=taskrun('XQueryService.executeUpdate','datasource',
'["DS.baa6642fbb70469384c3fdb7f5f1b20c", "INSERT INTO `testA`(`a`,`b`,`c`)'
+ 'VALUES (\'aaa22\', \'bbb\', \'ccc\');"]');
说明:
1:DS.baa6642fbb70469384c3fdb7f5f1b20c为数据管理下面的数据库的ID。
2:本示例为mysql执行存储过程的方法,不同数据库稍有差异,请查找SQL标准。
3.4.1.3.2.5.变量使用示例
//演示变量常量
var p=$p('test');
System.err.println(p);
//演示变量sql
var p1=$p('22');
System.err.println(p1);
//演示sql执行
var smartResult=taskrun('XQueryService.readDataBySourceIdAndSql','datasource',
'["DS.9762dce7f0ca45b3b2cb9a564e33c65f", "SELECT * FROM x_user_"+p1+" where c_id="+p, 2]');
System.err.println(smartResult.data);
//注意复杂对象一定要使用tool.Obj2json
var json=tool.Obj2json(smartResult.data);
//取值均按json语法来取,
System.err.println(json.getJSONArray('data').get(0).get(0));
说明:
1:DS.9762dce7f0ca45b3b2cb9a564e33c65f为数据管理下面的数据库的ID。
2:$p('test')和$p('22')中test和22分别为新建的变量中的名称。
3:本示例为mysql执行存储过程的方法,不同数据库稍有差异,请查找SQL标准。
3.4.1.3.2.6.http调用使用示例
//get 方法适用于简单参数场景
var url='http://www.baidu.com?id=aaa&name=bbb';
var result=tool.httpGet(url);
System.err.println('aaa---'+result);
//get 方法如果参数复杂,请使用encodeURI进行转换,否则会因无法正确识别参数而报错
var logurl='http://192.168.18.18:8501/login'
var params=encodeURI('?bizindex=login¶ms=["测试","1"]');
result=tool.httpGet(logurl+params);
System.err.println('bbb---'+result);
//小插曲,实现等待毫秒数
tool.sleep(2000);
//post 方法使用时,参数为json
var jsonobj={'bizindex':'login','params':["lxk","1"]};
result=tool.httpPost(logurl,jsonobj);
System.err.println('ccc---'+result);
3.4.1.3.2.7.读取SFTP远程文件使用示例
var ip = "192.168.0.70";//ip地址
var port = 22;//端口
var userName = "root";//账号
var password = "root";//密码
//打开连接
var sftp = tool.sftp2GetConnection(ip, port, userName, password);
//上传文件,第1个参数传入上一步获取的连接,第二个参数源目录,第三个参数源文件名,第四个参数目标目录,第五个参数,目标文件
tool.sftp2UploadFile(sftp,"C:\\liuqiang\\", "bbb.txt", "ylx", "shangchuan.txt");
//读取文件,第1个参数传入上一步获取的连接,第二个参数要读取的服务器文件夹,第三个参数要读取的文件名称
var result = tool.sftp2ReadFile(sftp,"ylx", "testrr.txt");
System.out.println(result);
//下载文件到目标地址, 第一个参数传入上一步获取的连接,第二个参数源目录,第三个参数源文件名,第四个参数目标目录,第五个参数目标文件名
tool.sftp2DownLoadFile(sftp,"ylx", "test.txt", "c:\\liuqiang\\", "bbb.txt");
//删除文件,第一个参数传入上一步获取的连接,第二个参数要删除的目标目录,第三个参数要删除的目标源文件名
tool.sftp2DeleteFile(sftp,"ylx", "test.txt");
//关闭连接
tool.sftp2CloseConnection(sftp);
3.4.1.3.2.8.JSON和String格式互转使用示例
var tool=new TaskRpcUtil();
var obj=['1','2'];
var result=tool.json2String(obj);
System.out.println(result);
var obj2=tool.String2Obj(result);
System.out.println(obj[0]);
3.4.1.3.2.9.线程休眠2分钟使用示例
System.out.println("thread start"+new Date());
tool.sleep(2 * 60 * 1000);
System.out.println("thread end"+new Date());
3.4.1.4.计算元数据
在"新建任务"界面"基本信息区"的设置项"任务类型"下拉列表中选择计算元数据,进入"计算元数据"设置区,需要选择一个数据表,如图:3-4-1-4-1所示。

图3-4-1-4-1 新建计算元数据
3.4.1.5.数据预警
在"新建任务"界面"基本信息区"的设置项"任务类型"下拉列表中选择数据预警,进入"数据预警"设置区。如图3-4-1-5-1所示。

图3-4-1-5-1 配置数据预警任务界面
1)选择一个资源(可选数据源和数据集),根据选择的资源在‘预警条件’中增加条件。
2)在“可选字段”下拉框选择选择需要配置的字段,选择操作符、类型,配置条件后点击【增加】按钮,会把选择的条件添加到下方工作区显示。可用and和or连接多个条件。如图3-4-1-5-2所示。

图3-4-1-5-2 配置预警条件
3)添加到工作区的预警条件可以编辑、删除、上移、下移、添加括号、取消括号操作。
4)配置导出类型有两种方式:邮件和系统消息。
5)选择导出类型为邮件时,需要配置导出格式(默认为excel,可选择MHT),选择是否压缩导出文件,如图3-4-1-5-3所示。选择系统消息时则没有导出格式和是否压缩文件的配置,如图3-4-1-5-4所示。

图3-4-1-5-3 导出类型为邮件

图3-4-1-5-4 导出类型为系统消息
6)配置收信条件:点击“添加条件”会出现弹框界面,此界面和预警条件界面显示一致,是在预警条件的基础上再次配置是否符合收信条件,可配置一个和多个条件,如图3-4-1-5-5所示。

图3-4-1-5-5 配置收信条件
7)配置收信人:配置的收信人可以直接输入邮箱点击回车显示或点击“选择用户”在选择用户界面选择用户、组和角色;每个条件都需要配置收信人;如导出类型选择的是系统消息,则在收信人处不会显示输入邮箱编辑框。
8)配置完成后,点击保存方可测试运行;根据所配置的内容给相应的用户发送系统消息或邮箱发送邮件。
3.4.1.6.SFTP同步任务
SFTP同步任务实际上是把存在sftp的文件通过分隔符等配置同步到hive数据源。
操作入口
在"新建任务"界面"基本信息区"的设置项"任务类型"下拉列表中选择SFTP同步任务。
编辑左侧sftp基本配置:包括IP、端口、用户名、密码、分隔符等;右侧目标表配置通过下拉方式选择数据源类型、数据源、表。
配置完成后,鼠标单击下方可根据配置项显示sftp分隔内容和hive数据表字段名称。通过双击两端端点或拖拽方式创建连接。
如图3-4-1-6-1所示:配置sftp与数据源之间的连接



图3-4-1-6-1 配置sftp与数据源之间的连接
3.4.1.7.工作流任务
工作流任务的创建在数据云敏捷挖掘模块完成,创建完成后,点击发布选择需要发布到的项目,勾选下方‘是否发布任务’,则发布应用的同时会在自定义任务下发布一个工作流任务。如图3-4-1-7-1所示。

图3-4-1-7-1 发布工作流任务
3.4.2.数据增量
操作说明:
1)在定制资源下找到创建的任务,点击右键-属性获取此任务的ID;

2)向数据库表x_task_adddata_trigger中插入数据,sql模板为:
INSERT INTO x_task_adddata_trigger (c_id,c_task_id,c_task_name) VALUES ('c_id不能重复','替换为任务id','cbw_test');
3)配置文件可以修改调度时间,不设置时,默认每30s执行一次;扫描触发后的任务c_is_trigger会从非空变为1(0待触发,1已触发),c_status会从0变为1或者2(0执行中,1执行成功,2执行失败);

4)已经被触发并且执行成功的任务可以运维管理-调度管理-调度日志中查看,任务的名称后会加上“-手动执行”,任务状态为执行成功。

5)亦可在数据库中使用sql语句去查看任务的执行结果
SELECT c_task_id,c_task_name,c_task_result,c_trigger_time FROM `x_tk_tasklog` WHERE c_schedule_logid = 'sliddatatriggerid' ORDER BY c_trigger_time DESC;注:c_schedule_logid为 前缀'slid' + data_trigger的id 进行查询
如下图:


3.4.3.调度计划
计划是指定制执行任务的方式或时间等。一个计划支持调度多项任务。
在调度计划中支持选择定制任务、计算元数据、数据预警、SFTP导出任务、工作流任务、作业组任务、数据同步任务、作业流任务、sql任务、spark任务。新建的调度计划可通过手动执行和任务发布两种方式执行。
3.4.3.1.新建计划
3.4.3.1.1.操作入口
在菜单栏中选择【工具商城】,进入“工具商城”界面。在左侧资源目录树下,选中计划节点或其子目录节点,右键选择新建计划,或是在主界面点击快捷方式新建计划,如图:

新建计划入口
3.4.3.1.2.新建计划页面配置
点击新建计划后,则进入计划定义界面。如图所示:
编辑计划名称、计划别名、计划描述、预计完成时间等基本信息;选择前置计划和待执行的任务(待执行的任务可以为:定制任务、计算元数据、数据预警、SFTP导出任务、工作流任务、作业组任务、数据同步任务、作业流任务、sql任务、spark任务);
配置触发类型可以为时间和事件,可以指定生效时间为始终、选择的日期、选择的日历三种。
当选择触发类型为时间时,可以选择执行频度为执行一次或者选择其他新建的频度;
当选择触发类型为事件时,可以选择事件类型为计划完成,从触发计划处选择计划。
可以从消息处选择消息,设置任务执行成功或执行失败时发送消息。

新建计划界面介绍
3.4.3.1.2.1.前置计划
前置计划:指的是前置计划执行成功后才会触发待执行的任务
例如:有一个计划测试1、计划测试2、计划测试3。将计划测试2和计划测试3加入到计划测试1的前置计划中。

在发布管理处,发布计划测试1任务,在调度管理中将会看到这三个任务会被触发,前置计划只要有一个未执行成功,待执行任务则会执行失败(提示:前置计划不满足执行条件)。注:因配置的是为每分钟频度,所以当执行失败后,会根据频度再次下一次的执行。

3.4.3.1.2.2.触发计划
触发计划:指的待执行任务是由触发计划触发的。
例如:新建测试计划3,配置配置触发计划为计划测试1,计划测试1为每分钟执行一次,那么待执行的任务也会跟随触发。

在发布管理处发布测试计划3任务,在调度管理的调度日志中去看测试计划3和测试计划1是同时执行。(如后置计划配置为多个,则每一个触发计划执行时都会触发待执行任务)


3.4.3.2.修改计划
3.4.3.2.1.操作入口
在菜单栏中选择【工具商城】,进入“工具商城”界面。在左侧资源目录树下,选中要修改的计划节点,右键选择**【编辑】**即可,编辑后点击保存按钮则修改成功。如图所示:

修改计划
3.4.3.3.删除计划
3.4.3.3.1.操作入口
在菜单栏中选择【工具商城】,进入“工具商城”界面。在左侧资源目录树下,选中要修改的计划节点,右键选择【删除】即可。如图所示:
注意:删除时确认计划任务没有被计划任务所引用。

删除计划
3.4.4.公共设置
3.4.4.1.频度
3.4.4.1.1.操作入口
在菜单栏中选择【工具商城】进入主页面后,在左侧资源树形区打开【公共设置】 ,单击【频度】右键菜单中选择【新建频度】,或者在右侧面板中的快捷入口选择新建频度,如图所示:

频度操作入口
3.4.4.1.2.新建频度
新建频度配置窗口介绍,如图所示:

新建频度配置界面
频度方案类型主要包含:一次性、每分、每时、每日、每周、每旬、每月、每季。
一次性:表示计划只执行一次。执行完计划后,计划的启用状态变为停止,即计划的"是否启用"选项的勾选状态变为不勾选。
每分:表示计划按分的频率执行。
每时:表示计划按小时的频率执行。
每日:表示计划按天的频率执行。
每周:表示计划按周的频率执行。
每旬:表示计划按旬的频率执行。
每月:表示计划按月的频率执行。
每季:表示计划按季的频率执行。
3.4.4.1.3.修改频度
在菜单栏中选择【工具商城】,进入主页面后。
单击菜单树上的“频度”节点,在选择要修改的信息右键菜单中点击“打开“进入修改页面,编辑后点击保存按钮则修改成功。如图所示:

修改频度
3.4.4.1.4.删除频度
在菜单栏中选择【工具商城】,进入主页面后。
单击菜单树上的“频度”节点,在展开的信息上选择要删除的信息点击右键,选择删除。如图所示:

删除频度
3.4.4.2.日历
3.4.4.2.1.操作入口
在菜单栏中选择【工具商城】进入主页面后,在左侧资源树形区打开【公共设置】 ,单击【日历】右键菜单中选择【新建日历】,或者在右侧面板中的快捷入口选择新建日历,如图所示:

新建日历入口
3.4.4.2.2.新建日历
在菜单栏中选择【工具商城】,进入“工具商城”界面。
单击快捷方式面板的“新建日历”。
单击菜单树上的“日历”节点,在右键菜单单击“新建日历”按键,如图所示。

新建日历配置界面
“日历”窗口输入信息说明:
选择年份:点击年份左右两侧的图标选择上一年、下一年。
全选工作日、非工作日:全选工作日选中时,选择的是本年度同一至周五的日期,非工作日与之相反。
全选:全选选中时,选中本年度所有日期,取消选中则与之相反。
单月选择:分为横向选择、竖选、全选本月三种,选中月表格上方一排的选择框为竖选相对应的竖排日期,选中月表格右侧的选择框为选中对应的横排日期,选中日期行最右侧的选择框为全选本月的所有日期。
跨年选择:选择完毕本年的日期后,可以再选择上一年、下一年进行跨年的选择。
注意事项
工作日、非工作日和全选的按键只是辅助性功能,在跨年选择和修改日历操作中不保存其状态。
3.4.4.2.3.修改日历
在菜单栏中选择【工具商城】,进入“工具商城”界面。
单击资源树上的“日历”节点,在展开的信息上选择要修改的信息点击右键,选择编辑进入修改页面,编辑后点击保存按钮则修改成功。如图所示:

修改日历
3.4.4.2.4.删除日历
在菜单栏中选择【工具商城】,进入“工具商城”界面。
单击资源树上的“日历”节点,在展开的信息上选择要删除的信息点击右键,选择删除。如图所示:
注意事项:
注意删除时确认日历没有被计划任务所引用。

删除日历
3.4.4.3.消息
3.4.4.3.1.操作入口
在菜单栏中选择【工具商城】进入主页面后,在左侧资源树形区打开【公共设置】 ,单击【消息】右键菜单中选择【新建消息】,或者在右侧面板中的快捷入口选择新消息,如图所示:

新建消息入口
3.4.4.3.2.新建消息
在菜单栏中选择【工具商城】,进入“工具商城”界面。
单击快捷方式面板的“新建消息”。
单击左侧资源树上的“消息”节点,在节点右键菜单单击“新建消息”按键。如图所示:

新建消息配置界面
“消息”窗口输入信息说明:
接收人:消息接收人必需为一个邮件地址。
发送详细日志:默认情况下不发送详细日志。
发送范围:默认情况为出错的作业流才会发送。
注意事项
注意发送消息的范围、日志内容和发送方式等内容的设置。
3.4.4.3.3.修改消息
在菜单栏中选择【工具商城】,进入“工具商城”界面。
单击资源菜单树上的“消息”节点,在展开的信息上选择要修改的信息点击键,选择编辑进入修改页面,编辑后点击保存按钮则修改成功。如图所示:

修改消息
3.4.4.3.4.删除消息
在菜单栏中选择【工具商城】,进入“工具商城”界面。
单击左侧资源树上的“消息”节点,在展开的信息上选择要删除的信息点击右键,选择删除。如图所示:

删除消息
3.4.4.4.变量
3.4.4.4.1.操作入口
在菜单栏中选择【工具商城】进入主页面后,在左侧资源树形区打开【公共设置】 **,单击【参数-变量】右键菜单中选择【变量】,**如图所示:

新建变量入口
3.4.4.4.2.新建变量
新建变量有两种类型选择:静态值和sql。
3.4.4.4.2.1.类型:静态值
选择类型为【静态值】,设置一个指定的值,新建完成后保存即可供后续使用。如图所示。

新建静态值变量配置
3.4.4.4.2.2.类型:sql
选择类型为【sql】,选择指定的数据源,使用sql设置指定的值,新建完成后保存即可供后续使用。如图所示
注:使用sql变量时,sql语句后不能加分号

新建sql变量配置
3.4.4.4.3.修改变量
在菜单栏中选择【工具商城】,进入“工具商城”界面。
单击资源菜单树上的“参数”下“变量”节点,在展开的信息上选择要修改的变量点击键,选择编辑进入修改页面,编辑后点击保存按钮则修改成功。如图所示:

修改变量
3.4.4.4.4.删除变量
在菜单栏中选择【工具商城】,进入“工具商城”界面。
单击左侧资源树上的“参数”下“变量”节点,在展开的信息上选择要删除的变量点击右键,选择删除。如图所示:

删除变量
3.4.5.任务发布
在任务管理模块完成任务的执行计划的配置后,该任务并不会开始执行,如果需要启动该计划,则需要将该任务的执行计划发布到产品库才能开始执行。
3.4.5.1.操作入口
操作入口在我的工作台>发布管理模块实现。如图所示。

任务发布操作入口
3.4.5.2.任务发布配置
第一步,点击任务发布选项,会弹出任务发布的配置窗口,如图所示:

任务发布配置窗口
第二步,选择要发布的任务执行计划,单点【选择】按钮,弹出如下选择框,如图所示:

选择任务页面
第三步,在计划配置下选中一个要发布的一个已配置好的任务执行计划,然后点击确定。然后如下图所示,任务详情配置中的的 “所属项目名称”自动获取项目名称。项目名称为该任务所在的计划设置的二级目录名称,如图所示:

配置任务发布
第四步,您还可以同时发布该项目下的其他已经配置好的执行计划,同一项目下的执行计划会出现在关联任务配置框的左侧,如果需要,可以在左侧列表中选中并添加到右侧已选列表即可。
第五步,配置完成后,可以点击【保存】,便会将该任务添加到发布列表中,或者点击【提交】,将会保存该配置并提交发布到产品库的申请。
第六步,等待租户管理员或审批管理员审批,审批通过后,会自动将该任务的执行计划添加到产品库的执行列表。审批通过后,发布列表中的申请状态将会更新为已通过。
3.4.5.3.调度管理
发布审批后的任务可在运维管理-调度管理下查看运行监控、调度日志和任务分布。
运行监控:可查看作业名称、所属项目、状态、发布时间、计划开始时间、实际结束时间等信息,如图所示:

调度日志:通过对计划名称、开始和结束时间进行搜索可知调度计划下任务执行情况,包括名称、类型、开始时间、结束时间、状态、触发方式和结果描述(不同任务结果描述不统一),如图所示:

调度日志-状态:任务在执行中时,计划的状态为开始执行(右侧带有暂停按钮标识),任务的状态也为开始执行,如图3-4-5-3-1所示;点击暂停按钮后,计划的状态为停止执行,下一任务的状态为任务暂停(右侧带有开始按钮),如图3-4-5-3-2;继续点击开始按钮,任务回复执行状态,直至计划执行完成,如图3-4-5-3-3。
注:点击暂停按钮后,此计划会在当前任务执行完成后暂停。

图3-4-5-3-1

图3-4-5-3-2

图3-4-5-3-3
任务分布:根据任务图显示所选择的日期具体时间段执行了多少任务,如图3-4-5-3-4。

图3-4-5-3-4
[TOC]