tiflash不支持日期类型查询

为提高效率,请提供以下信息,问题描述清晰能够更快得到解决:
【 TiDB 使用环境】

【概述】 一个表有1亿多条数据,开启tiflash后,sql查询条件中包含时间类型的不走tiflash

【应用框架及开发适配业务逻辑】

【背景】 做过哪些操作

【现象】 业务和数据库现象
个表有1亿多条数据,开启tiflash后,sql查询条件中包含时间类型的不走tiflash
【问题】 当前遇到的问题

【业务影响】

【TiDB 版本】

【附件】 相关日志及监控(https://metricstool.pingcap.com/)


若提问为性能优化、故障排查类问题,请下载脚本运行。终端输出的打印结果,请务必全选并复制粘贴上传。

何不尝试下,对时间进行分区

这个得贴一下,sql语句,表定义等内容吧

TiDB 可以自动选择使用 TiFlash 列存或者 TiKV 行存,甚至在同一查询内混合使用提供最佳查询速度。这个选择机制与 TiDB 选取不同索引提供查询类似:根据统计信息判断读取代价并作出合理选择。
可以把表结构,索引情况,执行计划都晒一下分析一下原因。

1 Like

具体时间类型指的是什么?

1 Like

不通过时间类型去查询:u6709:tiflash?

坦率的说,不建议在时间类型字段上进行操作,比如进行比较等。我们的处理方式是,对于日期、时间类型的字段,仅做记录和展示,如果需要的话,另外定义一个CHAR(8)和char(6)的字段分别记录日期和时间,然后在CHAR字段上进行比较操作,虽然性能会有一点下降,但总好过运行时由于日期时间格式,时区的问题出了问题再去解决要好得多。

楼上这种做法是挺好的

2 Likes

存储也会浪费一些

空间换时间吧,只要生产上不要出问题,就好。