TiDB CBO优化问题

【 TiDB 使用环境】
V5.4.0

【概述】 场景 + 问题概述
一个 olap sql, 只要查询条件中命中了索引,就不走tiflash,会走tikv的索引,但是因为ap sql,走tikv明显不如走tiflash快,但是cbo还是决定走tikv,这个问题什么时候可以优化?

默认 走tikv,耗时分钟级:

强制走tiflash,0.3s出结果

  1. 优先解决问题,如果确认此中类型的 SQL 都是走 TiFlash 比较快,那么按照您修改后的,在业务侧加上 hint https://docs.pingcap.com/zh/tidb/stable/optimizer-hints#read_from_storagetiflasht1_name--tl_name--tikvt2_name--tl_name-
  2. 或者考虑 SPM
    https://docs.pingcap.com/zh/tidb/stable/sql-plan-management#执行计划管理-spm
  3. 优化器的问题,可以先收集统计信息后看看,是否能够走 TiFlash。 如果不行,麻烦导出统计信息,并且上传下表结构和查询语句的文本信息,以及 explain analyze 的文本信息,多谢。
    https://docs.pingcap.com/zh/tidb/stable/statistics#导出统计信息
1 个赞

该主题在最后一个回复创建后60天后自动关闭。不再允许新的回复。