队列属性设置
操作场景
DLI支持在队列创建完成后设置队列的属性。
当前支持设置:
- 设置队列的Spark driver的相关参数:通过设置队列的Spark driver,以提升队列资源的调度效率。
- 配置作业结果保存策略:设置是否开启队列的作业查询结果保存至DLI作业桶。
- 开启Spark Native算子优化:开启Spark Native引擎特性,可以提升Spark SQL的作业性能,减少CPU和内存的消耗。
本节操作介绍在管理控制台设置队列属性的操作步骤。
约束与限制
- 仅标准版弹性资源池的Spark引擎的SQL队列支持配置队列属性。
- 不支持批量设置队列属性。
- 不同队列属性的约束限制请参考表1
表1 队列属性的约束限制 属性
支持设置该属性的阶段
约束限制
相关操作链接
设置队列的Spark driver
仅支持队列创建完成后设置队列属性
弹性资源池中的队列,当队列的最小CUs小于16CUs时,在队列属性中设置的“最大spark driver实例数”和“最大预拉起spark driver实例数”不生效。
配置作业结果保存策略
仅支持队列创建完成后设置队列属性
开启“作业结果保存策略”,即配置作业结果保存至DLI作业桶后,请务必在提交SQL作业前配置DLI作业桶信息,否则SQL作业可能会提交失败。
开启Spark Native算子优化
- 在弹性资源池中添加队列时
- 队列创建完成后设置队列属性
已经创建的队列通过DLI管理控制台或API修改Spark Native开关需要重启队列才会生效。
- 弹性资源池队列开启Spark Native引擎特性需同时满足以下条件:
- 弹性资源池规格:“标准版”。
- 队列类型:“SQL队列”。
- Spark引擎版本:Spark 3.3.1及以上版本
- default队列当使用Spark 3.3.1及以上版本时,默认不开启Spark Native。
- 支持作业级别关闭Spark Native特性,可以通过在SQL作业的参数设置中配置spark.gluten.enabled=false来实现作业级别关闭Spark Native。
设置队列属性操作步骤
- 在DLI管理控制台的左侧导航栏中,单击 。
- 在对应队列的“操作”列,选择“更多 > 属性设置”。
- 进入队列属性设置页面,设置对应的属性值。属性值相关参数说明请参考表2
表2 队列属性 属性类型
属性名称
API参数名称
说明
取值范围
spark driver类型
最大spark driver实例数
computeEngine.maxInstance
队列能启动的最大spark driver数量。包含预先启动的spark driver和运行作业的spark driver。
- 当队列为16CUs时范围:2
- 当队列大于16CUs时范围:2-(CU数/16)
- 队列最小CUs小于16CUs时,该配置项不生效。
最大预拉起spark driver实例数
computeEngine.maxPrefetchInstance
队列预先启动的最大spark driver数量。当运行作业的spark driver任务数超过“单spark driver实例最大并发数”的值时,作业将会分配到预先启动的spark driver上面。
- 当队列为16CUs时范围:0-1
- 当队列大于16CUs时范围:2-(CU数/16)
- 队列最小CUs小于16CUs时,该配置项不生效。
单spark driver实例最大并发数
job.maxConcurrent
单个spark driver能同时运行的最大任务数量。当任务超过此值时,作业将会分配给其它spark driver运行。
1-32
作业结果保存策略
结果保存策略设置
job.saveJobResultToJobBucket
设置是否开启队列的作业查询结果保存至DLI作业桶。
仅Spark SQL队列支持设置该参数。
一旦开启此功能,将无法关闭,作业结果将始终保存至用户设置的DLI作业桶。
开启作业结果保存桶后,请务必确保已经配置DLI作业桶信息。配置DLI作业桶操作请参考配置DLI作业桶。
如需判断当前是否已开启SQL作业结果保存DLI作业桶请参考怎样查看SQL队列是否已开启作业结果保存至DLI作业桶。
推荐您开启作业结果保存至DLI作业桶,以便更好地管理和存储SQL作业的查询结果。
不涉及
开启Spark Native算子优化
DLI Spark Native加速
computeEngine.spark.nativeEnabled
开启Spark Native引擎特性,可以提升Spark SQL的作业性能,减少CPU和内存的消耗。
了解更多开启Spark Native算子优化。
开启或关闭
- 单击“确定”完成队列属性的设置。
怎样查看SQL队列是否已开启作业结果保存至DLI作业桶
- 方法1:在SQL作业详情页面查看结果路径
- 登录DLI管理控制台,单击“作业管理 > SQL作业”。
- 单击
查看SQL作业详情。
- 查看作业详情中的“结果路径”:
- 如果结果路径显示为用户自定义的DLI作业桶,则说明该作业所在的队列开启了作业结果保存至作业桶。
- 如果作业详情中不显示“结果路径”,则说明作业所在的队列未开启作业结果保存至作业桶。
- 方法2:查看SQL队列属性中是否开启作业结果保存至作业桶
- 登录DLI管理控制台,单击 。
- 在对应队列的“操作”列,选择“更多 > 属性设置”。
- 进入队列属性设置页面,查看“开启作业结果保存至作业桶”的配置情况。