在数据分析场景中,用户需要根据业务需求调整Doris集群的配置参数来优化性能。然而,手动调整配置参数不仅耗时,而且容易出错,导致集群性能未能达到最优状态。为此用户可以在控制台中多次调整Doris集群配置参数,以优化集群性能,从而提高数据处理效率和系统响应速度。
使用限制
- 修改集群静态参数需要重启集群,可能会导致业务的中断。建议在业务低峰期进行操作,以免对业务造成影响。
- 集群无运行中的任务时,才能修改参数。
- CloudTable Doris集群重启过程中,不允许修改集群参数。
Doris修改参数步骤
- 登录表格存储服务控制台。
- 左上角选择区域。
- 在左侧导航栏中,单击“集群管理”。
- 在集群列表中找到所需要的集群,单击“集群名称 > 参数配置”进入参数配置页签。
- 选择修改的节点(FE、BE节点)后,选中需要修改的参数,在“参数值”列单击
。
- 在修改框中输入新值,单击
,系统提示“参数修改为' xx '成功,请保存本次修改值”,并且修改的参数值后显示红色*。
如果单击
,则取消修改。
图1 修改参数
- 单击参数列表左上方的“保存修改”,弹出“保存修改”对话框。
- 在“保存修改”对话框中,确认参数修改信息正确后,然后单击“确定”。
图2 保存修改
- 单击确定后,再单击右上角的刷新按钮
,如果参数表状态显示“已生效”,集群不用重启。如果显示“未生效”,用户需要手动重启集群才能使修改的参数生效。
- 单击参数配置页签左上角的重启按钮,集群重启或者返回集群列表页面重启集群。
静态参数修改完成后,需要手动重启集群,参数才能生效。动态参数修改后生效,不用重启集群。
图3 重启
- 如果修改的参数值不正确,可以在“保存修改”对话框中单击“一键还原”,取消修改参数值。
- 参数修改完成后,可以单击“修改历史”页签查看参数修改的历史。“修改历史”页面中显示如下信息。
表1 参数说明
|
参数 |
参数说明 |
|
参数名 |
被修改过的参数名。 |
|
旧值 |
修改前的参数值。 |
|
新值 |
修改后的参数值。 |
|
修改时间 |
记录用户修改参数值的时间。 |
Doris参数修改状态
表2 状态
|
状态 |
状态说明 |
|
未更改 |
Doris未更改的参数。 |
|
未应用 |
Doris参数已修改但是未应用。 |
|
未生效 |
Doris静态参数,修改保存后需要重启集群。 |
|
已生效 |
Doris参数修改后已生效:
- 静态参数修改保存后,集群需要重启才能生效。
- 动态参数修改保存后生效。
|
FE节点参数说明
表3 FE节点参数说明
|
参数名 |
静态参数 |
参数描述 |
|
max_routine_load_job_num |
否 |
- 描述:该参数限制的例行导入作业的总数,包括NEED_SCHEDULED,RUNNING,PAUSE这些状态。超过后,不能提交新的作业。
- 参数类型:int
- 取值范围:(0,300)
- 默认值:100
|
|
use_new_tablet_scheduler |
是 |
- 描述:是否启用新的副本调度方式。
- 约束限制:此参数仅支持存算一体集群。
- 参数类型:boolean
- 取值范围:[true,false]
- 默认值:true
|
|
audit_plugin_max_sql_length |
否 |
- 描述:Doris审计日志记录所执行SQL的最大长度,超过长度部分会被截断。该值设置过大可能会导致占用过多内存影响集群可用性,请谨慎调整。
- 约束限制:
- 此参数仅支持存算一体集群。
- 此参数仅支持Doris2.1.7及以上版本。如果当前已创建的Doris 2.1.7版本集群参数配置页面未显示此参数,则联系技术人员处理。
- 参数类型:long
- 取值范围:(0,9223372036854775807)
- 默认值:4096
|
|
enable_create_colocate_table |
是 |
- 描述:是否允许创建colocate表,配置为true时允许创建。 colocate表为本地性表,一般不会随扩缩容迁移,集群缩容时可能会因为colocate表无法数据迁移而失败。 请谨慎修改。
- 约束限制:
- 此参数仅支持存算一体集群。
- 此参数仅支持Doris2.1.7及以上版本。如果当前已创建的Doris 2.1.7版本集群参数配置页面未显示此参数,则联系技术人员处理。
- 参数类型:boolean
- 取值范围:[true,false]
- 默认值:false
|
|
max_broker_concurrency |
否 |
- 描述:broker scanner的最大并发数。
- 参数类型:int
- 取值范围:(5,30)
- 默认值:10
|
|
tablet_repair_delay_factor_second |
否 |
- 描述:对于不同的调度优先级,我们会延迟不同的时间后开始修复。以防止因为例行重启、升级等过程中,产生大量不必要的副本修复任务。此参数为一个基准系数。对于HIGH优先级,延迟为基准系数 * 1;对于NORMAL优先级,延迟为基准系数 * 2;对于LOW优先级,延迟为基准系数 * 3。即优先级越低,延迟等待时间越长。如果用户想尽快修复副本,可以适当降低该参数。
- 参数类型:long
- 取值范围:(0,9223372036854775807)
- 默认值:60
|
|
balance_load_score_threshold |
否 |
- 描述:集群balance百分比的阈值。默认为0.1,即10%。当一个BE节点的load score,不高于或不低于平均load score的10%时,我们认为这个节点是均衡的。如果想让集群负载更加平均,可以适当调低这个参数。
- 参数类型:double
- 取值范围:(0,1)
- 默认值:0.1
|
|
dynamic_partition_check_interval_seconds |
否 |
- 描述:动态分区线程的执行频率,默认为600(10分钟),即每10分钟进行一次调度。
单位:s
- 参数类型:long
- 取值范围:(0,9223372036854775807)
- 默认值:600
|
|
max_routine_load_task_concurrent_num |
否 |
- 描述:该参数限制了一个例行导入作业最大的子任务并发数。建议维持默认值。设置过大,可能导致同时并发的任务数过多,占用集群资源。
- 参数类型:int
- 取值范围:(0,10)
- 默认值:5
|
|
dynamic_partition_enable |
否 |
- 描述:是否开启Doris的动态分区功能。默认为false,即关闭。该参数只影响动态分区表的分区操作,不影响普通表。
- 参数类型:boolean
- 取值范围:[true,false]
- 默认值:true
|
|
max_bytes_per_broker_scanner |
否 |
|
BE节点参数说明
表4 BE节点参数说明
|
参数名 |
静态参数 |
参数描述 |
|
max_consumer_num_per_grou |
是 |
- 描述:一个数据消费者组中的最大消费者数量,用于routine load。
- 参数类型:int
- 取值范围:(0,10)
- 默认值:3
|
|
clone_worker_count |
是 |
- 描述:用于执行克隆任务的线程数,其值影响副本均衡的速度。在磁盘压力不大的情况下,可以通过调整该参数来加快副本均衡。
- 参数类型:int
- 取值范围:(0,10)
- 默认值:3
|