Elasticsearch 全文搜索和keyword search字段的mapping定义

在ES5.0之前我们对于需要keyword search的字段都是这样定义的:

{
  "field name":{
      "type": "string",
      "index": "not_analyzed"
  }    
}

 

全文检索:

{
  "field name":{
      "type": "string"
  }    
}

  

ES 5+:

keyword search:

{
  "field name":{
      "type": "keyword"
  }    
}

  

全文检索:

{
  "field name":{
      "type": "text"
  }    
}

 

个人觉得该变化较之前更加清晰,简洁。 

该变化的原因及更多详情可以阅读官方博客

原文地址:https://www.cnblogs.com/xzysaber/p/8776474.html