gpt4 book ai didi

Elasticsearch 索引复制到新服务器

转载 作者:行者123 更新时间:2023-12-03 01:08:01 25 4
gpt4 key购买 nike

我对 Elasticsearch 很陌生,我有一个架构问题。我有一个存储文件的系统。其中一些文件是公共(public)的,其中一些是私有(private)的。

在主系统中,文档被输入、索引和搜索。到目前为止,这很容易实现。

虽然这里有一个额外的要求。

  • 我需要创建一个从属系统,它是主要主 ES 实例的复制,尽管它不能包含任何私有(private)文档,即使在索引级别也不行。因此,仅确保使用过滤器搜索正确的文档是不够的,但索引不能包含标记为私有(private)的文档

  • 我想知道我是否可以执行以下操作->

    1、克隆主ES实例
    2、删除所有私有(private)文档
    3、重新索引整个索引
    4、创建干净的ES的快照
    5、将此快照恢复到Slave Public实例。

    这对我来说听起来很复杂。有没有更好/更简单的方法来做到这一点?

    非常感谢您提前提供任何指示,

    最佳答案

    我建议这种方法作为替代方案。在您的主 Elasticsearch 集群上创建两个索引,Public 和 Private。同时创建索引别名 http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/indices-aliases.html这涵盖了两者,以便您可以方便地一次查询两个索引。

    然后您可以使用 Elasticsearch 快照并恢复 http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/modules-snapshots.html仅拍摄公共(public)索引的快照并将其还原到另一个集群。

    这样你就有了另一个只有公共(public)索引的 ES 集群。

    另一种方法是将每个索引(公共(public)和私有(private))保留在它自己的集群中。当您想要跨公共(public)和私有(private)运行查询时,请使用部落节点。部落节点将连接到两个集群并在两个集群上运行查询:http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/modules-tribe.html

    关于Elasticsearch 索引复制到新服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23872679/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com