如何在没有停机时间的情况下添加“_routing.path”在弹性1.x中重新索引?

时间:2016-11-29 10:19:29

标签: elasticsearch

Elastic 1.x允许在映射默认path中定义用于提取所需的routing字段,例如:

{
    "comment" : {
        "_routing" : {
            "required" : true,
            "path" : "blog.post_id"
        }
    }
}

是否可以动态地添加该字段,而不会造成停机?

因此,映射先前定义为:

{
    "comment" : {
        "_routing" : {
            "required" : true
        }
    }
}

1 个答案:

答案 0 :(得分:1)

更新无效。即使确认命令,也不会应用更新。

您还需要重新索引文档。如果该路径发生变化且值不同,则意味着文档最终可能以与现在不同的分片结束。因此,假设可以进行更改,您基本上可以更改文档可以路由的散列,也可以从分片中更改 GET ed(获取),它将是一团糟。