不同表数据会不会在一个Region中?

【 TiDB 使用环境】测试
【 TiDB 版本】v7.0.0
【复现路径】
【遇到的问题:问题现象及影响】
【资源配置】
【附件:截图/日志/监控】

都知道tikv是一个大map,并且key是表id+行id的组合并且有序。那按理讲这个大Map是全局切分,一个Region是96M,正常来讲不同表数据很有可能分到相同Region中,是这样吗?

是有这种可能的。 在 region 进行 merge 时,PD 调度参数 enable-cross-table-merge 可以用来控制是否允许 merge 不同表的 region ,默认情况下是不允许的,此时就不会存在单个 region 对应多张表的情况,在设置为 true 后才允许跨表 merge region 。

region会自动分裂以及合并 不同表数据在一个region完全有可能 当然前提是相应的参数控制需要设置正确

enable-cross-table-merge

  • 设置是否开启跨表 merge。
  • 默认值:true

现在的tidb版本默认是允许

:joy:参数随着版本在变

select trs.REGION_ID,count(TABLE_ID) from INFORMATION_SCHEMA.TIKV_REGION_STATUS trs group by trs.REGION_ID having count(TABLE_ID)>1

select * from INFORMATION_SCHEMA.TIKV_REGION_STATUS trs where trs.REGION_ID=<REGION_ID>

如果你有测试环境,可以试试上面这两个sql。那些表拼在一个region里面是可以查到的。

是的,不同的表数据很有可能分布到相同的 Region 中

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