xaprice
(xaprice)
2019 年9 月 4 日 08:01
1
为提高效率,提问时请尽量提供详细背景信息,问题描述清晰可优先响应。以下信息点请尽量提供:
系统版本 & kernel 版本:redhat7.5
TiDB 版本:2.1.6
集群节点:3
问题描述(我做了什么):
搭建了多套TiDB集群,发现有个共性问题就是执行建表语句比较慢,一般在1.5-2秒左右,当某个database中表的数量较多时,在该database下建表需要5秒,这个速度在某些场景下会影响业务。
我记得在github上曾经看到过一个类似的issue(大意是描述DDL语句执行比较慢),不知道这个问题是否已经解决。或者是否其他解决方法。
欢迎大伙来交流下~
1 个赞
之前的版本如果在做 add index 操作,那么 create table 需要排队。现在 create table 和 add index 是两个不同的队列。建议可以升级下 ,例如升级到 2.1.15 版本。
最近我们有修复一个 DDL 相关的问题。 infoschema 更新比较慢的问题,https://github.com/pingcap/tidb/pull/11340
xaprice
(xaprice)
2019 年9 月 6 日 02:12
3
我们为了排除了add index和并发DDL的影响,单独搭建了一个测试集群专门用来测试建表,建表语句为:
create table if not exists test_table_xxx(a varchar(40),b varchar(50),c int, d datetime)
并保证同一时间只有一个建表语句,发现随着表数量的上升(目前已经建了1W+),建表时间从800ms上升到2000ms。
想进一步确认以下问题:
是否建表语句性能会随着表数量变大而下降?,虽然实测发现有这个趋势,但是不知道原理上是否是这样的。
如果想单纯提升单条DDL语句的执行速度,是否升级2.1.15版本无法起作用
目前是否有优化单条DDL语句的方法,如调整一些参数
https://github.com/pingcap/tidb/pull/11340, 这个issue是否还没有发布?这个issue提升后的建表性能大概是怎么样的。
system
(system)
关闭
2022 年10 月 31 日 19:06
5
此话题已在最后回复的 1 分钟后被自动关闭。不再允许新回复。