lucene-solr-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Alexandre Drouin <alexandre.dro...@orckestra.com>
Subject Promote documents if they are present in the search results
Date Fri, 03 Feb 2017 17:06:39 GMT
Hello,

I am developing a new feature in my product where an administrator can select a list of documents
for different sections of the application.  You can think of this feature as the classic categorization
in an e-commerce site (e.g.: Boots, Headgear, etc).  Since this categorization is different
depending on the section/category I cannot easily store which documents are promoted in Solr
itself.  I know ahead of time which documents should be promoted for which section so I would
like to know if there is a way to "pass" these documents to Solr and have them at the top
of the list if they are found in the search results.

For example let's say that I have the following documents:
    - Doc1 (name: A, Age: 12)
    - Doc2 (name: B, Age: 24)
    - Doc3 (name: C, Age: 36)

I would like to promote Doc3 at the top of the list and if someone search for "name:B" or
"Age:12" the results should not include Doc3 because it did not match the query.

I looked at QueryElevationComponent and it doesn't do exactly what I want: the component is
based on a "query" and this query can be different in my use case.  I know I can use the "elevatedIds"
parameter to elevate documents however they are always elevated even if they are not present
in the search results.

Is it possible to achieve what I need with Solr? I am using Solr 4.10.2 

Thanks!


Alexandre Drouin
Mime
View raw message