On Dec 2, 2004, at 3:08 PM, Zhiyong Li wrote:
It is pretty easy to integrate and get started. In general, it is a good tool.

Two things that you may want to be aware:

(1) The concurrent update in Lucene is not intuitive. If the contents that you will search change very frequently, you may have more work to do to get it right.

The concurrent update rule is simple: only one instance of IndexWriter may be writing to the index at a time. Multiple threads may be using that same instance, however. Depending on what you're doing, this certainly may involve implementing some type of queuing or batch mechanism.


(2) If you do the updates as a backend process, dependent on your architecture, it is general not recommended to start a new threads from the application code.

What does this have to do with Lucene? Lucene is quite happy in multi-threaded environments.


We ended using JMX but the multi-threaded code for updating Lucene index can get ugly sometimes.

It should be as straightforward as sharing a single IndexWriter instance.


Literally updating a document in a Lucene index, however, is what can be a bit confusing. Lucene doesn't have an "update" function - you must remove and re-add a document to effectively update it. However Lucene supports incremental indexing very nicely, which is something many other search engines do not.

Things may be getting better for the newer version of the Lucene.

Nothing related to the points you've brought up has changed with Lucene.

        Erik


_______________________________________________ Juglist mailing list [EMAIL PROTECTED] http://trijug.org/mailman/listinfo/juglist_trijug.org

Reply via email to