I am trying to get my autocomplete search the best as possible. So I started with the completion suggester functions where I can define some weights on my documents suggest fields. This allows me to give some pre ranking while indexing my documents.
For example:
Berlin -> weight = 10
Bern -> weight = 8
If I search for Ber
I will get this two documents where Berlin
is higher ranked. Thats fine for now.
But lets say I have another document like Hotel Berlin Alexanderplatz
. If I search for Ber
now the Hotel will not appear. So I splitted the words by space and created some suggestions. If I search again for Ber
the hotel will be in the response. Good for now but a problem ahead. If I search for Berlin Hotel
the hotel will not be in the response anymore, because there is no suggestion for Berling Hotel
.
So I searched for a better solution and found out that edge_ngram tokenizer
does what I need. It breaks down text into words. Which will make Hotel Berlin Alexanderplatz
findable in all combinations. Thats nice but I miss my weights now. Becuase these are very important for the result.
So is there a solution to use the weight feature of complete suggester
and the word break down of an edge_ngram tokenizer
together?