Ignite实例之间数据的均匀分布
我有9个ignite服务器实例Ignite实例之间数据的均匀分布,ignite,gridgain,Ignite,Gridgain,我有9个ignite服务器实例I0,I1,…,I8,它的缓存处于PARTITIONED模式,在这种模式下,我从kafka中的分区P0,P1…..P8并行加载数据。在这里,分区P0,P1…P8包含可以由字段seq\u no唯一标识的条目数,并且我使用part\u ID将条目从一个分区并置到一个实例。我把key定义为 class key() { int seq_no; @AffinityKeyMapped int part_ID; //for coll
I0,I1,…,I8
,它的缓存处于PARTITIONED
模式,在这种模式下,我从kafka中的分区P0,P1…..P8
并行加载数据。在这里,分区P0,P1…P8
包含可以由字段seq\u no
唯一标识的条目数,并且我使用part\u ID
将条目从一个分区并置到一个实例。我把key定义为
class key()
{
int seq_no;
@AffinityKeyMapped
int part_ID; //for collocating entries from one partition to one instance only
}
因此,我试图在ignite实例和分区中的缓存项之间实现一对一的映射,例如,I0->P0,I1->P1,…,I8->P8
。但在我的例子中,我得到的映射是
I0-> NULL(No Entries),
I1-> P5,
I2-> NULL,
I3-> P7,
I4-> P2, P6
I5-> P1
I6-> P8
I7-> P0, P4
I8-> P3
亲和力配置部分在这里实现,即具有相同分区ID的条目缓存在相同的ignite实例上。但是,数据在ignite实例中的分布并不均匀,即
I4
和I7
保存2个分区的数据,而I0
和I2
不包含任何数据。那么,在这里,我们如何实现数据的平等分布,以便每个ignite实例获得一个分区数据?Apache ignite用户论坛也讨论了这一点: