问题描述
我一直在研究ELK Stack,但遇到了一个小问题。
我一直在阅读所有可能的文档,并且非常强调碎片和副本的重要性。 但是没有地方说如何配置每个的数量。我读过一些网站说最好将其保留为自动,而另一些网站则说如何在5.8版中进行配置,但不再起作用。
所以如果有人可以向我解释,我将非常感激。
解决方法
create an index时,您可以configure both values进行该索引的设置:
PUT your-index
{
"settings": {
"index.number_of_shards": 3,"index.number_of_replicas": 1
}
}
还请注意,创建索引后可以update the settings索引,但是只能更新副本数,而不能更新主分片数:
PUT your-index/_settings
{
"settings": {
"index.number_of_replicas": 2
}
}
就这么简单!
,@Val答案的一个小附加项,与主要分片有关。
您无法更改主分片的原因是由于这样的事实,它会改变数据在主分片之间的分配方式,并且更改它们会导致consistent hashing中断,这是一种非常流行的水平拆分技术扩展和拆分数据技术。
Replicas分片只是复制的,因此您可以增加和减少,因为它不会对一致性哈希产生任何影响。
如果要更改主分片,则必须创建一个新索引并使用alias API和Reindex API来有效地做到这一点,