操作场景
在实际作业运行中,由于作业的重要程度以及紧急程度不同,需要重点保障重要和紧急的作业正常运行,因此需要满足它们正常运行所需的计算资源。
DLI提供的设置作业优先级功能,可以对每个Spark作业、Spark SQL作业以及Flink作业设置作业优先级,当资源不充足时,可以优先满足优先级较高的作业的计算资源。
说明
只有运行在弹性资源池上的作业支持设置作业优先级。
弹性资源池上的SQL作业支持作业优先级。
Spark 2.4.5及以上版本的作业支持设置作业优先级。
Flink 1.12及以上版本的作业支持设置作业优先级。
使用须知
- 对于每个作业都允许设置优先级,其取值为1-10,数值越大表示优先级越高。优先满足高优先级作业的计算资源,即若高优先级作业计算资源不足,则会减少低优先级作业的计算资源
- 通用队列上运行的Flink作业优先级默认为5。
- 通用队列上运行的Spark作业的优先级默认为3。
- SQL队列上运行的作业优先级默认为3。
- 作业优先级的调整需要停止作业进行编辑,并提交运行才能生效。
- 对于Flink作业,请参考开启Flink作业动态扩缩容设置flink.dli.job.scale.enable=true开启动态扩缩容功能,再设置作业优先级。
- Flink作业优先级的调整需要停止编辑作业并重新提交才能生效。
Flink Opensource SQL作业操作步骤
- 登录DLI管理控制台。
- 单击“作业管理 > Flink作业”。
- 选择要待配置的作业,单击操作列下的编辑。
- 单击“自定义配置”。
- 在“自定义配置”中输入如下语句,先开启动态扩缩容功能,再设置作业优先级。
说明对于Flink作业,必须先设置flink.dli.job.scale.enable=true开启动态扩缩容功能,再设置作业优先级。
开启动态扩缩容的更多参数设置请参考开启Flink作业动态扩缩容。
flink.dli.job.scale.enable=true
flink.dli.job.priority=x
Flink Jar作业操作步骤
在“优化参数”中配置如下参数,其中x为优先级取值。
flink.dli.job.priority=x
- 登录DLI管理控制台。
- 单击“作业管理 > Flink作业”。
- 选择待配置的作业,单击操作列下的编辑。
- 在“优化参数”中输入如下语句。先开启动态扩缩容功能,再设置作业优先级。
说明对于Flink作业,必须先设置flink.dli.job.scale.enable=true开启动态扩缩容功能,再设置作业优先级。
开启动态扩缩容的更多参数设置请参考开启Flink作业动态扩缩容。
flink.dli.job.scale.enable=true
flink.dli.job.priority=x
Spark作业操作步骤
在“Spark参数”中配置如下参数,其中x为优先级取值。
spark.dli.job.priority=x
- 登录DLI管理控制台。
- 单击“作业管理 > Spark作业”。
- 选择待配置的作业,单击操作列下的编辑。
- 在“Spark参数”中配置spark.dli.job.priority参数。
Spark SQL作业操作步骤
在“ 设置 > 参数配置”中配置如下参数,其中x为优先级取值。
spark.sql.dli.job.priority=x
- 登录DLI管理控制台。
- 单击“作业管理 > SQL作业”。
- 选择待配置的作业,单击操作列下的编辑。
- 在“ 设置 > 参数配置”中配置spark.sql.dli.job.priority参数。