首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在同一现有索引中将aws弹性搜索主要碎片内容重新分配为两个大小相等的碎片

问在同一现有索引中将aws弹性搜索主要碎片内容重新分配为两个大小相等的碎片
EN

Stack Overflow用户
提问于 2020-12-08 06:10:40
回答 2查看 149关注 0票数 1

我需要一种方法,当碎片大小从给定的大小限制增加时,我需要将该碎片的数据重新分配到两个相同大小的碎片中,方法是再添加一个碎片,并将原来大小的一半超出碎片数据传输到同一索引中新创建的碎片中。

我有如下所示的碎片状态,但需要帮助找到一种分发数据的方法

代码语言:javascript
复制
{
    "index": "public",  
    "shard": "0",   
    "store": "20GB" 
}

我尝试过拆分索引API 链接,但这并不能达到目的,因为它需要一个新的不存在的索引,并且它不能对现有索引执行魔术,就像上面的索引'public‘需要相同一样,但是shard应该在它们之间增加和分发数据。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-12-08 06:52:45

这是不可能的,您不能在同一个索引上更改elasticsearch索引的主碎片,这是因为如果您的路由和位置取决于主碎片的数量(在创建索引时创建)。

如果您更改它,elasticsearch将不得不更改路由算法,并再次分发数据,以便在所有碎片(包括副本)中均匀分布数据。在分布式的大型有状态应用程序上做上述工作并非易事,而elasticsearch目前还不支持它。

票数 1
EN

Stack Overflow用户

发布于 2020-12-08 06:59:28

如果您的部分数据是只读的,并且您可以激活基本许可(可能不是在aws中),您就可以定义一个ILM,您不能在不重新索引的情况下添加一个碎片(但可以添加一个副本)。

在Open中,可以使用等效的:https://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/ism.html

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65193948

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档