美文网首页
第四章 离线数据开发之任务调度系统

第四章 离线数据开发之任务调度系统

作者: 被爱的天青色 | 来源:发表于2019-02-07 23:18 被阅读69次


大数据调度系统的由来

1)大数据下,调度系统时整个大数据体系的指挥中心,负责合理的调配资源。

2)在调度系统中各类任务互相依赖,形成一个有向无环图。

3)传统的数据仓库是依靠定时任务的方式进行调度,这种方式存在几个缺点:

① 任务调度依据时间,造成前一个任务未完成而后面的任务已经开始

② 任务难以并发,难以设置优先级

③ 任务管理维护比方便

4)大数据下数据量巨大,同时任务种类繁多,如MapReduce,hive,spark等,为了解决以上问题,大数据任务调度系统应运而生


调度系统设计模型

1)调度系统的构成:

2)调度系统的重要概念:

① 任务状态机模型:描述任务节点在生命周期中的状态

② 工作流状态机模型:描述任务节点在由调度树生成的工作流在运行时的不同状态

3)调度引擎的工作原理

基于任务状态机模型、工作流状态机模型,以事件驱动的方式运行,为任务节点生成实例,并在调度树中生成工作流。任务节点示实例在工作流状态机、工作流状态机和事件处理器之间转换。重要组件如下:

① Async Dispatcher:异步处理任务调度

② Sync Dispatcher:同步处理任务调度

③ Task 事件处理器:与任务状态机交互

④ DAG 事件处理器:与工作流状态机交互

4)执行引擎的工作原理

由三部分组成,服务接口、服务实现、task

① 服务接口:

+ 任务管理接口:进行集群任务管理

+ 系统管理接口:进行集群资源管理

② 服务实现:

+ Driver:

+ Task pool:

+ ResourceManager:整个集群的资源管理

+ TaskContainer:为Task执行提供载体

+ session manager:实现对task session 的管理

+ node:集群中的节点,提供物理资源

③ task

批处理任务或者流处理任务会提交给对应的平台进行处理,其他如shell、数据同步等任务会在调度系统中直接执行

相关文章

网友评论

      本文标题:第四章 离线数据开发之任务调度系统

      本文链接:https://www.haomeiwen.com/subject/ryqbsqtx.html