Suche nach Namen(text) mit Leerzeichen in elasticsearch

Suche nach Namen(text) mit Leerzeichen, verursacht problem für mich,
Ich habe das mapping ähnlich wie

"{"user":{"properties":{"name":{"type":"string"}}}}"

Ideal, was es zurückgeben sollte, und Rang die Ergebnisse wie folgt

1) Bring on top names that exact match the search term (highest score)
2) Names that starts with the search term (high score)
3) Names that contains the exact search term as substring (medium score)
4) Names that contains any of the search term token  (lowest score)

Beispiel
Für die folgenden Namen in elasticsearch

Maaz Tariq
Ahmed Maaz Tariq
Maaz Sheeba
Maaz Bin Tariq
Sana Tariq
Maaz Tariq Ahmed

Suche nach "Maaz Tariq" , sollten die Ergebnisse werden in der folgenden Reihenfolge

Maaz Tariq (highest score)
Maaz Tariq Ahmed (high score)
Ahmed Maaz Tariq (medium score)
Maaz Bin Tariq  (lowest score)
Maaz Sheeba (lowest score)
Sana Tariq (lowest score)

Kann jeder ein zeigen Sie mir, wie und welche Analysatoren zu verwenden? und wie, um die Rangfolge der Suchergebnisse für Namen?

InformationsquelleAutor mtariq | 2013-05-23
Schreibe einen Kommentar