On 08/03/2009 08:21 AM, Earwin Burrfoot wrote:
The biggest win for NRT was switching to per-segment Collector because
that meant we could re-use FieldCache entries for all segments that
hadn't changed.
In my opinion, this switch was enough to get as NRT-ey, as you want.
Fusing IR/IW together makes Lucene a great deal more complicated and
just a milli-tad closer to RT.
I'm curious as to how it obviates the need for a RAM dir?
In my use case I use them to create indexes and perform searches.
In the latter it avoids OS file indexing and virus scanner contention (40 min
reduced to less than 2 min).
Isn't indexing your indexes (omg), checking them for viruses and
striving for performance is ..err.. a little bit self-contradictary?
Our app is a desktop app, where we don't have control over the user's
environment. Using a RAM dir is a good way to side-step the OS
over-zealousness.
To be specific, MS Windows with virus scanning and fast file indexing
turned off, dropped Lucene indexing from 40 to 4minutes. I can't
recommend to end users to turn off virus scanning while building an
index. In this case the VS was Norton. Using McAfee was not as bad. And
some of the free scanners were not as bad either. But still in the
unacceptably long range.
Using a RAM dir the indexing performance is independent of the user's setup.