欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

ETL调度工具Taskctl—Web应用版【作业设计】 etlkettle自动化运维数据挖掘 

程序员文章站 2022-05-29 13:19:41
...

 

 

软件下载地址:去公众号 "Taskctl" 关键字回复 "领取" 即可获得永久授权并使用

认识 Taskctl-web

TASKCTL 遵循软件产品标准化的原则,以“专业、专注”为设计理念,结合ETL 调度领域自身的特点,构建了一套直观易 用的 ETL 控制容器调度设计、监控 维护、管理平台 taskctl-web-application。

功能架构

ETL调度工具Taskctl—Web应用版【作业设计】
            
    
    
        etlkettle自动化运维数据挖掘 

通过上图了解到,taskctl-web-application 是 TASKCTL 中客户端应用软件家族 的重要一员。有三大功能模块:
  • 平台管理(Admin):平台级配置信息管理。如网络节点管理,作业类型扩 展,工程管理,全局变量管理,调度元信息导入导出,用户及权限管理,消息接 口管理等。
  • 作业设计(Designer:作业调度元信息设计。如作业控制容器(定时器/作 业流)的管理,作业关系、属性编辑,变量管理,作业组织模块管理等。
  • 运行监控(Monitor:作业运行监控维护平台。对设计好的调度元信息进行 运行监控以及人工操作干预。对运行信息进行查询、统计、分析等。

系统特性

 

在 Windows 桌面客户端的基础上,TASKCTL 重新构建了一套基于 web 浏览 器的应用 taskctl-web-application。它具有如下特性:
  1. 功能完整:实现了桌面客户端 Admin,Designer,Monitor 所有的功能(包括高级分析功能)
  2. 部署简单:采用安装程序一键部署应用,不需要部署额外的 web 容器
  3. 体验简洁:重新优化图形操作体验,简化操作步骤
  4. 合理导向:重新组织了页面 UE,让每个操作自然流畅
  5. 性能卓越:200k 带宽、单核处理器即可实现 10 个用户同时应用
  6. 稳定可靠:直接与调度服务核心通讯,信息更直接可靠。

登录界面

平台部署的时候,已经确定了调度服务端信息。因此不必再像桌面客户端一样需要输入调度服务端地址。

 

ETL调度工具Taskctl—Web应用版【作业设计】
            
    
    
        etlkettle自动化运维数据挖掘 

如上图所示:输入正确的用户名、密码点击 “登录” 按钮,登录成功后,taskctl-web-application 将根据登录用户进行一系列的初始化操作,加载基本的运行信息。

主界面

成功登录后,即进入 taskctl-web-application 平台主界面。系统对各个组件进行了合理的初始化布局,如下图所示:

ETL调度工具Taskctl—Web应用版【作业设计】
            
    
    
        etlkettle自动化运维数据挖掘 

通过上图,我们可以直观的看到 Taskctl-web-application 具备了传统 web 应用软件的 “页头 banner “顶部导航”,以及主框架区域。

页面框架介绍

页头 Banner 与导航

提供了资源快速定位搜索框,消息提醒小红点以及当前登录用户信息。如下图所示:

ETL调度工具Taskctl—Web应用版【作业设计】
            
    
    
        etlkettle自动化运维数据挖掘 

消息提醒框

当 taskctl-web-application 检测到有最新未读的消息数目变化时,将在当前页面自动弹出系统消息提醒窗口。建议第一时间查看最新的消息详情
 

ETL调度工具Taskctl—Web应用版【作业设计】
            
    
    
        etlkettle自动化运维数据挖掘 

 

  • 单击消息框,自动跳转到 “我的消息” 页面
  • 若点击 “叉” 关闭消息提醒框后,系统将稍后再次提醒

作业设计 Designer

作业设计

在作业设计功能模块的首页,您可以看到资源视图,工程视图以及控制容器,切换到资源视图查看全部控制容器,切换到工程视图可以选择项目筛选其对应的控制容器。如下图所示:

ETL调度工具Taskctl—Web应用版【作业设计】
            
    
    
        etlkettle自动化运维数据挖掘 

ETL调度工具Taskctl—Web应用版【作业设计】
            
    
    
        etlkettle自动化运维数据挖掘 

 

资源视图

通过资源视图,可以快速的打开模块代码、树节点属性、流程变量等设计窗口。并直观的展示了工程到流程,流程到模块的树形结构。如下图所示:
 

ETL调度工具Taskctl—Web应用版【作业设计】
            
    
    
        etlkettle自动化运维数据挖掘 

资源视图拥有自身特有的工具栏,通过其工具栏按钮,可以方便地对资源树及其选中节点进行相关操作。

工程视图

工程视图与资源视图,唯一不同的是聚焦到某个选中的工程。

ETL调度工具Taskctl—Web应用版【作业设计】
            
    
    
        etlkettle自动化运维数据挖掘 

控制容器设计

TASKCTL 通过作业控制器来组织管理作业。作业控制器分为作业流和定时器。如果作业之间存在复杂的关系,如依赖、并行关系。请使用作业流来组织作业集。否则通过定时器来组织管理作业更方便。
 
小提示:通过定时器来调用子作业流实现作业调度自动化。
 
下面通过设计一个简单的作业流控制容器(以下简称 “作业流” )来了解下Designer 的操作和 TASKCTL 的一些功能特性。

 

设计案例描述

(一)作业程序清单

ETL调度工具Taskctl—Web应用版【作业设计】
            
    
    
        etlkettle自动化运维数据挖掘 

(二)依赖关系

ETL调度工具Taskctl—Web应用版【作业设计】
            
    
    
        etlkettle自动化运维数据挖掘 

(三)驱动方式

文件到达驱动。

新建作业流

通过在控制容器中点击 “创建作业流” ,跳转 “创建作业流”,如下图所示 (也可通过单击工程视图/资源视图下的“作业流”工具栏按钮 ,创建作业流)

ETL调度工具Taskctl—Web应用版【作业设计】
            
    
    
        etlkettle自动化运维数据挖掘 

ETL调度工具Taskctl—Web应用版【作业设计】
            
    
    
        etlkettle自动化运维数据挖掘 

 
  • 关注微信公众号 TASKCTL 回复:3200,了解更多 “主控流程” 的信息
  • 更改作业流名称为 myflow1” ,单击保存
  • 单击 “跳转到私有变量”

私有变量设计

私有变量可通过已创建 “作业流/定时器管理” 中的跳转私有变量,也可通过工程/资源视图中的作业流/定时器等工具栏按钮单击 跳转。

ETL调度工具Taskctl—Web应用版【作业设计】
            
    
    
        etlkettle自动化运维数据挖掘 

 
  • 创建如上图所示的私有变量
  • 单击工程变量,可以跳转工程变量设计
  • 关注微信公众号 TASKCTL 回复:3341,了解更多变量信息
工程下所有控制容器都可以引用工程变量。通过合理的变量设计,能够让调度更灵活,更易迁移。

图形方式设计

作业流由一个启动模块或者再嵌套多个子模块组成,作业的开发设计主要通过模块设计器进行,而模块设计器提供了图形方式设计与模块代码方式设计。图形方式对新手用户更加友好,模块代码设计方式能提高进阶用户的设计效率。

图形方式设计布局

提供了切换图形方式设计与模块代码设计、作业节点搜索框、容器设计工具栏,组件工具箱、作业节点资源树,以及作业属性面板。

ETL调度工具Taskctl—Web应用版【作业设计】
            
    
    
        etlkettle自动化运维数据挖掘 

  • 容器设计工具栏 -> 容器设计过程中常用的功能,如重新转载、编译、私有变量、容器签入/签出
  • 作业节点树 -> 提供快速拖拽变更作业节点之间的 “串并” 关系,关注微信公众号TASKCTL 回复:3390,了解更多作业(组)节点类型信息

拖拽添加作业节点

给作业流添加作业节点时,从工具箱直接向右边的流程图中拖拽相应类型的作业。(注:拖拽到节点上时,绿色箭头提示可放置的方向),如下图所示

ETL调度工具Taskctl—Web应用版【作业设计】
            
    
    
        etlkettle自动化运维数据挖掘 

编辑作业节点属性

由于作业的属性相对较多,为了方便我们熟悉作业属性的操作,TASKCTL 根据作业属性特征,按用途分为 “What --基本属性”How -- 控制属性”Where -- 目标主机属性”Misc -- 杂项属性” 等。另外某些属性还具有复合(继承 -inherit、缺省-default、自定义-self特征。

ETL调度工具Taskctl—Web应用版【作业设计】
            
    
    
        etlkettle自动化运维数据挖掘 

  • 在定义作业节点属性时,需要理解普通属性与复合属性的区别,关注微信公众号TASKCTL 回复:3504,了解更多 “复合属性” 信息
  • 分别定义’myflow’流程的各个作业节点。定义如下:

ETL调度工具Taskctl—Web应用版【作业设计】
            
    
    
        etlkettle自动化运维数据挖掘 

通过以上定义后,模块作业关系图与节点树如下图所示:

ETL调度工具Taskctl—Web应用版【作业设计】
            
    
    
        etlkettle自动化运维数据挖掘 

说明
  1. 作业串并关系图中关系通过线条表达,且图中不出现串并节点
  2. 节点树中包含串并节点,且作业的串并关系通过上级串并组节点决定

关系定义

设计案列描述中的关系定义

ETL调度工具Taskctl—Web应用版【作业设计】
            
    
    
        etlkettle自动化运维数据挖掘 

调整串行组(dsjob1 > oraproc1)与 dsjob2 形成并行关系,操作如下步骤:
  1. 拖拽 dsjob2 到 dsjob1 下方,弹出并行关系确认对话框
  2. 选择 oraproc1 为并行关系结束点

ETL调度工具Taskctl—Web应用版【作业设计】
            
    
    
        etlkettle自动化运维数据挖掘 

3.单击确定,完成关系定义如下图:

ETL调度工具Taskctl—Web应用版【作业设计】
            
    
    
        etlkettle自动化运维数据挖掘 

上述步骤也可通过作业资源树完成,作业节点资源树能辅助流程图,选中串并组作业节点,拖拽整组调整串并关系,如下图所示

ETL调度工具Taskctl—Web应用版【作业设计】
            
    
    
        etlkettle自动化运维数据挖掘 

模块代码方式设计

设计布局

在上述图形方式设计时,可以通过单击模块代码按钮进入代码编辑模式。

ETL调度工具Taskctl—Web应用版【作业设计】
            
    
    
        etlkettle自动化运维数据挖掘 

ETL调度工具Taskctl—Web应用版【作业设计】
            
    
    
        etlkettle自动化运维数据挖掘 

 
  • 控制台输出,可以通过拖拽改变高度,也可单击右方的箭头按钮改变内置高度
  • 代码编辑区,右键打开代码编辑区上下文菜单
注意
  1. 快捷命令有时无效时:
  2. 请先单击代码编辑区,让其获取焦点,再重试快捷命令

作业节点定义

ETL调度工具Taskctl—Web应用版【作业设计】
            
    
    
        etlkettle自动化运维数据挖掘 

串并关系定义

ETL调度工具Taskctl—Web应用版【作业设计】
            
    
    
        etlkettle自动化运维数据挖掘 

定时器设计

定时器的设计步骤与作业流类似。在创建好定时器后,进入其主模块视图设计窗口。

ETL调度工具Taskctl—Web应用版【作业设计】
            
    
    
        etlkettle自动化运维数据挖掘 

在定时器中通过parallel并行组,来实现不同运行频率作业的分组。点击分组框中的+号创建分组。

ETL调度工具Taskctl—Web应用版【作业设计】
            
    
    
        etlkettle自动化运维数据挖掘 

创建好分组后,需要事先对分组的运行频率进行设置。然后参考之前章节设计作业流的方式,设置各个作业的属性即可。

编译

在控制容器设计后,需先提交本地更改,才能执行远程编译。(注意: 在资源视图/工程视图中工具栏中单击编译, 都是编译最近一次提交,本地如有更改,请先提交。)

提交

查看本地是否有变动(本地可提交状态),如下图所示:​​​​​​​

ETL调度工具Taskctl—Web应用版【作业设计】
            
    
    
        etlkettle自动化运维数据挖掘 

编译

单击提交后,编译按钮变为可点击状态。单击编译按钮,进行服务远程编译并结果输出,如下图所示:

ETL调度工具Taskctl—Web应用版【作业设计】
            
    
    
        etlkettle自动化运维数据挖掘 

调试

当控制容器编译成功后,可以选中作业节点进行运行调试。

ETL调度工具Taskctl—Web应用版【作业设计】
            
    
    
        etlkettle自动化运维数据挖掘 

ETL调度工具Taskctl—Web应用版【作业设计】
            
    
    
        etlkettle自动化运维数据挖掘 

请注意:在 Designer 只能对单个作业进行调试,如果要实现对整个作业流进行从头到尾运行测试,请发布作业流到运行监控环境再执行启动操作。

发布

把编译成功的作业流发布到运行监控区,才能对作业流进行调度监控,如下图所示:

ETL调度工具Taskctl—Web应用版【作业设计】
            
    
    
        etlkettle自动化运维数据挖掘 

发布成功后,将形成历史归档,如下图所示:

ETL调度工具Taskctl—Web应用版【作业设计】
            
    
    
        etlkettle自动化运维数据挖掘 

小提示:通过历史归档,可以回退到之前发布的版本。

签入与签出

为了实现团队协同,Designer 采用签入签出机制来保障调度元数据的原子性。在需要操作的时候,软件会自动提示用户是否需要签出以获取编辑权限。

ETL调度工具Taskctl—Web应用版【作业设计】
            
    
    
        etlkettle自动化运维数据挖掘 

签出成功后,资源信息以绿色字体表示可以进行编辑操作。

ETL调度工具Taskctl—Web应用版【作业设计】
            
    
    
        etlkettle自动化运维数据挖掘 

当被其它用户签出后,资源信息以黄色字体表示不能进行编辑操作。

ETL调度工具Taskctl—Web应用版【作业设计】
            
    
    
        etlkettle自动化运维数据挖掘 

需要待其它用户签入后,当前用户才能获取编辑权限。请注意:如果在线平台被非法关闭(如浏览器崩溃),当前签出的资源将丢失编辑权限,系统将在 30 分钟后自动签入,届时才能再次签出。
软件下载地址:去公众号 "Taskctl" 关键字回复 "领取" 即可获得永久授权并使用