I am a newbie user of Lucene Java. I am trying to use Lucene to enable in
search in my application. I am stuck a little in actual Search. I'm facing a
design issue and want help from experts here.
Here is my scenario:
* I have 7-8 tables in the database and I create a separate index for each
table. Index is created in the filesystem. (The fact that there is one index
per table is not under my control and I have to use that as an input)
* Fields in the indices may or may not be the same
* When I search I need to search in all indices
I tried looking at MultiSearcher. But, since the fields in indices are not
the same, I can't make use of one query and give it to the multi searcher. I
need to construct a separate MultiFieldQueryParser for each of my searchers.
If I create an array of searchers myself and call 'search' method on each of
them, I am left with having to merge the results properly (based on score).
But in this case, since the results from each searcher is normalized for
search in that index, merging is not a stright-forward operation and I'll
have to rely on some sort of a HitCollector since I need raw scores which'll
help me in merging the results.
Have people hit this problem before? Is there any other approach I can take?
Any pointers will greatly help me.
Thanks a lot for your time,