为提高效率,请提供以下信息,问题描述清晰能够更快得到解决:
【 TiDB 使用环境】
标准测试集群,3PD + 2 TiDB + 3TiKV + 2TiFlash
【概述】 场景 + 问题概述
用户归档场景, 存在某订单表order (数十亿级), 主键为订单号, 存在一列为订单创建日期create_time, 在归档场景中,往往需要根据订单创建日期筛选找出top N笔数据进行归档操作,如此反复。
现用户问,订单创建日期列上不存在二级索引,若执行 select top 1000 * from order where create_time < ‘时间范围’。 在TiDB上会如何执行? 是否会先从列存TiFlash扫创建日期列并排序找出top N的行号,然后从TiKV取数? 还是直接通过tiflash或者tikv执行?如何保证性能?
【现象】 业务和数据库现象
大表归档业务。
【问题】 当前遇到的问题
评估是否存在潜在性能瓶颈。
【 TiDB 版本】 TiDB 5.0