数据岗位面试题更新 2026-08-05

请说明 DolphinScheduler 中任务节点的定义,并列举常用的任务类型有哪些?

数据技术原理Apache DolphinScheduler

考察说明

考察候选人对 DolphinScheduler 基本概念的理解以及对任务类型多样性的掌握程度。

回答思路

  1. 【回答框架 1】DolphinScheduler 的工作流由多个任务节点组成,每个任务节点代表一个独立执行的最小工作单元,可以是一个具体的操作,如运行一条 SQL 或执行一个脚本。节点之间通过依赖关系组合成有向无环图(DAG),实现流程编排。
  2. 【回答框架 2】常见任务类型包括:Shell 任务(执行 shell 脚本)、SQL 任务(执行关系型数据库 SQL 语句,支持查询和写入)、存储过程任务(调用数据库存储过程)、HTTP 任务(发送 HTTP 请求)、Python 任务(运行 Python 脚本)、子流程任务(调用另一个已定义的工作流)以及依赖任务(控制多个工作流之间的调度依赖)。
  3. 【回答框架 3】此外,还支持大数据相关任务,如 Spark、Flink、MapReduce、Hive 等计算引擎任务,用于提交分布式作业。同时也有数据同步类任务,如 DataX,用于数据集成。部分版本还提供条件分支和开关任务,用于实现流程中的条件逻辑。
  4. 【回答框架 4】实际使用时,应根据具体业务需求和数据源类型选择相应的任务类型。每个任务节点可配置重试次数、超时时间、运行资源等参数,并在任务失败时进行告警或重试,以保证工作流的稳定性。
  5. 【回答框架 5】任务类型的拓展性很强,可通过插件的机制自定义任务类型,以适应企业内部特定的执行需求。
  6. 【关键点 1】任务节点是工作流中最小执行单元,节点间通过依赖关系组成 DAG。
  7. 【关键点 2】通用任务类型包括 Shell、SQL、存储过程、HTTP、Python、子流程和依赖任务。
  8. 【关键点 3】大数据相关任务包括 Spark、Flink、MapReduce、Hive、DataX 等。
  9. 【关键点 4】任务节点可配置重试、超时、告警等参数,并支持条件分支。
  10. 【关键点 5】任务类型可通过插件扩展,满足个性化需求。
  11. 【易错点 1】误以为任务类型只有 Shell 和 SQL,忽略其他常见类型。
  12. 【易错点 2】混淆子流程任务和依赖任务,子流程是调用已定义流程,依赖是控制跨流程调度。
  13. 【易错点 3】忽略任务节点的重试和超时配置,导致失败时无法自动恢复。