如何设置索引的现有弹性搜索映射:no到index:analyze

时间:2015-09-15 11:44:07

标签: elasticsearch elasticsearch-plugin

我是弹性搜索新手,我想更新索引下的现有映射。我现有的映射看起来像

cordova.plugins.diagnostic.switchToLocationSettings();

我想从我要映射的映射更新此字段,以便我的'customerReferenceNumber'字段可用于搜索。 我试图在Sense插件中运行以下查询来执行此操作,

"load":{
    "mappings": {
        "load": {
            "properties":{
                "customerReferenceNumbers": {
                   "type": "string",
                   "index": "no"
                }
             }
         }
     } 
 }

但是这个命令出现以下错误, MergeMappingException [合并失败,失败{[mapper customerReferenceNumbers]具有不同的索引值]

虽然存在与这些映射关联的数据,但在这里我无法理解为什么弹性搜索不允许我更新从无索引到索引的映射?

提前致谢!!

2 个答案:

答案 0 :(得分:2)

ElasticSearch不允许这种变化。

即使有可能,因为您必须重新索引数据以便使用新映射,您可以更快地使用新映射创建新索引,并将数据重新索引到其中。

如果您无法承受任何停机时间,请查看alias功能designed for these use cases

答案 1 :(得分:1)