Оценка эластичного повышения на основе значения поля

#node.js #elasticsearch #kibana #elasticsearch-7

#node.js #elasticsearch #кибана #elasticsearch-7

Вопрос:

У меня есть документы в формате ниже

 {
     name:"Abc",
     newboostFactor: 1,
     boost: {
          boostType: "Type1",
          boostFactor: 1.000033
     }
}
 

Я хочу применить boostFactor на основе boostType, предположим, что если boostType равен «Type1», то применяемый boostFactor будет равен 1.000033

Я могу сделать это только с помощью поля «newboostFactor» с приведенным ниже запросом

 {
  "explain": true, 
  "query": {
    "function_score": {
      "boost_mode": "sum",
      "functions": [
        {
          "field_value_factor": {
            "field": "newboostFactor",
            "factor": 1,
            "missing": 1
          }
        }
      ],
    },
  }
}
 

но как я могу использовать boostFactor form boosts.boostFactor на основе boosts.boostType

Комментарии:

1. Для динамических значений вы можете попробовать использовать шаблоны … создайте скрипт с заполнителем для повышения значения