Hazelcast查询根据键集和谓词获取Map

Hazelcast query to get Map based on keyset and predicate

我有一个 hazelcast IMAP,看起来像

IMAP = key -> val1, val2, val3

在 val1、val2 上编入索引 给定一组键

我想说 key->val2
hzObj.getMap("testMap").getAll(keys.toSet.asJava)
which returns the key->val1, val2, val3

需要帮助编写谓词,该谓词只针对 return key->val2 请帮忙

如果我正确理解了您的用例,您可以使用 projections 去除查询的结果对象以减少冗余网络流量。

@nocturnal,请参阅下面的示例用法:

imap.project(Projections.singleAttribute("val2"), Predicates.in("__key", new String[]{"key1, key2"}));

重要说明,这也要求您在键上定义索引。

由于这将使用查询线程,您也可以改用 imap.getAll(Set keys),然后将其转换为 val2 的集合。