I'm building a product search but I'm running into issues with
generalizing how boosting happens. In one example I search for the term
"ladder" and I get results where the terms "ladder parts" and "ladder
wheels" are higher than "step ladder" or "platform ladder". In other
cases I want a higher ranking where the search term exists at the
beginning of matched string as opposed to the end. How do I go in and
boost those specific documents but only for specific search terms? Is
that possible?
I'm using the snowball analyzer with English language. Perhaps there is
a better analyzer to use?
However, in most real applications you would want to change the scoring on
different parameter of a document, for example if your are running a
bidding site or a news portal, time is an important factor. This is why the
function_score has been added to elasticsearch, see
Another interesting thing might be to score documents up, where two search
terms are near to each other and so forth...
The freshly released definitive guide (a not yet fully complete online
book) gives a really great introduction into this, see
The question is, do you really want to work on such single term examples
like the ladder one, to heavily affect your scores or does it make more
sense to take more than full-text search into account to achieve your
requirements? Also, dont mix it up with relational databases on how those
queries work.
Hope this helps as a start.
--Alex
On Thu, Mar 27, 2014 at 4:27 PM, Kelly Sauke ksauke@gmail.com wrote:
Everyone-
How would you solve this issue?
I'm building a product search but I'm running into issues with
generalizing how boosting happens. In one example I search for the term
"ladder" and I get results where the terms "ladder parts" and "ladder
wheels" are higher than "step ladder" or "platform ladder". In other cases
I want a higher ranking where the search term exists at the beginning of
matched string as opposed to the end. How do I go in and boost those
specific documents but only for specific search terms? Is that possible?
I'm using the snowball analyzer with English language. Perhaps there is a
better analyzer to use?
Apache, Apache Lucene, Apache Hadoop, Hadoop, HDFS and the yellow elephant
logo are trademarks of the
Apache Software Foundation
in the United States and/or other countries.