相同的表,相同的量级,最简单的 select * from table limit 10 tidb 比mysql慢2到3倍

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

是否是参数配置需要优化?

  1. sql 的形式,辛苦给出下,理论上 mysql 作为单机数据库,在某些场景比 tidb 查询速度快是预期行为,我们需要关注 tidb 的 sql 执行时间是否可以接受,在根据监控看下是否有其他问题。如果有需要给出 explain sql 我们看下 sql 执行计划是否符合预期,表结构也需要提供下哦。

  2. 使用以下方式给出监控,我们看下,注意选取 grafana 中的时间区间。
    https://metricstool.pingcap.com/

hi 对于这个 sql 可以试下先执行以下 sql 设置并发度

set @@ tidb_distsql_scan_concurrency=1;

如果是从程序可以在测试程序连接参数中设置 session 变量配置:
GitHub - go-sql-driver/mysql: Go MySQL Driver is a MySQL driver for Go's (golang) database/sql package
https://dev.mysql.com/doc/connector-j/5.1/en/connector-j-reference-configuration-properties.html#sessionVariables

思路是 limit 10 且无其他条件,默认的 15 并发有无谓的资源消耗, 不用并发更合适

这个场景的通用处理已经在 master 5.0 中 executor: set the coprocessor concurrency to 1 for simple scan with limit. by coocood · Pull Request #19098 · pingcap/tidb · GitHub 处理

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