Text
當一個字段是要被全文檢索時,比如 Email 內容、產品描述,這些字段應該使用 text 類型。設置 text 類型以后,字段內容會被分析,在生成倒排索引之前,字符串會被分析器分詞。text類型的字段不用于排序,很少用于聚合。
注意事項:
- 適用于全文檢索:如 match 查詢。
- 文本字段會被分詞。
- 默認情況下,會創建倒排索引。
- 自動映射器會為 Text 類型創建 Keyword 字段。
Keyword
Keyword 類型適用于不分詞的字段,如姓名、Id、數字等。如果數字類型不用于范圍查找,用 Keyword 的性能要高于數值類型。
注意事項
- Keyword 不會對文本分詞,會保留字段的原有屬性,包括大小寫等。
- Keyword 僅僅是字段類型,而不會對搜索詞產生任何影響。
- Keyword 一般用于需要精確查找的字段,或者聚合排序字段。
- Keyword 通常和 Term 搜索一起用
在text類型中可以設置keyword
"product_name": {"type": "text", "fields": {"keyword": { // 為產品名稱字段添加一個keyword類型的子字段,用于精確匹配"type": "keyword"}}}