lucene-java-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "m.harig" <m.ha...@gmail.com>
Subject Re: optimized searching
Date Tue, 30 Jun 2009 12:38:58 GMT

Thanks eric

in Ian's link, particularly see the section "Don't iterate over morehits
than necessary".

A couple of other things:
1> Loading the entire document just to get a field or two isn't
     very efficient, think about lazy loading (See FieldSelector)
   i done it , but have couple of questions

2> What do you mean when you say "not very good"? Using too
      much memory? Slow?
   yes , of course , it went for java heap space .


here is my code

                IndexReader open = IndexReader.open(indexDir);
                IndexSearcher searcher = new IndexSearcher(open);
		final String fName = "title";
		QueryParser parser = new QueryParser("contents", new StopAnalyzer());
		Query query = parser.parse(qryStr);

		TopDocCollector collector = new TopDocCollector(1000);// 
		searcher.search(query, collector);

		FieldSelector selector = new FieldSelector() {
			public FieldSelectorResult accept(String fieldName) {
				return fieldName == fName ? FieldSelectorResult.LOAD
						: FieldSelectorResult.LAZY_LOAD;
			}
			

		};

		final int totalHits = collector.getTotalHits();
		ScoreDoc[] scoreDocs = collector.topDocs().scoreDocs;

		
		for (int i = 0; i < totalHits; i++) {
			Document doc = searcher.doc(scoreDocs[i].doc, selector);

			System.out.println(i+" ) "+doc.get("title"));
			System.out.println(doc.get("path"));

		}
          
can you please tune my code to work it faster and better,  is it possible to
display total hits like google , since am using new TopDocCollector(1000);
it won't allow you to pick total hits ?? am i right???

-- 
View this message in context: http://www.nabble.com/optimized-searching-tp24266553p24271145.html
Sent from the Lucene - Java Users mailing list archive at Nabble.com.


---------------------------------------------------------------------
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