有关Region分裂、合并

我想问一下,TiDB中在Region分裂或者合并的时候,这个时候的读写性能会有影响吗?具体分裂、合并时,如何提供读写服务,具体的步骤是怎样的呢?

分裂的时候对于单个 region 的访问可能会有影响,因为 region cache 中记录的信息与实际 tikv 上 region 的情况不一致,访问的时候会有一次 backoff 重试,重试第二次的时候就会更新最新的 region 信息,所以后续其他请求访问是正常的。

另外因为默认是 96M 一个 region,分裂和合并并不会非常频繁,总体上对于请求来说几乎没有性能影响。

1 个赞

明白了,谢谢您!

客气了:grinning:

  1. 比如,当老的region添加了分裂的命令到日志中,但后来也有写操作,写入了新的日志,那么分裂之后,这些后续的日志该怎么办?
  2. 老的region分裂成两个,这两个是利用日志回放吗?还是利用快照?
  3. 在追赶的这段时间内,新的region是不能提供服务的吧?那这个时候其实性能应该是用影响的,单单对这个region的读写操作来说,是吗?
  4. 希望大佬能够告知具体的代码实现在哪里,有些细节想不明白~

可以先参考下面两个材料:

感谢 我再研究一下~

:handshake:

请问region的分裂和合并的信息有地方可以查吗,想看一下历史事件,比如日志之类的

同问!

热点region可以手工分裂把

tikv client会有一个缓存,分裂会导致缓存失效,需要从pd再拿region的信息缓存

分裂时可以正常访问,io稍有影响呀

此话题已在最后回复的 60 天后被自动关闭。不再允许新回复。