J'ai un champ dans le document qui est un classement: plus la valeur est basse, plus le score devrait être élevé. Être le premier est le meilleur, mais être le dernier est le pire. Donc un classement de 1 vaut mieux qu'un million.Dans Elasticsearch, comment augmenter un score par la valeur d'un champ de classement (1er, 2ème, 3ème ...)?
Jusqu'ici, j'ai pu augmenter la valeur du champ lui-même avec score_query and field_value_factor, mais cela donne aux docs avec des rangs de nombres plus élevés les boosts les plus élevés.
"field_value_factor": {
"field": "rank",
"factor": 1.2,
"modifier": "sqrt",
"missing": 1
}
Dois-je utiliser un modificateur différent? Ou vais-je complètement à ce sujet? En outre, je ne veux pas trier tout seul puisque j'ai d'autres facteurs influençant le _score
.
il ne semble pas être quelque chose à cette question liée à [Boost C++ bibliothèques] (http://stackoverflow.com/tags/boost/info) - s'il vous plaît ne pas abuser des balises . (En tant que personne qui fréquente ce site depuis plus de 7 ans, vous devriez le savoir maintenant) –
Oups, j'ai été heureux là-bas. Désolé pour ça. Été un moment depuis que j'ai posé une question cependant. Merci d'avoir attrapé ça, @ DanMašek – JayNCoke
Pas de soucis, ça peut arriver :) C'était en fait assez drôle de voir que sur quelque chose étiqueté avec "pertinence": D –