BE 配置项
部分 BE 节点配置项为动态参数,您可以通过命令在线修改。其他配置项为静态参数,需要通过修改 be.conf 文件后重启 BE 服务使相关修改生效。
查看 BE 配置项
您可以通过以下命令查看 BE 配置项:
curl http://<BE_IP>:<BE_HTTP_PORT>/varz
配置 BE 参数
配置 BE 动态参数
您可以通过 curl
命令在线修改 BE 节点动态参数。
curl -XPOST http://be_host:http_port/api/update_config?configuration_item=value
配置 BE 静态参数
BE 静态参数不支持在线修改,您需要在 be.conf 中修改并重启 BE 服务。
BE 参数描述
Server
priority_networks
- 默认值:空字符串
- 类型:String
- 单位:-
- 是否动态:否
- 描述:以 CIDR 形式指定 BE IP 地址,适用于机器有多个 IP,需要指定优先使用的网络。
- 引入版本:-
mem_limit
- 默认值:90%
- 类型:String
- 单位:-
- 是否动态:否
- 描述:BE 进程内存上限。可设为比例上限(如 "80%")或物理上限(如 "100G")。默认的硬限制为服务器内存大小的 90%,软限制为 80%。如果您希望在同一台服务器上同时部署 StarRocks 和其他内存密集型服务,则需要配置此参数。
- 引入版本:-
num_threads_per_core
- 默认值:3
- 类型:Int
- 单位:-
- 是否动态:否
- 描述:每个 CPU Core 启动的线程数。
- 引入版本:-
be_http_port
- 默认值:8040
- 类型:Int
- 单位:-
- 是否动态:否
- 描述:BE HTTP Server 端口。
- 引入版本:-
be_http_num_workers
- 默认值:48
- 类型:Int
- 单位:-
- 是否动态:否
- 描述:HTTP Server 线程数。
- 引入版本:-
be_exit_after_disk_write_hang_second
- 默认值:60
- 类型:Int
- 单位:Seconds
- 是否动态:否
- 描述:磁盘挂起后触发 BE 进程退出的等待时间。
- 引入版本:-
compress_rowbatches
- 默认值:true
- 类型:Boolean
- 单位:-
- 是否动态:否
- 描述:BE 之间 RPC 通信是否压缩 RowBatch,用于查询层之间的数据传输。
true
表示压缩,false
表示不压缩。 - 引入版本:-
serialize_batch
- 默认值:false
- 类型:Boolean
- 单位:-
- 是否动态:否
- 描述:BE 之间 RPC 通信是否序列化 RowBatch,用于查询层之间的数据传输。
true
表示序列化,false
表示不进行序列化。 - 引入版本:-
Thrift
be_port
- 默认值:9060
- 类型:Int
- 单位:-
- 是否动态:否
- 描述:BE 上 Thrift Server 的端口,用于接收来自 FE 的请求。
- 引入版本:-
thrift_client_retry_interval_ms
- 默认值:100
- 类型:Int
- 单位:Milliseconds
- 是否动态:是
- 描述:Thrift Client 默认的重试时间间隔。
- 引入版本:-
thrift_rpc_timeout_ms
- 默认值:5000
- 类型:Int
- 单位:Milliseconds
- 是否动态:是
- 描述:Thrift RPC 超时的时长。
- 引入版本:-
bRPC
brpc_port
- 默认值:8060
- 类型:Int
- 单位:-
- 是否动态:否
- 描述:bRPC 的端口,可以查看 bRPC 的一些网络统计信息。
- 引入版本:-
brpc_num_threads
- 默认值:-1
- 类型:Int
- 单位:-
- 是否动态:否
- 描述:bRPC 的 bthread 线程数量,
-1
表示和 CPU 核数一样。 - 引入版本:-
brpc_max_body_size
- 默认值:2147483648
- 类型:Int
- 单位:Bytes
- 是否动态:否
- 描述:bRPC 最大的包容量。
- 引入版本:-
Heartbeat
heartbeat_service_port
- 默认值:9050
- 类型:Int
- 单位:-
- 是否动态:否
- 描述:BE 心跳服务端口,用于接收来自 FE 的心跳。
- 引入版本:-
heartbeat_service_thread_count
- 默认值:1
- 类型:Int
- 单位:-
- 是否动态:否
- 描述:心跳线程数。
- 引入版本:-
日志
sys_log_dir
- 默认值:
${STARROCKS_HOME}/log
- 类型:String
- 单位:-
- 是否动态:否
- 描述:存放日志的地方,包括 INFO、WARNING、ERROR、FATAL 日志。
- 引入版本:-
sys_log_level
- 默认值:INFO
- 类型:String
- 单位:-
- 是否动态:是(自 v3.3.0、v3.2.7 及 v3.1.12 起)
- 描述:日志级别。有效值:INFO、WARNING、ERROR、FATAL。自 v3.3.0、v3.2.7 及 v3.1.12 起,该参数变为动态参数。
- 引入版本:-
sys_log_roll_mode
- 默认值:SIZE-MB-1024
- 类型:String
- 单位:-
- 是否动态:否
- 描述:系统日志分卷的模式。有效值包括
TIME-DAY
、TIME-HOUR
和SIZE-MB-
大小。默认值表示日志被分割成大小为 1GB 的日志卷。 - 引入版本:-
sys_log_roll_num
- 默认值:10
- 类型:Int
- 单位:-
- 是否动态:否
- 描述:日志卷保留的数目。
- 引入版本:-
sys_log_verbose_modules
- 默认值:
- 类型:Strings
- 单位:-
- 是否动态:否
- 描述:日志打印的模块。有效值为 BE 的 namespace,包括
starrocks
、starrocks::debug
、starrocks::fs
、starrocks::io
、starrocks::lake
、starrocks::pipeline
、starrocks::query_cache
、starrocks::stream
以及starrocks::workgroup
。 - 引入版本:-
sys_log_verbose_level
- 默认值:10
- 类型:Int
- 单位:-
- 是否动态:否
- 描述:日志显示的级别,用于控制代码中 VLOG 开头的日志输出。
- 引入版本:-
log_buffer_level
- 默认值:空字符串
- 类型:String
- 单位:-
- 是否动态:否
- 描述:日志落盘的策略。默认值表示日志缓存在内存中。有效值为
-1
和0
。-1
表示日志不在内存中缓存。 - 引入版本:-
统计信息
report_task_interval_seconds
- 默认值:10
- 类型:Int
- 单位:Seconds
- 是否动态:是
- 描述:汇报单个任务的间隔。建表,删除表,导入,Schema Change 都可以被认定是任务。
- 引入版本:-
report_disk_state_interval_seconds
- 默认值:60
- 类型:Int
- 单位:Seconds
- 是否动态:是
- 描述:汇报磁盘状态的间隔。汇报各个磁盘的状态,以及其中数据量等。
- 引入版本:-
report_tablet_interval_seconds
- 默认值:60
- 类型:Int
- 单位:Seconds
- 是否动态:是
- 描述:汇报 Tablet 的间隔。汇报所有的 Tablet 的最新版本。
- 引入版本:-
report_workgroup_interval_seconds
- 默认值:5
- 类型:Int
- 单位:Seconds
- 是否动态:是