如下图,region1->region2 进行 merge,但在 store4 上不存在 region1,store1 上不存在 region2,这种情况下 merget target 是 region2,store1 和 store4 会发生什么。
store2 和 store3 是不是会,先把 region1 复制拷贝到 region2,然后删除对应的 peer,这是两个操作,前者是怎么实现的,snapshot?后者呢。
谢谢
如下图,region1->region2 进行 merge,但在 store4 上不存在 region1,store1 上不存在 region2,这种情况下 merget target 是 region2,store1 和 store4 会发生什么。
store2 和 store3 是不是会,先把 region1 复制拷贝到 region2,然后删除对应的 peer,这是两个操作,前者是怎么实现的,snapshot?后者呢。
谢谢
参考这儿:
Region 不是前期划分好的,但确实有 Region 分裂机制。当 Region 的大小超过参数 region-max-size
或 region-max-keys
的值时,就会触发分裂,分裂后的信息会汇报给 PD。
Region merge 指的是为了避免删除数据后大量小甚至空的 Region 消耗系统资源,通过调度把相邻的小 Region 合并的过程。Region merge 由 mergeChecker
负责,其过程与 replicaChecker
类似:PD 在后台遍历,发现连续的小 Region 后发起调度。
具体来说,当某个新分裂出来的 Region 存在的时间超过配置项 split-merge-interval
的值(默认 1h)后,如果同时满足以下情况,该 Region 会触发 Region merge 调度:
max-merge-region-size
的值(默认 20 MiB)max-merge-region-keys
的值(默认 200000)很有帮助,谢谢
此话题已在最后回复的 7 天后被自动关闭。不再允许新回复。