【问题标题】:What is the use of maintaining two aliases for a single Elastic Search Index为单个弹性搜索索引维护两个别名有什么用
【发布时间】:2019-01-11 04:33:29
【问题描述】:

我最近一直在探索 Elastic Search。

我一直在使用别名。我看到 ES 提供了一个 API 来为单个索引创建多个别名,如下所示:

{ "actions" : [{ "add" : { "indices" : ["test1", "test2"], "alias" : "alias1" } }] }

参考:https://www.elastic.co/guide/en/elasticsearch/reference/current/indices-aliases.html#indices-aliases

我想知道这个的用例是什么。

如果一个别名指向多个索引,对别名的查询不会被拆分吗?

我已尝试获取信息,但未能这样做,因为到处都在解释如何实现这一目标,而不是用例。

将我引导到可以获取更多信息的资源也会有所帮助。

【问题讨论】:

    标签: elasticsearch elasticsearch-5 aliases elasticsearch-indices


    【解决方案1】:

    一个可能的用例是当您的应用程序必须从 旧索引到零停机时间的新索引

    假设您因为某些原因想要重新索引索引并且您没有在索引中使用别名,那么您需要更新您的应用程序以使用新的索引名称。

    这有什么帮助?

    假设您的应用程序使用别名而不是索引名称。

    让我们创建一个索引:

    PUT /my_index
    

    创建它的别名:

    PUT /my_index/_alias/my_index_alias
    

    现在您决定重新索引您的索引(也许您想更改现有映射)。

    文档正确重新索引后,您可以切换别名以指向新索引。

    注意:在将别名添加到新索引的同时,您需要从旧索引中删除别名。您可以使用 _aliases 端点原子地做到这一点。

    好好读一下:elastic

    根据您为单个索引维护两个别名的问题用法:

    • 在索引中的文档子集上创建“视图”。

    使用多个具有相同别名的索引:

    • 将多个索引分组到同一个名称下,如果您想同时对多个索引执行单个查询,这将很有帮助。

    • 但您不能使用此策略插入/索引数据。

    【讨论】:

    • 如果没有正确传达,我深表歉意。我不是在寻找别名的用法。我正在寻找同时具有相同别名的多个索引的用例。
    • 更新了我的答案。
    • 当您指出:在索引中的文档子集上创建“视图”。我们可以使用过滤别名来实现这一点。为什么我们需要在多个索引上使用相同的别名。
    • 将多个索引分组在同一个名称下,如果您想同时对多个索引执行单个查询,这将很有帮助。 - 另外,我要求的是一个实时用例,但不是这个功能的用处(因为我在查看文档时得到了这个。)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-11-25
    • 2017-08-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-01-31
    • 2021-05-18
    相关资源
    最近更新 更多