É possível adicionar peso no atributo?
Por exemplo: Na minha massa de dados eu tenho o atributo "palavra-chave". Para minha lógica, esse atributo tem que ter um peso maior nas consultas que os encontrados em outros atributos.
Como faria?
É possível adicionar peso no atributo?
Por exemplo: Na minha massa de dados eu tenho o atributo "palavra-chave". Para minha lógica, esse atributo tem que ter um peso maior nas consultas que os encontrados em outros atributos.
Como faria?
Segundo a documentação do Elasticsearch, o boost pode ser dado na pesquisa ou na declaração do atributo (field).
Portanto, a configuração:
{
"mappings": {
"properties": {
"title": {
"type": "text",
"boost": 2
},
"content": {
"type": "text"
}
}
}
}
faz com que o campo title fique com boost de aproximadamento 2x do default.
Desse modo, a seguinte query de pesquisa:
POST _search
{
"query": {
"match" : {
"title": {
"query": "quick brown fox"
}
}
}
}
Equivale a:
POST _search
{
"query": {
"match" : {
"title": {
"query": "quick brown fox",
"boost": 2
}
}
}
}