Как узнать, какой объект в массиве набрал оценку _mode = "max" во время работы скрипта, или как использовать значения inner_hits в скрипте и повлиять на глобальную оценку - PullRequest
0 голосов
/ 11 мая 2019

У меня есть поле вложенного массива с анализатором биграмм, примененным в документе и использующим пользовательский счет, где число пар, совпадающих с запросом, получается из doc.freq (использовался счет сценария simialrity).получите.Теперь мне нужно получить длину поля, где Score_mode Max достиг длины поля объекта

        "PenNames": {
        "Name": [
          "niraav modi"
        ],
        "Aliasname": [
          "Nirav Modi",
          "Modi Nirav",
          "shris"
        ],
        "AliasnameLength": [
          "Nirav Modi",
          "Modi Nirav",
          "shris"
        ]
      },
      "PenAddresses": [
        {
          "addressLine": "DAMAVAND TEHRAN HIGHWAY",
          "city": "TEHRAN",
          "state": "ADILABAD",
          "country": "MASKAD",
          "pinCode": 2829303,
          "addressLineLength": "DAMAVAND TEHRAN HIGHWAY"
        },
        {
          "addressLine": "KM 5 OF KHAN ROAD",
          "city": "HRAN",
          "state": "YAHD",
          "country": "ARGENTINA",
          "pinCode": 3930320,
          "addressLineLength": "KM 5 OF KHAN ROAD"
        }
      ]
    },



     here _score will be 2* doc.freq value here it is 12

         GET /negativelistwitharrayobj/details/_search
         {
            "query": {
                    "nested": {
                     "inner_hits": {
                        "_source" : true        
                                },
                       "path": "PenAddresses",
                       "score_mode":"max",
                       "query": {
                        "function_score": {
                       "script_score": {
                          "script": {
                          "source": "(_score)"
                                    }
                                   },
                      "query": {
               "match": { "PenAddresses.addressLine": "DAMAVAND 
                                                TEHRAN" }
                        }
    }
  }
}

}}

Мне нужно знать длину "addressLine": "DAMAVAND TEHRAN HIGHWAY" это ....и использовать в скрипте

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...