【 TiDB 使用环境】生产环境 /测试/ Poc
【 TiDB 版本】6.5
【复现路径】
【遇到的问题】
1、通过两条sql语句和mysql做了对比,查询效率都不如mysql。mysql是单机 部 署,tidb是集
群部署,理论上将tidb利用了mpp思想并发计算应该更快才对啊,我想知道大家是不是也 有
类似的问题?
2、我们之所以用tidb替换mysql,一方面是想解决数据量大的问题,tidb可以横向扩容,另一方面
想解决表数据量大以后mysql查询速度慢的问题,难道tidb的多节点分片、mpp并行计算不比
mysql单节点效率高吗?
【资源配置】mysql单机部署,tidb3个pd节点,6个kv节点。服务器配置都是一样的。
【附件:截图/日志/监控】
1、简单sql(注:rcc_d_houseMeterHistoricalData表数据量1亿5千万数据量)
2、复杂sql(注:rcc_d_houseMeterHistoricalData表数据量1亿5千万数据量)
xfworld
(魔幻之翼)
2023 年3 月 5 日 00:20
2
按照你的思路,可以对比下执行计划,(按照提供的数据量,simple 查询 【命中索引不回表】 tidb 秒级返回…)
mysql 能优化的空间有多大,你肯定清楚
tidb 的优化以及使用规则,你还需要在学习学习…
1 个赞
你的截图是mysql还是tidb,给一下对比数据呀。
可调的空间很大的
1 个赞
我截图的是tidb,mysql的查询速度差不多能快3到5秒
人如其名
(人如其名)
2023 年3 月 5 日 07:49
5
把这两个SQL的 explain analyze信息贴出来看下。
explain analyze
不贴执行计划,没办法做比较啊。多一个索引,少一个索引,统计信息不一致,都有可能执行速度不一样。
2 个赞
人如其名
(人如其名)
2023 年3 月 5 日 15:26
8
执行计划信息不全
TableReader算子总执行时间:15.2s,copTask一共345个,每一个copTask平均执行时间(在tidb侧)167.9ms,因此推测并行度是4-5左右。
是不是调了tidb_distsql_scan_concurrency这个参数呢,默认是15,可以查下贴出来看看。
show variables like ‘tidb_distsql_scan_concurrency’;
这个time有参考意义吗,感觉每次执行结果相差很大
你把mysql的执行计划也贴出来看看,不会是mysql 上有索引,tidb没索引吧?
1 个赞
但是你tidb上没有走索引,走的全表扫啊。。。你tidb上的统计信息是最新的吗?
1 个赞
tidb菜鸟一只:
走的
tableRangeScan不是是范围扫描,不是全表扫描吧?
方便上传一下sql,完整执行计划,涉及的相关表结构吗
考试没答案
(Ti D Ber P Kfity Gq)
2023 年3 月 6 日 02:32
20
MPP 框架 需要tiflash 节点吧。 您没部署这类节点吧