首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Hazelcast IMap : keySet()与localKeySet()

Hazelcast IMap : keySet()与localKeySet()
EN

Stack Overflow用户
提问于 2015-09-21 14:12:43
回答 1查看 940关注 0票数 2

我在带有5+节点的集群中使用Hazelcast 3.4。我有一个映射,其中键是复杂的对象(而不是原始类型)。在任何时候,地图的大小可能在200 K左右。

我理解映射中的条目/值将存储在不同的分区中。不过,我想知道以下几点。

  1. Hazelcast集群中的每个成员是否维护有关给定映射中所有键集的信息,还是只维护其所拥有的分区中这些键的子集的信息?

2和3是后续问题。

  1. keySet()是一个分布式操作吗?(也就是说,它是否一定涉及集群环境中的远程机器通信)
  2. localKeySet()是一个分布式操作吗?

有关这一问题的更多背景资料:

我需要通过调用第三方程序公开的服务cachedKeys(K[]密钥),在定期的时间间隔内通知第三方程序中的哈泽尔广播映射中存在的密钥。

选项1:从集群中节点的任何调用keySet(),以检索映射中的所有密钥,然后从该节点调用cachedKeys(K[]密钥)服务。

选项2:从集群中每个节点的调用localKeySet(),以标识每个节点拥有的本地密钥,然后从每个节点调用cachedKeys(K[]密钥)。

以上答案将帮助我选择正确的选择。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-10-04 11:18:37

成员不维护全局密钥集。每个成员只知道本地条目。因此,keySet()是一个针对所有成员的分布式操作,而localKeySet()只是一个本地操作。我希望这个信息能对你有所帮助。

问题在谷歌小组中得到回答:学分: Jaromir Hamala

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

https://stackoverflow.com/questions/32697445

复制
相关文章

相似问题

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