You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-user@lucene.apache.org by kiwi clive <ki...@yahoo.com.INVALID> on 2015/05/27 13:16:56 UTC

Search Performance with NRT

Hi Guys

We are considering changing our Lucene indexer / search architecture from 2 separate JVMs to a single one to benefit from the very latest index views NRT readers provide.

In the past we cached our IndexSearchers to avoid cold searches every time and reopened them periodically.  In the single-JVM model where we will be keeping the IndexWriters open for long periods, will we still face the same problem, or will calling searcherManager.maybeRefresh() periodically be enough to guarantee fast searches (as well as near-real time views)?

(We intend to instantiate our SearcherManager with the IndexWriter rather than a Directory.)


ThanksClive

Re: Search Performance with NRT

Posted by kiwi clive <ki...@yahoo.com.INVALID>.
Hi Mike,
Thanks for the very prompt and clear response. We look forward to using the new (new for us) Lucenene goodies :-)
Clive

      From: Michael McCandless <lu...@mikemccandless.com>
 To: Lucene Users <ja...@lucene.apache.org>; kiwi clive <ki...@yahoo.com> 
 Sent: Thursday, May 28, 2015 2:34 AM
 Subject: Re: Search Performance with NRT
   
As long as you call SM.maybeRefresh from a dedicated refresh thread
(not from a query's thread) it will work well.

You may want to use a warmer so that the new searcher is warmed before
becoming visible to incoming queries ... this ensures any lazy data
structures are initialized by the time a query sees them.

Mike McCandless

http://blog.mikemccandless.com




On Wed, May 27, 2015 at 7:16 AM, kiwi clive
<ki...@yahoo.com.invalid> wrote:
> Hi Guys
>
> We are considering changing our Lucene indexer / search architecture from 2 separate JVMs to a single one to benefit from the very latest index views NRT readers provide.
>
> In the past we cached our IndexSearchers to avoid cold searches every time and reopened them periodically.  In the single-JVM model where we will be keeping the IndexWriters open for long periods, will we still face the same problem, or will calling searcherManager.maybeRefresh() periodically be enough to guarantee fast searches (as well as near-real time views)?
>
> (We intend to instantiate our SearcherManager with the IndexWriter rather than a Directory.)
>
>
> ThanksClive

---------------------------------------------------------------------
To unsubscribe, e-mail: java-user-unsubscribe@lucene.apache.org
For additional commands, e-mail: java-user-help@lucene.apache.org


  

Re: Search Performance with NRT

Posted by Michael McCandless <lu...@mikemccandless.com>.
As long as you call SM.maybeRefresh from a dedicated refresh thread
(not from a query's thread) it will work well.

You may want to use a warmer so that the new searcher is warmed before
becoming visible to incoming queries ... this ensures any lazy data
structures are initialized by the time a query sees them.

Mike McCandless

http://blog.mikemccandless.com


On Wed, May 27, 2015 at 7:16 AM, kiwi clive
<ki...@yahoo.com.invalid> wrote:
> Hi Guys
>
> We are considering changing our Lucene indexer / search architecture from 2 separate JVMs to a single one to benefit from the very latest index views NRT readers provide.
>
> In the past we cached our IndexSearchers to avoid cold searches every time and reopened them periodically.  In the single-JVM model where we will be keeping the IndexWriters open for long periods, will we still face the same problem, or will calling searcherManager.maybeRefresh() periodically be enough to guarantee fast searches (as well as near-real time views)?
>
> (We intend to instantiate our SearcherManager with the IndexWriter rather than a Directory.)
>
>
> ThanksClive

---------------------------------------------------------------------
To unsubscribe, e-mail: java-user-unsubscribe@lucene.apache.org
For additional commands, e-mail: java-user-help@lucene.apache.org