tidb相同 sql 与mysql对比 耗时相差悬殊 有什么配置可以调么

【 TiDB 发现现象】
select 上的列做子查询 tidb 发现都很慢

【概述】 场景 + 问题概述
相同的sql
SELECT
COUNT( 1 )
FROM
(
SELECT
a.id,
a.db_name AS dbName,
a.table_name AS tableName,
a.table_alias AS tableAlias,
a.format,
a.delimit_id AS delimitId,
a.desc,
a.create_per AS createPer,
u.username AS createPerName,
a.create_time AS createTime,
(
SELECT
ap.id
FROM
data_application ap
WHERE
ap.table_id = a.id
AND ap.user_id = 72
AND ap.apply_type = 1
ORDER BY
ap.id DESC
LIMIT 1
) AS applyId
FROM
bdp_table_info a
LEFT JOIN sys_user AS u ON a.create_per = u.user_id
WHERE
1 = 1
AND (
EXISTS ( SELECT data_id FROM sys_tenant_data_permission WHERE tenant_id = 1 AND data_type = 2 AND query = 1 AND data_id=a.id )
OR a.tenant_id = 1
)
) t

【问题】 当前遇到的问题
tidb上跑 需要15s

mysql上跑只需要0.356s


【TiDB 版本】
5.7.25-TiDB-v5.2.1

子查询当字段在tidb查询是有问题的,需要改为join

参考 analyze SQL,对分析结果进行优化

tidb集群配置是怎么样的?抛开配置谈性能,都是不靠谱的

1 个赞

具体有什么问题?现在修复了么?还是哪个版本的特定问题?

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