我使用Spring Data Elasticsearch在我的SpringBoot应用程序中为我的实体添加了@Document(shards=5)
。我已经意识到它太浪费资源了,并将其简化为@Document(shards=1)
,并只是使用新代码重新部署了Java应用程序。我没有对ElasticSearch采取任何行动。
Jest客户端应该尽一切努力减少使用的分片数量,还是应该由自己作为Elasticsearch管理员来完成?
最佳答案
Spring Data Elasticsearch在创建索引时会使用此信息;它没有重新申请更改分片的编号等参数。因此,Spring Data Elasticsearch无法实现您想做的事情。
如果您有能力删除数据并有可能重新加载数据,则删除索引,使用更改后的@Document
批注重新启动程序并重新加载数据。
如果您不能简单地重新加载数据,则可以直接在Elasticsearch中执行以下操作(有关确切命令,请参阅Elasticsearch文档):
@Document
批注以使用新的索引。 关于spring - 如果我减少@Document批注中的shards参数,Elasticsearch会自行减少shards数量吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57493957/