Collectives™ on Stack Overflow

Find centralized, trusted content and collaborate around the technologies you use most.

Learn more about Collectives

Teams

Q&A for work

Connect and share knowledge within a single location that is structured and easy to search.

Learn more about Teams

Problem we are trying to solve: Give a list of Keys, what is the best way to get the value from IMap given the number of entries is around 500K?

Also we need to filter the values based on fields.

Here is the example map we are trying to read from.

Given IMap[String, Object] We are using protobuf to serialize the object Object can be say

Message test{ Required mac_address eth_mac = 1, ….// size can be around 300 bytes }

You can use IMap.getAll(keySet) if you know the keys beforehand. It's much better than single gets since it'll be much less network trips in a bulk operation.

For filtering, you can use predicates on IMap.values(predicate), IMap.entryset(predicate) or IMap.keyset(predicate) based on what you want to filter.

See more: http://docs.hazelcast.org/docs/latest/manual/html-single/index.html#distributed-query

Thanks for contributing an answer to Stack Overflow!

  • Please be sure to answer the question. Provide details and share your research!

But avoid

  • Asking for help, clarification, or responding to other answers.
  • Making statements based on opinion; back them up with references or personal experience.

To learn more, see our tips on writing great answers.