产 品

ETL调度监控平台


  ETL调度监控平台负责对系统全部子功能模块或程序进行统一的调度。ETL调度监控模块的主要功能模块包括配置模块(作业配置、作业流配置、作业组配置、ETL服务器配置、作业计划配置)、调度模块(事件管理器器、作业运行器、作业分发器、调度代理端)、监控模块(作业监控、应用系统资源监控)。




----系统功能
1.作业信息管理
  作业基本信息设置,主要是包括作业名称、作业类型、作业可运行的ETL服务器、作业所在目录(用作树的展现形式)、是否可用、作业优先级、作业复杂度、作业的DataStage资源池类型(如果作业类型为DS作业)等。
作业类型包括DS基本作业、SHELL脚本、Perl脚本、可执行程序、PLSQL/存储过程等。
2.作业流管理
  作业流是为了完成某个业务数据生成的相关的作业的集合,这些作业之间通过依赖触发的关系来形成一种流的关系。支持通过拖拉的方式来选择作业节点来配置作业流。作业流里的作业节点之间的关系通过不同的线条来分别表示作业之间的依赖及触发关系。
3.ETL服务器维护
  维护ETL代理端节点的IP地址、并发度及让调度引擎访问的端口,如果该ETL服务器维护同时是DataStage主节点,还需要维护了主机名称、磁盘空间、可擦写磁盘空间的信息。
在每个DataStage节点的ETL服务器下,需要维护受管的DataStage作业节点信息,该DataStage节点的维护信息主要包括主机名称、IP地址、端口号、磁盘空间、可擦写磁盘空间、最大吞吐量、逻辑节点数目。
4.事件管理器
  调用不同的事件监听器来处理系统发出或外部系统触发的事件,包括调度时钟事件、文件到达事件、作业结果返回事件、作业流初始化事件、作业流返回结果事件、作业干预事件。
5.作业流转控制器
  作业流转控制器,从作业状态队列表获取一个作业状态对象,并从作业运行实例上下文里获取该作业的调度批次对应的作业流实例信息,并对每个节点的运行条件做判断,如果条件还不能计算,则继续等待下次条件判断,如果为false,则发布节点运行失败事件,如果条件为true,则放到任务分发器的分发队列里。
6.任务分发器
  任务分发器,从分发队列获取作业,根据作业配置信息获取作业的可运行的ETL服务器,然后根据该作业的资源权值,去算每一台可用的ETL服务器的资源负载值,然后选资源负载值最小的ETL服务器,任务分发器就往该机器分发任务。
7.调度代理端
  调度代理端接收到作业执行命令,会判断该作业的类型,如果作业为DS作业,则根据该代理端的各个子节点的资源负载值,按小到大的顺序,动态地生成apt文件,并ds作业脚本的参数,来执行该DS作业脚本,如果是非DS作业,则直接执行作业脚本。调度代理端会等待作业脚本执行命令的返回值,并把该返回值返回调度server端,调度server端接收到该返回结果后,就向系统发布作业结果返回事件。
8.作业监控
  对系统里正处于调度的作业的状态进行监控,支持多维度的监控,可以按作业,也可以按作业的分组(作业组)来进行监控查看,也可以按ETL服务器来查看,该ETL服务器正在运行的作业数。并提供必要的手工干预功能。
9.资源监控
  资源监控就是监控每台ETL服务器(调度代理端)和ETL工作节点的资源利用情况,并提供接口让外部组件去获取相应的服务器的资源负载值。
10.日志管理
  日志管理,提供记载和查看某个数据日期的作业具体运行的详细信息。

----技术参数
采用JAVA技术开发,支持如下技术标准:
 ·XML标准
 ·J2EE应用框架
 ·JDBC协议
 ·JPA
 ·HTTP
操作系统
 ·主流Unix平台:IBM Aix、Sun Solaris、HP-UX、Linux、SCO Unix
 ·Windows系列平台
数据库
 ·Oracle、MS SQL Server、IBM DB2、Sybase ASE、Infomix、Teradata
WEB服务器
 ·Websphere、Weblogic、Jboss、Tomcat