TASKCTL 是什么
批量调度自动化技术是大数据时代数据整合后台不可缺少的重要技术。TASKCTL 是一款企业级免费作业批量调度系统,支持各类脚本、程序的调度。具备可视化图形拖拽式设计界面,可视化作业管控、计划调度、实时监控、消息提醒和日志分析功能;有效弥补了传统 ETL 工具在调度管理和监控分析方面不足;同时平台还提供元数据管理、数据关系分析、版本控制、日志分析等完善的辅助管理功能,为企业提供数据迁移、数据仓库、数据标准化、数据同步、数据备份、数据交换以及企业定制化二次开发在内的一体化整合服务。
是的,批量调度自动化技术对数据整合、对各种各样的 ETL,就像领导对公司的意义。同时,批量调度自动化技术又向优秀的职业经理人,没有行业的限制,它是一种与业务无关的纯技术体系。因此,将该技术独立化、系统化、专业化、工具化、产品化,必将给整个 ETL 技术领域、数据整合领域带来很大的帮助,让整个数据整合技术世界变得更美好。
应用场景
TASKCTL 通过将企业内部复杂的作业调度依赖关系,进行灵活的统一编排和管理,带来前所未有的简便性。通过采用全内存计算,基于全事件技术驱动,可简单、快速地对作业进行定义、编排和执行,并生成优化调度执行建议,高效地执行作业调度。TASKCTL 主要实现对 ETL 作业、存储过程、SQL 语句、shell 脚本、DS 作业等多类型作业的自动化编排和调度,既可用于帮助用户轻松构建自动化、规范化批量调度管理平台,也可用于支撑大数据时代下数据流向的调度管理自动化等,形成专门的解决方案。
产品结构
TASKCTL 自动化技术标准产品采用典型的 C/S 模式,应用层为客户端,控制层为服务端。同时,服务端完成对目标层的调度控制。
1.应用层
应用层从功能的角度,主要分 admin、designer 和 monitor。从应用渠道的角度,又分桌面客户端渠道与后台字符界面客户端渠道。同时,为了进一步方便用户,系统服务端还提供了丰富的控制操作行命令。
2.控制层
控制层是多级金字塔架构,顶层为服务控制节点,完成各种调度服务控制以及为客户端提供各种操作应用服务。而代理层完成与目标服务器(ETL 等)的控制交互。另,代理层通过主从代理级联方式,可实现对集群部署的服务器进行调度控制,实现负载均衡等。
3.目标层
目标层,是整个产品所控制的目标,比如我们的 ETL 服务器,作业工作站等。
功能特性
简单:支持通过 Web 页面作业行 CRUD 操作,操作简单,几分钟上手;
简洁:重新优化界面排版布局、图形拖拽动作,简化操作步骤;
邮件预警:作业失败时支持邮件报警,支持配置多邮件地址群发报警邮件;
作业进度监控:支持实时监控作业进度;
作业超时控制:支持自定义作业超时时间,作业运行超时将会主动中断作业;
作业失败重试:支持自定义作业失败重试次数,当作业失败时将会按照预设的失败重试次数主动进行重试;
作业失败告警:提供作业运行实时邮件,短信,日志预警;
脚本作业支持:采用插件驱动机制运行脚本作业;(系统预置:shell、python、Datastage、Informatic、Kettle、Java、大数据、一体机等各种脚本),还可以扩展更多类型。
运行报表:支持实时查看运行数据,如:作业作业数量,调度次数,执行器数量;以及调度报表;(如:调度日期分布图,调度成功/失败分布图)
用户管理:支持在线管理系统用户,分为管理员、普通用户等多种角色;
权限控制:支持平台应用通道,元数据读写,作业或作业流等操作和访问权限控制;
作业依赖:支持配置子作业依赖调度,当父作业执行结束且执行成功后将会主动触发一次子作业的执行;
核心功能:包括串行、互斥、并行、断点续跑、执行计划、容错策略、循环、自定义控制策略、关系策略、远程调度等;
自定义作业参数:支持运行时配置调度作业参数,即时生效;
触发策略:提供丰富的作业触发策略,包括:固定间隔触发、固定延时触发、API(事件)触发、人工触发、父子作业触发;
支持 Linux、Windows、Aix 等跨平台应用;
支持 10 万级作业调度批量控制;
提供在线编辑带语法校验的 IDE 工具环境;
软件分钟级安装部署;
秒级全局定位作业节点定位和作业信息搜索;
作业自动化及人工灵活干预;
支持负载均衡、高可用、分布式的企业级特征;
不依赖任何第三方中间件技术,大幅减轻产品实施和运维难度;
无需昂贵硬件服务器支撑,普通虚拟机就可安装部署;
独创永不交叉流程图和在线编辑 IDE 环境,能够实现流图自动排版和排序,永不交叉,不同作业类型图标可差异化,个性化展示,使图形达到最直观效果;
提供全数据内存访问、基于全事件引擎驱动;
支持系统开发人员、运维人员、管理人员多渠道角色应用场景;
核心组件逻辑架构
产品核心是在自主创新核心技术:无数据库存储访问、全事件组件间通信触发(消息队列)、动态数据全内存访问的基础上构建的。 在整个逻辑架构中,每一个组件对应一个系统进程,整个核心功能就是有不同功能的进程有序协同完成。
功能体系
企业级特性
1.数十万级作业规模调度支持
TASKCTL 从 2.0 开始,就定位为企业级调度基础软件,能实现 10 万级任务调度控制,能满足各大企业的调度规模需求。
2.支持各种技术平台的集成,能实现各种作业类型的调度
TASKCTL 是一个开放的调度平台,为了适应诸如 Datastage、Informatic、kettle、一体机、大数据、存储过程、java 以及各种脚本任务程序的支持与扩展,同时保证不同任务类型的应用统一,TASKCTL 对作业的控制采用插件驱动机制,从而实现不同技术平台、不同作业类型调度控制。
3.多级高可用(HA)、分布式、负载均衡企业级特征
为了保证系统的高可用性、高扩展性,整个产品核心设计采用层级架构。通过"Server(调度控制中心)" + "Agent(代理)"协调工作,完成各种复杂的调度控制,同时,通过 Server 主备,Server 和 Agent 分布式集群部署,实现高可用性与负载均衡的企业级系统特性。
4.丰富的应用渠道、完整的应用体系
TASKCTL 不仅将系统应用功能按应用类型通过Admin、Designer、Monitor 三个软件来组织与应用,同时又按不同应用渠道分 C/S 模式桌面客户端、C/S 模式字符界面客户端以及 B/S 模式监控应用端。它们分别构成完整的应用系统,用户可以根据自己的操作习惯与具体应用环境,选择合适的客户端渠道进行应用操作。
5.灵活用户权限管理
为了实现用户对各个作业流程资源的操作控制,TASKCTL 采用操作系统的用户管理机制,TASKCTL 将设计流程对象化、文件化,每个流程可以对拥有者、同组、其它用户分别授予读、写、操作权限,这种机制可以让用户对不同项目的的不同流程灵活授予读写操作权限。
6.流程作业的多级组织架构
流程作业信息是调度的核心信息,为了有效管理与控制这些信息,TASKCTL 通过主题应用、流程(子流程)、模块等多级体系来组织作业信息,使整个平台的作业信息结构更清晰、更易管理、更易控制。
7.强大的核心调度功能
①灵活的流程驱动
一个作业流程的开始,可以通过文件到达触发、自定义周期定时触发(n 分钟、n 小时、n 天等)以及自定义事件触发等。
②完整的调度控制策略
关系策略:可以实现作业、作业流之间的并行、互斥以及任意依赖控制。特别是依赖控制,系统通过串行、单点依赖、事件依赖以及自定义条件等机制,可以实现作业流内、不同作业流、不同 ETL 作业服务器以及不同业务日期、不同批次间任意作业的依赖控制。
排程计划策略:实现任意自然日历、逻辑日期排程计划;一个流程内可实现自然日历与多个逻辑日期的混合排程计划。
容错策略:可以实现作业错误后自动重跑,并可指定重跑次数,还可以实现错误重试次数满后,自动决定任务是否通过或失败。
强大的自定义策略:一个任务是否运行、忽略以及等待,用户可以通过自定义条件来确定。一方面,可以采用系统提供的内置函数用于条件判断;还可以通过自定义脚本程序来实现条件判断。
灵活的参数传递:用户可以通过定义全局变量、流程私有变量来实现定义各种信息的宏替换、作业参数传递、流程间变量信息传递等。另外,TASKCTL 还可实现一个任务的返回值当作另外一个任务的入口参数来传递。
8.全方位实时监控作业运行
为了用户实时了解作业的运行状况,TASKCTL 整体采用实时刷新、图形、多角度多口径统计以及短信等方式对整个平台作业进行全方位监控,以便用户及时掌握哪些作业正在运行、错误原因、失败、警告等信息
9.灵活的人工干预维护
人工干预是自动调度系统必不可少的功能。用户可以通过人工操作实现流程的暂停、重置、断点设置与作业的重跑、强制成功以及忽略通过;用户可以通过流程自由模式启动来实现任意作业以及任意作业分支的人工运行等。
10.专业的图形用户界面
TASKCTL 的图形用户界面能够完成上述的所有功能。它将众多功能集成于一个直观的图形界面中,使得用户不用熟悉各种命令、作业定义语言等,就可迅速掌握与使用,进一步方便了用户。
网友评论