The NRT implementation differs from soft commit as below:

1. Does not close the SolrSearchIndex searcher object. SolrIndexSearcher is a 
heavy object, holds caches, searches could be in progress, ref-counted, etc.

2. It passes the reader as a parameter to each search ( suits the methodology 
of de-coupling the reader and searcher, and not maintaining any directory 
related information).

3. Since the reader is passed as a parameter, the search can be very granular, 
allowing query1, query2, query3 to
return updated results in a high frequency update scenario.

Since the searcher is not closed, the cache structures are not destroyed. The 
user can disable the queryResultsCache,
etc. as needed for now. There are some thoughts about how to update the cache 
in realtime but nothing
has been implemented yet. Also, as the reader is dynamic,  allocations cannot be
static (a limit check needs to be in place). The dynamic reader allows  fine 
granular realtime
search which may not be possible with soft commit.

Regards,

Nagendra Nagarajayya
http://solr-ra.tgels.org
http://rankingalgorithm.tgels.org


Hi Otis:

There is none at the moment, but can work on one and make it available.

Regards,
- NN

-------------------------
Hi,

Is there a writeup that describes how this compares to NRT support in 
development version
of Solr?


Otis

----
Performance Monitoring SaaS for Solr 
-http://sematext.com/spm/solr-performance-monitoring/index.html
 
<https://service.mail.com/dereferrer/?target=http%3A%2F%2Fsematext.com%2Fspm%2Fsolr-performance-monitoring%2Findex.html&lang=en>

Reply via email to