索引结构

索引结构

索引结构分为:索引字段和属性字段。其中索引字段为文本类型字段分词,提供检索服务,而属性字段则提供统计、排序、过滤、聚合等功能。

支持创建为索引字段的类型

INT,INT_ARRAY,TEXT,SHORT_TEXT,LITERAL,LITERAL_ARRAY,TIMESTAMP,GEO_POINT

不支持创建为索引字段的类型

FLOAT,FLOAT_ARRAY,DOUBLE,DOUBLE_ARRAY

支持创建为属性字段的类型

INT,INT_ARRAY,LITERAL,LITERAL_ARRAY,FLOAT,FLOAT_ARRAY,DOUBLE,DOUBLE_ARRAY,TIMESTAMP,GEO_POINT

不支持创建为属性字段的类型

TEXT,SHORT_TEXT

组合索引

组合索引是将多个text类型或者多个short_text类型的字段放在一个索引中进行查询,其与多个索引OR 查询略有区别:

假设应用有2个索引,一个组合索引分别对应的字段是:

title_index - title、body_index - body、union_index - title和body

有一条文档内容为:

id:123456,title:开放,body:搜索

当我们用以上三个索引查询时:

#两个索引OR 查询 - 无结果召回
query=title_index:'开放搜索' OR body_index:'开放搜索'

#组合索引 - 可以召回该文档
query=union_index:'开放搜索' 

注意

  • 组合索引的字段类型需要一致,不能混用(short_text+text 暂不支持)。

  • 系统自带的default索引只能包含TEXT类型字段

分析方式介绍

文本分析器:用于文本分词召回(中英文、通用行业、IT内容、电商、教育等)、数值或定长字符精确匹配、模糊匹配、范围搜索(地理位置、时间范围、数值范围)。

属性字段介绍

使用说明:在filter、aggregate、sort、distinct子句中使用属性字段,可实现过滤、统计、排序等功能。比如“filter=id>100000”。