【TiDB 版本】v7.5.6
【需求】
TiKV节点计划使用本地盘较大的机型,同时region大小从96M调整为256M,减少TiKV节点数量。
【需求说明】
TiKV机型使用的是16C64G2T规格,节点数为50+,TiKV节点的CPU利用率30%。后续TiKV机型计划调整为16C128G3.5T。也意味着单节点region数量较多,所以考虑将region大小从96M调整为256M。
【集群属性】以范围查询为主,DML操作都是以主键的方式进行更新、插入、删除。
【调整方式】
老集群是v5.3.3版本,计划通过新建集群的方式进行改造。
1、新搭建一套v5.3.3版本的新集群。
2、利用 BR 工具,将集群数据恢复至新集群。
3、将新集群升级为v7.5.6
4、调整coprocessor.region-split-size参数为256M
5、重启TiKV节点。
【问题点】
1、region从96M调整为256M有哪儿些风险点?
2、region调大后会带来哪儿些收益点?
3、通过版本升级的集群调整region大小是否存在风险?【v5.3.3 升级为 v7.5.6】
首先说,你这个3.5t 并没有太大,调不调region关系也不大。
然后说下问题:
- region 调大主要就是写热点的问题,更大概率有写热点。这个比较好理解,别的我感觉问题不大.
- region 调大就是如你说的,region数量少了,能降低一些 region之间的心跳之类的信息数量,不过有 hibernate region heartbeat,也收益也没有太大。
- 版本该升级升级,region该调整调整,俩没关系。
调整region大小是为了解决pd节点负载过高的问题,如果你们pd节点负载不高,调这个意义不大
过大的 Region 可能带来以下影响:
- 性能抖动。
- 查询性能回退,尤其是大范围数据查询的性能会有回退。
- 调度变慢。
结合以上回答,感觉可以考虑调整为 128MB
https://docs.pingcap.com/zh/tidb/stable/tune-region-performance/#:~:text=使用%20region-split-size%20调整Region%20大小&text=Region%20大小的推荐范围,性能抖动。
取一个更安全范围。
调大注意这个即可:https://github.com/tikv/tikv/issues/17382
这个影响看起来还好。
使用容量较大的本地盘,如果region大小不调整,会导致单节点region个数过多,心跳检测造成资源损耗。
我记得官网建议单个tikv最好是2T,大于2T可能会热点读写比较多。可以略微调大一点,比如楼上说的调整到128M。
大表并发度可能不够,SQL 性能可能下降,因为一个 region 里数据太多了,看你前边说的 TiKV cpu 使用率在 30%,估计你的 SQL 不会太复杂,问题不大
磁盘建议用 nvme ,性能好点
主要是集群间心跳压力,PD 调度压力吧
调整 Region 大小,和升级是两个事情吧,你这 v5.3 =》 v7.5 ,TiDB 会有很多优化项
不建议你本地升级,因为各种新特性的参数都是关的
此话题已在最后回复的 7 天后被自动关闭。不再允许新回复。