Schedulis 支持常规的CommandShell 和Linkis(HadoopMR、 Hive、Spark、Sqoop、 Python)大数据任务;同时还支持特色的数据检查和工作流之间的依赖任务;支持完善的告警和工作流执行策略;提供多种类型的参数设置,动态全局变量和简单易用的UI。此次微众银行大数据平台工程师王哲为大家带来 基于Schedulis 0.6.2的全面介绍 。 项目主要分为两块,分别是 web server和 executor server 。web server 主要负责界面交互,请求的处理。比如项目管理,用户管理,用户登录跟踪工作流进度情况。web server 也提供了很多接口,用户可以通过接口进行操作,比如执行工作流获取一些工作流执行。executor server 主要负责工作流的提交和执行。目前我们适用的场景之一有获取到工作流,将它提交到 linkis 进行具体的大数据任务。 Schedulis 架构图下图是项目的主要功能,schedulis 具有丰富的工作类型,可以支持自定义插件。如根据公司或者自己的需求开发一些插件,结合到项目中。schedulis 还支持比较多的调度策略,如现有工作流的单次执行,定时调度循环执行,历史重跑等调度策略。项目还支持分布式部署多台 executor server ,同时部署多台 executor server 进行分布式处理。
图形化工程编辑器可以借助 data sphere studio 进行节点的拖放及依赖关系的设置。如上图项目界面,在首页我们就可以看到工作流的执行情况,具体到今日的一些执行情况。也有图表和对于项目的一些权限设置,如设置项目的创建人,管理权限读写执行,单独进行调度设置等,都是比较细致方便的。比如你的同事离职了,可以在这里进行修改交接,然后项目管理员通过项目用户这可以对他的权限进行一些设置。 项目操作记录可以直观的了解到用户对于这些项目进行了哪些操作,比如说重新上传的项目,或者对它设置了调度,告警,变更的权限等,方便我们进行审计,以及项目出了问题,方便去排查到底是什么人在什么时间做了什么事。