gpt4 book ai didi

search - 我们可以确保在本地调用Elasticsearch吗?

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

假设我有一个服务,并且Elasticsearch在多个主机上运行。如果我确保每个主机都包含完整的Elasticsearch索引(通过使副本> = numberOfHosts-1),是否可以确保特定主机上的服务调用仅在同一主机的索引中进行搜索(即,没有Elasticsearch调用)是跨主机制作的)?

最佳答案

使用shard allocation filtering,可以确保索引的碎片仅驻留在单个主机上。但是请注意,这样做将导致主机丢失,从而导致数据丢失。

PUT test/_settings
{
"index.routing.allocation.include._ip": "192.168.1.1",
"index.routing.allocation.exclude._ip": "192.168.1.2,192.168.1.3"
}

结果,如果您直接在 test上查询 192.168.1.1索引,则可以确保 192.168.1.1和节点之间不会发生任何 Flutter 来满足您的请求。

如果将查询发送到客户端节点或其他类型的负载均衡器节点,则可以确保将请求直接路由到 192.168.1.1,因为集群将意识到 test索引仅在该主机上可用。

在单个主机上本地化索引不是一个好习惯,因为该主机发生故障或损坏时,一定会丢失数据。

关于search - 我们可以确保在本地调用Elasticsearch吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38005748/

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