Hazelcast查询可基于键集和谓词获取地图

时间:2018-08-02 03:40:29

标签: hazelcast hazelcast-imap

我有一个看起来像这样的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

需要帮助来编写谓词,该谓词表示仅返回key-> val2 请帮助

2 个答案:

答案 0 :(得分:1)

@夜间,请在下面查看示例用法:

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

一个重要的注意事项,那就是您还需要在键上定义一个索引。

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

答案 1 :(得分:0)

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