一、产品概要
1.1 简介
HyCIR产品是我公司独立研发的针对商业数据处理任务的专业调度平台工具。旨在提高商业客户数据处理调度的可靠性,任务调度的可扩展性,任务操作的便捷性。使复杂、繁琐的数据调度任务流程易于理解,提升数据调度任务的管理效率、为企业的数据项目推进和运行维护提供有力保障。
HyCIR是CRM套装产品中的一员,负责数据处理任务的调度工具角色,同时该产品与平台其它套装产品业务耦合度低,可单独用于第三方平台产品或系统的数据任务调度工具。
1.2 特色
1.2.1 配置灵活
本产品的任务调度功能核心通过读取用户自定义配置实现丰富多变、灵活安全的数据调度任务。配置信息的载体通过XML语言以固定格式、固定排版的的方式实现。这种格式化的语言文本,即在一定程度上保留图形的直观性,又增强了文本可编辑性,面对大量任务编辑时非常灵活。
1.2.2 部署简易
产品的设计理念始终坚持无数据库绑定的原则,这样的设计思路不仅增强了应用功能模块的独立性,同时也使得平台的部署变得更为便捷,安装更为简单,与其它调度平台产品相比,功能的稳定性、安全性不仅没有降低,而且对运维人员的技术要求减少,投入和成本降低。
1.2.3 调度完善
本产品调度核心有自己相对完善的调度技术体系。不仅具有基本的依赖、互斥、并行、远程等基本的调度功能以外,还具有如下应用亮点:
● 循环
● 条件分支
● 负载均衡调度
● 自定义条件调度
1.2.4 扩展性强
本产品在设计开发过程中强调了产品的扩展性,用户不仅可以任意扩展任务类型、同时也可通过任务访问核心信息,并可以通过接口对核心进行操作控制。
二、产品功能
2.1 功能结构
2.2 核心调度功能
2.2.1 依赖调度
依赖调度是调度软件最基本的功能,它决定任务之间的执行顺序关系。
2.2.2 互斥调度
互斥调度是指两个任务不可以同时执行。
2.2.3 并行调度
并行调度也是调度软件最基本的功能,它表示并行任务之间可以同时运行。
2.2.4 按执行计划调度
执行计划指时间执行计划,这在ETL处理中是尤为重要的。
2.2.5 错误任务自动处理
CIR对于错误的任务有两种处理机制,一是自动在一定时间间隔后重跑,当达到用户定义的******重复次数时任务都未成功。表示所有依赖该任务的相关任务都不能处理;二是可以根据用户定义,选择在任务出错时忽略错误,流程继续往下运行。
2.2.6 断点续跑
断点续跑功是指流程因任务失败被迫中断时,经过人工处理后,流程会自动从中断的地方继续往下运行。
2.2.7 任务循环调度
循环调度是指在一个批次处理时,我们可以根据用户定义循环次数实现对某个任务循环调度。
2.2.8 条件分支调度
条件分支类似程序设计时,根据某个判断,决定执行那个流程分支。
2.2.9 流程间依赖调度
流程依赖调度指实现流程与流程之间的关系调度,流程之间的依赖调度对ETL分流程管理提供了强有力的技术支持。
2.2.10 远程任务调度
可以对部署在不同主机的任务通过统一流程进行统一管理并调度。
2.2.11 负载均衡调度
负载均衡指任务通过代理集群部署,调度可以分派任务到集群内相对空闲的主机,从而达到调度对流程负载均衡处理的功能。
2.2.12 自定义条件调度
在众多可总结的条件基础上,增加了用户自定义条件接口,以满足不可确定的调度需求。
2.3 配置管理功能
2.3.1 配置方式
流程配置信息是调度的主要信息来源,流程配置的易用性是衡量产品的重要标志之一。本产品为用户提供了两种方式的流程配置方式,如下:
关系表达图配置
数据表格配置
节点号 | 节点名称 | 节点类型 | 上级节点号 | 其它属性 |
---|---|---|---|---|
0 | group0 | 串 | -1 | |
1 | Beginjob | 任务 | 0 | |
2 | group01 | 并 | 0 | |
3 | job2 | 任务 | 2 | |
4 | job3 | 任务 | 2 | |
5 | group011 | 串 | 2 | |
6 | job3 | 任务 | 5 | |
7 | job4 | 任务 | 5 | |
8 | Endjob | 任务 | 0 |
2.3.2 流程解析方式
CIR根据根据特殊抽象的结构化流程描述思路,在具体表达格式上,每个流程采用XML语言并按照一定固定格式以及排列方式对图形直接描述。如下所示:
2.3.3 流程变量管理
CIR在变量管理方面有一套完整的机制。它将变量分为三类,分别为:
● 平台全局变量:全局变量有平台统一定义,所有流程都可以访问,但不可修改。
● 流程缺省变量:每一个流程都有自己一套平台提供的缺省变量,该变量不可修改。
● 流程私有变量:流程私有变量是用户为每个流程特色定义的,该变量用户可以通过相应接口修改。
2.4 调度管理
调度管理主要体现为:
● 并发控制
● 调度人工干预。
2.5 日志管理
本产品有多种不同类型的日志,均以文本方式存在,而且每种日志有自己命名以及目录存储规则。
2.6 界面监控
2.6.1 流程整体监控
2.6.2 平台在线任务监控
2.7 调试功能
CIR提供相应的工具CTL-Debug可以实现调试需求。
2.8 扩展功能
CIR平台本身具备完善的调度、管理、监控等功能体系,是一个独立的应用平台,同时也是一个开放的平台,具备很强的扩展性。在技术上我们主要通过一系列核心接口函数实现扩展。
三、典型案例经验
客户名称 | 项目名称 | 任务规模 | 实施时间 |
杭州联合银行 | ODS+CRM | 2000 | 2009年8月 |
日照商业银行 | 绩效考核 | 300 | 2009年10月 |
兰州商业银行 | CRM | 500 | 2010年7月 |
张家港农村商业银行 | 绩效考核 | 300 | 2010年10月 |
厦门农村商业银行 | 绩效考核 | 200 | 2011年3月 |
青岛银行 | CRM零售项目 | 200 | 2011年3月 |
东莞银行 | 绩效考核 | 100 | 2011年2月 |
江阴农商行 | 绩效考核 | 200 | 2011年3月 |