表格存储服务 CloudTable
表格存储服务 CloudTable
- 最新动态
- 产品介绍
- 计费说明
- 快速入门
-
用户指南
- HBase用户指南
- Doris用户指南
- ClickHouse用户指南
- 权限管理
- 审计日志
- 集群日志管理
- 最佳实践
- 开发指南
- API参考
- SDK参考
-
常见问题
-
通用类
- CloudTable集群能够提供什么服务?
- 为什么要选择CloudTable服务?
- 创建CloudTable HBase集群要准备什么?
- 使用CloudTable服务时需要关注什么?
- CloudTable HBase集群支持哪些压缩算法?
- 能停止CloudTable服务吗?
- CloudTable中的HBase外部接口支持哪些编程语言?
- 故障RegionServer个数怎么判断?
- CloudTable HBase支持的特殊符号?
- CloudTable数据进行删除,导致索引表和数据表不对应查询异常处理办法?
- python通过thrift访问cloudtable,多个任务并行缓慢
- 如何查看HBase shell的TTL属性?
- 服务器资源为什么会被释放?
- 资源停止服务或逾期释放说明
- 哪些场景会影响数据均衡?
- 如何调整数据均衡的灵敏度,调整后有哪些影响?
- Doris集群回收站数据处理
- 连接访问类
- 数据读写类
- 数据导入
- 网络配置
- 计费类
-
通用类
- 文档下载
- 通用参考
更新时间:2023-09-27 GMT+08:00
链接复制成功!
基于索引查询数据
基于索引查询
在具有索引的用户表中,可以使用SingleColumnValueFilter来查询数据。当查询条件可以命中索引时,查询速度远快于原表查询。
索引的命中规则如下:
- 多个AND条件查询。
- 当用于查询的列至少包含索引第一个列时,使用索引会提高查询性能。
该索引在以下情况下生效:
Filter_Condition(IndexCol1)AND Filter_Condition(IndexCol2)AND Filter_Condition(IndexCol3) Filter_Condition(IndexCol1)AND Filter_Condition(IndexCol2) Filter_Condition(IndexCol1)AND Filter_Condition(IndexCol3) Filter_Condition(IndexCol1)
该索引在下列情况下不生效:
Filter_Condition(IndexCol2)AND Filter_Condition(IndexCol3) Filter_Condition(IndexCol2) Filter_Condition(IndexCol3)
- 当在查询中使用“索引列和非索引列”进行过滤时,使用索引可提高查询性能。当非索引列命中覆盖列时,查询性能最优;如果有需经常查询的非索引列,建议定义为覆盖列。例如:
Filter_Condition(IndexCol1)AND Filter_Condition(NonIndexCol1) Filter_Condition(IndexCol1)AND Filter_Condition(IndexCol2)AND Filter_Condition(NonIndexCol1)
- 当多个列用于查询时,只能为组合索引中的最后一列指定值范围,而其他列只能设置为指定值。
例如,为C1、C2和C3创建组合索引。在范围查询中,只能为C3设置数值范围,过滤条件为“C1 = XXX,C2 = XXX,C3 = 数值范围”。
- 当用于查询的列至少包含索引第一个列时,使用索引会提高查询性能。
- 多个OR条件查询。
例如,为C1、C2和C3创建组合索引。
- 仅对索引列首个字段进行进行过滤时(支持范围过滤),使用索引可提高查询性能。
Filter_Condition(IndexCol1)OR Filter_Condition(IndexCol1)OR Filter_Condition(IndexCol1)
- 对非索引和非索引列进行过滤时,无法命中索引,查询性能不会提高。
Filter_Condition(IndexCol1)OR Filter_Condition(NonIndexCol1)
- 组合查询时,最外层包含OR条件时无法命中索引,查询性能不会提高。
Filter_Condition(IndexCol1)OR Filter_Condition(NonIndexCol1) (Filter_Condition(IndexCol1)AND Filter_Condition(IndexCol2))OR(Filter_Condition(NonIndexCol1))
减少OR条件使用,尤其是OR条件+范围条件,命中索引的情况下也会造成查询大范围查询,速度较慢。
- 仅对索引列首个字段进行进行过滤时(支持范围过滤),使用索引可提高查询性能。
父主题: 使用全局二级索引