当某个Region的大小超过一定限制(默认是144MB)后,TiKV 会将它分裂为两个或者更多个 Region,以保证各个 Region 的大小是大致接近的,这样更有利于 PD 进行调度决策。同样的,当某个 Region 因为大量的删除请求导致 Region 的大小变得更小时,TiKV 会将比较小的两个相邻 Region 合并为一个。
无法配置分片规则:虽然 PD 可以通过调整 region 大小与位置,达到负载均衡,但当写入集中于某一张表时,特别是如果写入的值的索引值也是连续的(比如 update time 这种按时间递增的字段),因表数据和索引数据都具有相同的前缀,且它们都是连续存储的,就会造成在很少的几个 Region 上形成写入热点,成为整个系统的瓶颈。同样,读取也有类似问题。