Hello, Recently I developed an interest in making a lucene based structure for tagging. As we all know lucene's update is not real-time and one has to delete a document prior to updating it.
I have been googling for different approaches to a lucene based tagging structure, and I stumbled upon http://blogs.sun.com/basler/entry/lucene_search_engine_web_crawlers Quote: Updating Indexes in Lucene for Tagging: One thing to keep in mind is that Lucene doesn't allow an index to be updated, the specific index has to be deleted then re-created. When adding a new tag to an item or updating a document index you have to be able to access all the data that was originally in the index before re-creating it. This sounds straightforward but there is on caveat. If you index items using an approach that doesn't allow retrieval of all the data in the index, you will have to read the data from a persistent store so the index can be completely re-created. You can get in this state when you create a org.apache.lucene.document.Field for the documents index utilizing the "UnStore" method or "Text" method with a Reader. When using these methods, the data can't be retrieve via the exposed APIs. This really isn't a big deal once you factor it in to your approach. Our tagging requirement came after the initial implementation was completed and it caused some problems that made us have to re-think our index scheme. Any ideas on the approach or different approaches. Best Regards, -C.B.