lucene-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Doug Cutting <>
Subject Re: Realtime Search
Date Wed, 24 Dec 2008 17:53:12 GMT
Jason Rutherglen wrote:
> 2) Implement realtime search by incrementally creating and merging 
> readers in memory.  The system would use MemoryIndex or 
> InstantiatedIndex to quickly (more quickly than RAMDirectory) create 
> indexes from added documents.

As a baseline, how fast is it to simply use RAMDirectory?  If one, e.g., 
flushes changes every 10ms or so, and has a background thread that uses 
IndexReader.reopen() to keep a fresh version for reading?

Also, what are the requirements?  Must a document be visible to search 
within 10ms of being added?  Or must it be visible to search from the 
time that the call to add it returns?  In the latter case one might 
still use an approach like the above.  Writing a small new segment to a 
RAMDirectory and then, with no merging, calling IndexReader.reopen(), 
should be quite fast.  All merging could be done in the background, as 
should post-merge reopens() that involve large segments.

In short, I wonder if new reader and writer implementations are in fact 
required or whether, perhaps with a few optimizations, the existing 
implementations might meet this need.


To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message