text:全文檢索類型,經過分詞處理,支持模糊匹配?
keyword:精確匹配類型,適用于聚合、排序和過濾?
text
1. 核心屬性
?analyzer屬性?:
指定用于索引和搜索的分詞器
默認使用標準分析器(Standard Analyzer)
示例:"analyzer": "ik_max_word"(中文分詞器)?
?search_analyzer屬性?:
指定用于搜索的分詞器
當搜索時需要使用不同分詞器時設置
示例:"search_analyzer": "ik_smart"?
?fields屬性?:
創建子字段實現多用途索引
典型用法:"fields": {"raw": {"type": "keyword"}}?
2. 高級屬性
index_options屬性?:
控制倒排索引的存儲方式
可選值:docs(默認)、freqs、positions、offsets
影響查詢性能和存儲空間?
?similarity屬性?:
設置相似度算法
影響評分計算方式
可選值:BM25(默認)、classic等?
?copy_to屬性?:
將多個字段值合并到單個字段
常用于構建組合搜索字段
示例:"copy_to": "full_text"?
3. 性能優化屬性
?eager_global_ordinals屬性?:
優化聚合性能
預加載全局序數(ordinals)數據
默認false?
?boost屬性?:
設置字段權重
影響搜索結果排序
示例:"boost": 2.0?
?ignore_above屬性?:
設置字段最大索引長度(UTF-8字符數)
超過該長度的值不會被索引(默認256)
示例:"ignore_above": 1024