我们正在尝试解决的问题: 给出一个密钥列表,鉴于条目数约为500K,从IMap获取值的最佳方法是什么?
我们还需要根据字段过滤值。
这是我们试图读取的示例地图。
给出IMap[String, Object]
我们正在使用protobuf序列化对象
对象可以说
Message test{ Required mac_address eth_mac = 1, ….// size can be around 300 bytes }
答案 0 :(得分:1)
如果您事先知道密钥,则可以使用IMap.getAll(keySet)
。它比单一获取要好得多,因为在批量操作中它将减少更少的网络行程。
对于过滤,您可以根据要过滤的内容在IMap.values(predicate)
,IMap.entryset(predicate)
或IMap.keyset(predicate)
上使用谓词。
查看更多:http://docs.hazelcast.org/docs/latest/manual/html-single/index.html#distributed-query