lucene-java-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Chris Lu <chris...@gmail.com>
Subject Re: Can lucene search from multi-index directory like using FK in database?
Date Thu, 06 Nov 2008 04:03:48 GMT
These are common problems. In general, mapping database tables into 
Lucene Documents is not always good for performance. You may need to 
flatten objects to fit Lucene's shoes.

My answers are here respectively.

1. You have two alternatives here:
    1) create an index to contain both User and Field Location 
information. This is more efficient, but you will need to create a new 
index structure. But Lucene is just an "index", do not use it to mimic 
database structure.
    2) use your "terrible way" to retrieve department_id first, then to 
get the user_ids. This approach may not be that bad, although less 
performant.

2. You will need to create a little query parser to distribute words 
into two fields.

-- 
Chris Lu
-------------------------
Instant Scalable Full-Text Search On Any Database/Application
site: http://www.dbsight.net
demo: http://search.dbsight.com
Lucene Database Search in 3 minutes: 
http://wiki.dbsight.com/index.php?title=Create_Lucene_Database_Search_in_3_minutes
DBSight customer, a shopping comparison site, (anonymous per request) 
got 2.6 Million Euro funding!


Clay Zhong wrote:
> Hi Guys,
>
> I meet some problems when using Lucene 2.3.2. After a lot of research, I
> still can't find any ways to solve them. Hope you can give me some
> advice..
>
> 1. Can I search different document from multi-index when they have
> connections like FK in database?
> For example,
> Index Dir 1 (User): Field id, Field departmentId
> Index Dir 2 (Department): Field id, Field location
> How can I get all user that location is USA?
> Well, I can index location into User, or search from Department first to
> get departmentId. But they're really terrible, is there a better way?
>
> 2. How can I search from multi-index with one query? It's different from
> using MultiSearcher.
> For example, there's two fields, 'title' and 'content', when I search
> 'Java and Lucene', how can I get documents which contains 'Java' in
> 'title' and 'lucene' in 'content'? (not only 'Java and Lucene' in one
> field). I can add a field contains both 'title' and 'content', but
> that's really really bad solution....
>
> That's all my questions, thanks for your patient.
>
> Best Wishes
> Clay Zhong
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: java-user-unsubscribe@lucene.apache.org
> For additional commands, e-mail: java-user-help@lucene.apache.org
>
>   


---------------------------------------------------------------------
To unsubscribe, e-mail: java-user-unsubscribe@lucene.apache.org
For additional commands, e-mail: java-user-help@lucene.apache.org


Mime
View raw message