Package org.elasticsearch.search.rescore
Interface Rescorer
-
- All Known Implementing Classes:
QueryRescorer
public interface Rescorer
A query rescorer interface used to re-rank the Top-K results of a previously executed search. Subclasses should borrow heavily fromQueryRescorer
because it is fairly well behaved and documents that tradeoffs that it is making. There is also anExampleRescorer
that is worth looking at.
-
-
Method Summary
Modifier and Type Method Description org.apache.lucene.search.Explanation
explain(int topLevelDocId, org.apache.lucene.search.IndexSearcher searcher, RescoreContext rescoreContext, org.apache.lucene.search.Explanation sourceExplanation)
Executes anExplanation
phase on the rescorer.void
extractTerms(org.apache.lucene.search.IndexSearcher searcher, RescoreContext rescoreContext, java.util.Set<org.apache.lucene.index.Term> termsSet)
Extracts all terms needed to execute thisRescorer
.org.apache.lucene.search.TopDocs
rescore(org.apache.lucene.search.TopDocs topDocs, org.apache.lucene.search.IndexSearcher searcher, RescoreContext rescoreContext)
Modifies the result of the previously executed search (TopDocs
) in place based on the givenRescoreContext
.
-
-
-
Method Detail
-
rescore
org.apache.lucene.search.TopDocs rescore(org.apache.lucene.search.TopDocs topDocs, org.apache.lucene.search.IndexSearcher searcher, RescoreContext rescoreContext) throws java.io.IOException
Modifies the result of the previously executed search (TopDocs
) in place based on the givenRescoreContext
.- Parameters:
topDocs
- the result of the previously executed searchsearcher
- the searcher used for this search. This will never benull
.rescoreContext
- theRescoreContext
. This will never benull
- Throws:
java.io.IOException
- if anIOException
occurs during rescoring
-
explain
org.apache.lucene.search.Explanation explain(int topLevelDocId, org.apache.lucene.search.IndexSearcher searcher, RescoreContext rescoreContext, org.apache.lucene.search.Explanation sourceExplanation) throws java.io.IOException
Executes anExplanation
phase on the rescorer.- Parameters:
topLevelDocId
- the global / top-level document ID to explainsearcher
- the searcher used for this search. This will never benull
.rescoreContext
- context for this rescorersourceExplanation
- explanation of the source of the documents being fed into this rescore- Returns:
- the explain for the given top level document ID.
- Throws:
java.io.IOException
- if anIOException
occurs
-
extractTerms
void extractTerms(org.apache.lucene.search.IndexSearcher searcher, RescoreContext rescoreContext, java.util.Set<org.apache.lucene.index.Term> termsSet) throws java.io.IOException
Extracts all terms needed to execute thisRescorer
. This method is executed in a distributed frequency collection roundtrip forSearchType.DFS_QUERY_THEN_FETCH
- Throws:
java.io.IOException
-
-