Also sending the query in broadcast is nice for a first
implementation, but this means you can scale the number of searched
items but we can't scale the number of queries, this should be
designed in such a way to make it possible in a future improvement to
send the query only to a subset o the nodes.
Well I don't know of any other way to run the query to be honest. If you
imagine that you have several nodes running ISPN in DIST mode, and each
node has it's own local index - we don't necessarily know where all of
the objects are. Each of them has got a share of all the objects and
possibly a share of the indexes, depending on config. So I don't see how
we can optimise where the query is run.
Naturally, things get easier when your index is a central one and all
nodes have access to it. That just works simpler because you can just
run the query on one node and then once you have the QueryHits you can
then call a Cache.get() on all the nodes. I think :S.
--
Navin Surtani
Intern Infinispan