Hi folks,

I was wondering if people had thought about this problem before.
If in a search system, you have clients that can tolerate high latency, is
there a way to increase their latency and improve overall system
throughput, where there may be other clients that demand reasonable latency
and high throughput..?

In the Lucene practical sense, one possible way to do this would be to
limit the concurrency of a query by limiting the number of Slices (by
changing the segment->Slice geometry) and seeing the effect on throughput.
Such a setup should ideally save on thread synchronization costs and the
remaining threads can serve other queries.
However, taking a TopScoreDocCollector as an example, what could end up
happening is that the minScore in the PQ would not go up fast enough, and
the Collector may end up over collecting low-quality hits.

Are there any other solutions in this space?
It's like having too much of a different currency and wondering if there is
a way to convert it to a currency that you want :)

Appreciate any insights or thoughts. Thanks!

-
Gautam Worah.

Reply via email to