目录
该篇文章主要介绍DolphinScheduler-3.2.0工作流实例的工作周期
一、DolphinScheduler架构原理
1.1 系统架构图
在介绍之前,先对架构进行简单介绍。

内部服务主要分为四个部分:
(1)API服务,用于与UI交互;
(2)用于告警通知的Alert服务;
(3)主节点(master)和工作节点(worker)是去中心化的,可以部署多个Master和多个Worker,它们可以分布在不同的位置并独立工作。
(4)工作流运行在Master节点上,具体的任务节点在 Worker 节点上运行,例如 shell、Python、Flink 和 Spark 等任务节点。
1.2 DolphinScheduler核心概念
为更好的了解DolphinScheduler ,先介绍其核心概念:
- Process(工作流):由任务以有向无环图形式构成,执行时解析一个工作流为多个任务,可设置工作流优先级,工作执行全局参数、超时告警;
- Task(任务):调度执行的最小单元,包含Shell、Spark、Flink、Sql、MR等多种类型。可设置任务执行优先级、任务执行参数、超时告警、超时失败;
- Command(待调度指令):工作流经手动调度或定时调度生成的数据,存储在数据库DB中;
- Instance(任务实例):任务执行后,会生成相应的实例,记录执行时任务的状态及执行内容,任务实例可查看下载日志;
- Master(调度服务):提供对工作流手动调度、定时调度、超时告警、任务容错、任务执行监控等功能;
- Worker(运行服务):解析工作流,识别任务类型,调用对应任务类型的逻辑,生成任务实例;
- Alert(告警服务):可通过Email、FTP、微信等多种方式,告知工作流、任务执行结果。
下面具体展示调度任务的创建、被调度执行的过程:
- 根据具体的业务需求,通过Web界面以DAG形式创建工作流,生成Process并落库;
- 手动调度或定时调度生成待调度指令Command,存储在数据库DB中;
- Master监听读取Command记录,解

最低0.47元/天 解锁文章
1万+

被折叠的 条评论
为什么被折叠?



