es 的字段类型(text和keyword)

Text

当一个字段是要被全文检索时,比如 Email 内容、产品描述,这些字段应该使用 text 类型。设置 text 类型以后,字段内容会被分析,在生成倒排索引之前,字符串会被分析器分词。text类型的字段不用于排序,很少用于聚合。

注意事项:

  • 适用于全文检索:如 match 查询。
  • 文本字段会被分词。
  • 默认情况下,会创建倒排索引。
  • 自动映射器会为 Text 类型创建 Keyword 字段。

Keyword

Keyword 类型适用于不分词的字段,如姓名、Id、数字等。如果数字类型不用于范围查找,用 Keyword 的性能要高于数值类型。

注意事项

  • Keyword 不会对文本分词,会保留字段的原有属性,包括大小写等。
  • Keyword 仅仅是字段类型,而不会对搜索词产生任何影响。
  • Keyword 一般用于需要精确查找的字段,或者聚合排序字段。
  • Keyword 通常和 Term 搜索一起用

在text类型中可以设置keyword

json 复制代码
  "product_name": {
       "type": "text", 
       "fields": {
         "keyword": { // 为产品名称字段添加一个keyword类型的子字段,用于精确匹配
           "type": "keyword"
         }
       }
  }
相关推荐
何妨呀~1 天前
Elasticsearch集群部署
elasticsearch
Z文的博客1 天前
嵌入式LINUX QT 开发 .gitignore 文件编写指南
linux·git·qt·elasticsearch·嵌入式
青龙小码农1 天前
milvus+elasticsearch+ollama实现企业级RAG搭建
elasticsearch·milvus·ollama·rga
恼书:-(空寄2 天前
ES性能调优实战指南
elasticsearch
Elastic 中国社区官方博客2 天前
Elasticsearch:智能搜索 - AI builder 及 skills
大数据·人工智能·elasticsearch·搜索引擎·ai·信息可视化·全文检索
Elasticsearch2 天前
向量预处理:让 Elasticsearch VectorDB 更好地为每个向量实现二进制量化工作
elasticsearch
Young soul22 天前
docker-compose安装elasticsearch、kibana、logstash以及ik分词器
elasticsearch·docker·jenkins
Elastic 中国社区官方博客2 天前
Elasticsearch:智能搜索 - AI builder,workflow 及 skills
大数据·数据库·人工智能·elasticsearch·搜索引擎·ai·全文检索
Young soul22 天前
Elasticsearch(v8.5) 常用操作大全
大数据·elasticsearch·jenkins
海兰2 天前
Elastic 基于 Agentic 架构与 MCP 的 Kubernetes 智能可观测性深度解析
elasticsearch·容器·架构·kubernetes