Archived from the GForge wiki of the LexEVS project. Last edited August 5, 2009.

This is intended to be a sent of guidelines or 'best practices' for getting the best performance out of LexEVS 5.1

With 5.1, ResolvedConceptReferencesIterators are populated with Lucene Document data on demand, meaning no data is pulled from the Lucene Documents until 'next' is called on the iterator. This means the initial resolve of the iterator will be much faster.

Sorting is expensive, because in order to sort, the entire result set needs to be resolved either from the Lucene Documents or the database. The exception to this is sorting by Lucene score (matchToQuery sort). This sort is very fast in all cases.

If sorting is a requirement:

'heart' 'heart attack' 'heart failure' 'bleeding heart'

now, resolve to a list of say, 2 results. resolve -> \'heart','heart attack'\

this essentially gives you the top n results of your query.

Now you can 'post' sort these two results -- that way extra calls to Lucene and/or the database don't have to be made.