On 6/17/2013 2:32 PM, Manuel Le Normand wrote:
Hello all,
Assuming I have a single shard with a single core, how do run
multi-threaded queries on Solr 4.x?

To run multithreaded queries, just send them at the same time, as you mention below. Solr will run them in parallel, within the limits of the system(s) you're using.

Specifically, if one user sends a heavy query (legitimate wildcard query
for 10 sec), what happens to all other users quering during this period?

If the repsonse is that simultaneous queries (say 2) run multi-threaded, a
single CPU would switch between those two query-threads, and in case of 2
CPU's each CPU would run his own thread. But the latter case does not give
any advantage to repFactor > 1 perfomance speaking, as it's close to same
as a single replica running wth >1 CPU's. So I am bit confused about this,

Your question isn't very clear. Otis has answered one possibility. I have something different to address.

The main advantage of repFactor > 1 is redundancy and high performance in high-volume situations.

With multiple replicas, each one will be on a completely separate machine. Whether that performs better than a single machine with multiple CPUs will depend on a bunch of factors. Some examples: the amount of data returned by a query and whether Solr can get the data out of the disk cache or whether it has to actually go to the disk.

In memory-limited situations, having the disk I/O bandwidth of multiple machines might overcome the latency introduced by the distributed communication over the network. Also, it's likely that you'll have more total RAM with more machines, so splitting the index into shards on separate machines makes it more likely that each shard will fit into available memory.

Thanks,
Shawn

Reply via email to