region分区没有插进去数据

为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。

  • 【TiDB 版本】:3.0.1
  • 【问题描述】:
    创建两张一样的表test1和test2,test1是预热分region,test2是创建好表之后再spilt分的region,插入60W条数据,show table regions看到test1是29个region,test2却是38个region,查看region大小发现test2有8个region大小为022


补充说明,过了一晚上test1还是29个region,test2还是38个region,见截图

预分 region 以及 split region 的命令可以发下吗?

CREATE TABLE test1 ( 表结构 ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin/*!90000 SHARD_ROW_ID_BITS=5 PRE_SPLIT_REGIONS=5 */ COMMENT=‘弹幕信息表’;

CREATE TABLE test2 ( id bigint(64) NOT NULL COMMENT ‘唯一id’, 表结构 UNIQUE KEY id_uniq_index (id) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin/*!90000 SHARD_ROW_ID_BITS=5 */ COMMENT=‘弹幕信息表’;

SPLIT TABLE barrage_message_info BETWEEN (-9223372036854775808) AND (9223372036854775807) REGIONS 16;


tidb集群调整了这两个参数,小的region和空的region到一定时间会合并成一个region,前期生产环境数据量不是很大,合并成一个region tidb的读写性能会受影响。。处于这个目的调整这两个参数

我在我测试环境测试了一下是符合预期的,版本是 v3.0.5

另外,PRE_SPLIT_REGIONS=5 表示预分 2^5=32 个 region,所以对应的 SPLIT TABLE 也应该是 16。

SPLIT TABLE 是在 60W 数据插入之后操作的还是在插入之前?

是在插入数据之前SPLIT TABLE的

建议升级到新版本后再测试一下,看是否现象相同

好的,谢谢

:+1::+1::+1: