大量的empty-region-count会不会导致 响应变慢,如何降低empty-region-count

【 TiDB 使用环境】生产环境 /测试/ Poc
【 TiDB 版本】4.0.8
【复现路径】做过哪些操作出现的问题
【遇到的问题:问题现象及影响】

目前业务反馈tidb的影响逐渐变慢。 是否和 大量的empty-region-count 有关? 如何降低empty-region-count?

【资源配置】
【附件:截图/日志/监控】
–1、pd的参数配置:
» config show
{
“replication”: {
“enable-placement-rules”: “false”,
“location-labels”: “”,
“max-replicas”: 3,
“strictly-match-label”: “false”
},
“schedule”: {
“enable-cross-table-merge”: “false”,
“enable-debug-metrics”: “false”,
“enable-location-replacement”: “true”,
“enable-make-up-replica”: “true”,
“enable-one-way-merge”: “false”,
“enable-remove-down-replica”: “true”,
“enable-remove-extra-replica”: “true”,
“enable-replace-offline-replica”: “true”,
“high-space-ratio”: 0.6,
“hot-region-cache-hits-threshold”: 3,
“hot-region-schedule-limit”: 4,
“leader-schedule-limit”: 4,
“leader-schedule-policy”: “count”,
“low-space-ratio”: 0.8,
“max-merge-region-keys”: 200000,
“max-merge-region-size”: 0,
“max-pending-peer-count”: 8,
“max-snapshot-count”: 3,
“max-store-down-time”: “30m0s”,
“merge-schedule-limit”: 8,
“patrol-region-interval”: “100ms”,
“region-schedule-limit”: 4,
“replica-schedule-limit”: 4,
“scheduler-max-waiting-operator”: 5,
“split-merge-interval”: “1h0m0s”,
“store-limit-mode”: “manual”,
“tolerant-size-ratio”: 5
}
}

–2、empty-region-count的 监控


max-merge-region-size 控制 Region Merge 的 size 上限(单位是 MiB)。当 Region Size 大于指定值时 PD 不会将其与相邻的 Region 合并。设置为 0 表示不开启 Region Merge 功能。

原来如此 感谢~~

region 需要资源做心跳处理,会占用 cpu 资源,内存资源和网络资源,一般在大量的删除操作之后,就会产生 empty region,需要快速合并处理,这样就减少资源的损耗

  1. 大量的空region肯定是要消耗资源的
  2. 业务中是不是有truncate表操作或者delete操作?
  3. 可以开启enable-cross-table-merge,4.0.8默认是关闭的