当前位置: 首页 > 知识库问答 >
问题:

碎片和副本的基本分布方式

叶晋
2023-03-14

我正在尝试在我的本地机器上安装弹性搜索环境的单集群-多节点环境。我混淆了碎片和复制品的概念

情况1)在下面的pic中:emp索引碎片数=1和副本数=1,这似乎很好,因为主节点不包含副本,碎片数应该是1,所以分配另一个节点中的一个成为它的碎片和副本

情况2)在情况2中,员工索引-i增加了碎片数=2和副本数=2->

下面那个头部插件在暗示什么

1)我们设置的碎片数量是否存在于每个节点中-例如,在employee的情况下为2个-每个节点上存在2个碎片,其中2个是副本??为什么在emp的情况下,它不存在于节点-2中

2)如emp情况所示,主节点上不强制存在Is碎片-节点2不包含任何碎片

我知道有未定位副本的概念,但这应该是当我的节点小于我的副本大小。

任何指针都会有帮助。

共有1个答案

慕容康安
2023-03-14

我似乎得到了答案,正如文章https://www.elastic.co/guide/en/elasticsearch/reference/6.2/_basic_concepts.html所述

默认情况下,在Elasticsearch中为每个索引分配5个主碎片和1个副本,这意味着如果集群中至少有两个节点,则索引将有5个主碎片和另外5个副本碎片(1个完整副本),每个索引总共有10个碎片。

所以在我的情况下-当碎片数/副本数设置为1时

碎片-1个和1个副本-总共2个碎片

当碎片数/副本数设置为2时

没有碎片2-没有副本-4(因为每个碎片有2个副本)-我在这里感到困惑,认为总共创建了2个副本

已检查

碎片数/副本数设置为3

我的逻辑总共生成了12个碎片。

如果我错了请纠正我。

 类似资料:
  • 我试图理解什么是碎片和副本在Elasticsearch中,但我没有设法理解它。如果我下载Elasticsearch并运行脚本,那么根据我所知,我已经启动了一个具有单个节点的集群。现在这个节点(我的PC)有5个碎片(?)还有一些复制品(?)。 它们是什么,我有5个重复的索引吗?如果是,为什么?我需要一些解释。

  • 假设在创建索引时,我没有为此设置任何副本,如果我使用update settings API进行更新,并且将副本状态更改为1。如果我有2个节点,那么应该在第二个节点上创建副本,因为在主节点侧,由于集群状态显示黄色,碎片没有分配给node2,所以不会创建副本,即使我们将副本启用为1。 请分享为什么副本碎片没有分配到Node2? 但在集群启动时,节点显示它们检测到并相互连接。

  • 我正在运行一个2节点的elasticsearch集群,并将我的所有索引配置为2个主碎片和1个副本。起初,我认为每个节点将存储1个主碎片和1个副本,尽管这不是正在发生的事情。 如上所示,每个碎片都由单个节点托管,没有分配副本。 我做错了什么?

  • 问题内容: 我试图了解Elasticsearch中的分片和副本,但是我没有设法理解它。如果我下载Elasticsearch并运行脚本,那么据我所知,我已经启动了具有单个节点的集群。现在,该节点(我的PC)具有5个分片(?)和一些副本(?)。 它们是什么,我有5个重复的索引吗?如果可以,为什么?我可能需要一些解释。 问题答案: 我将尝试用一个真实的例子来解释,因为您得到的答案和答复似乎对您没有帮助。

  • 有人能告诉我如何选择弹性搜索索引的碎片和副本数吗? 我已将索引的大小配置为20GB,但不知道如何选择编号或碎片和副本 注意:我有5个节点,3个主节点(用于热数据),2个数据节点(一个用于热数据,第二个用于冷数据) 谢谢你的帮助

  • 我正在建立Shared集群的过程中。 我还想在集群中配置读副本。 假设有一个3,1个主要和2个次要的碎片。写将转到碎片的主成员,但我可以将所有读发送到次成员吗?