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

请列举 Azkaban 支持的 Job 类型,并说明在流(Flow)中如何配置这些不同类型的任务。

数据技术原理Azkaban

考察说明

考查对 Azkaban 任务类型及其配置方法的掌握程度。

回答思路

  1. 【回答框架 1】Azkaban 的 Job 类型主要包括 command、java、hadoopJava、hadoopShell、spark 等,其中 command 最为基础,直接在配置中指定命令行。
  2. 【回答框架 2】在工作流中配置不同类型的任务,主要在 .job 文件中设置 type 属性,例如 type=command 对应命令执行,type=java 指定运行 Java 类,type=hadoopJava 用于运行 Hadoop 作业。
  3. 【回答框架 3】不同类型任务的配置项不同:command 需配置 command 参数;java 需配置 job.class 和 classpath 等;hadoopJava 需指定 job.class、main.class 等;spark 类型则需配置 spark 相关参数如 spark.master 和 spark.submit.deployMode。
  4. 【回答框架 4】多个 .job 文件通过依赖关系组成 DAG 流,在 .flow 文件中或通过 UI 定义依赖,从而实现工作流的任务编排。
  5. 【关键点 1】Job 类型由 .job 文件中的 type 属性决定,常见类型有 command、java、hadoopJava、hadoopShell、spark。
  6. 【关键点 2】配置任务时需为不同 Job 类型提供对应的必需参数,如 command 命令、java 类名、spark 提交参数等。
  7. 【关键点 3】工作流通过定义 Job 之间的依赖关系构建 DAG,Azkaban 会按依赖顺序调度执行。
  8. 【易错点 1】注意不同 Job 类型对运行环境的要求不同,例如 java 类型需要配置 classpath 和 main class。
  9. 【易错点 2】spark 类型在 Azkaban 中的使用可能受版本影响,需正确处理提交方式和资源设置。
  10. 【易错点 3】若依赖配置不当可能导致 DAG 解析失败或任务无法按预期顺序执行。