弹性搜索索引映射更新

时间:2016-10-28 13:12:48

标签: elasticsearch lucene bigdata

我正在使用ES-2.4.0
索引json:
 { "_id": 1, "name": "Longsword", "description": "The Longsword can be wielded in one or two hands", "category": "Sharp" }

1.我创建了一个索引,并且正在创建默认映射 2.现在我正在尝试更新此处建议的映射。

链接:https://gist.github.com/nicolashery/6317643

关于第1点:我没有使用任何分析仪;
  关于第2点:我正在使用分析仪" not_analysed"

但它没有用。

问题:如果不能更新映射,ES-2.X是否已停止映射更新工具?

注意:尝试我收到此错误

  

{       "错误":{           " root_cause":[               {                   "输入":" illegal_argument_exception",                   " reason":" [name]的Mapper与其他类型的现有映射冲突:\ n [mapper [name]有不同的[analyzer]]"               }           ]           "输入":" illegal_argument_exception",           " reason":" [name]的Mapper与其他类型的现有映射冲突:\ n [mapper [name]有不同的[analyzer]]"       },       "状态":400   }

1 个答案:

答案 0 :(得分:2)

不,不允许更改现有字段的映射类型 ES 2.x 以上。

来自documentation

  

通常,现有字段的映射无法更新。那里   是这个规则的一些例外。例如:

     
      
  • 可以将新属性添加到Object数据类型字段中。
  •   
  • 可以将新的多字段添加到现有字段中。
  •   
  • doc_values可以被禁用,但不能启用。
  •   
  • 可以更新ignore_above参数。
  •   

您必须先delete the index并使用新映射创建一个新的{{3}}。还有一个小错字, not_analyzed (" z" not" s")