索引結構
索引結構分為:索引欄位和屬性欄位。其中索引欄位為文本類型欄位分詞,提供檢索服務,而屬性欄位則提供統計、排序、過濾、彙總等功能。
支援建立為索引欄位的類型
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:'OpenSearch' OR body_index:'OpenSearch'
#複合式索引 - 可以召回該文檔
query=union_index:'OpenSearch'
注意:
複合式索引的欄位類型需要一致,不能混用(short_text+text 暫不支援)。
系統內建的default索引只能包含TEXT類型欄位
分析方式介紹
文本分析器:用於文本分詞召回(中英文、通用行業、IT內容、電商、教育等)、數值或定長字元精確匹配、模糊比對、範圍搜尋(地理位置、時間範圍、數值範圍)。
屬性欄位介紹
使用說明:在filter、aggregate、sort、distinct子句中使用屬性欄位,可實現過濾、統計、排序等功能。比如“filter=id>100000”。