Получить количество отдельных элементов массива из вложенного документа поиска Elastic - PullRequest
0 голосов
/ 14 февраля 2019

У меня эластичный поисковый индекс, и одно из полей внутри этого документа находится в следующей форме

"TermsDesign": { 
"Term": "["Randomized","Placebo Control","Multiple Blind","Treatment","Parallel Assignment","Interventional"]"
}, 

Я попытался сопоставить свой существующий индекс, используя следующий подход

PUT index_name/_mapping/index_type
{
  "properties": {
     "TermsDesign": {
        "properties": {
          "attributes":{
            "type":"nested",
            "properties":{
           "Term": {
              "type": "text"
           }
        }
        }
     }
  }
  }
} 

И использовал следующий агрегированный запрос, чтобы получить счет

GET index_name/_search
{
  "from": 0,
  "size": 0,

  "query": {
    "multi_match": {
      "query": "query String,
      "type": "phrase"

    }
  },

  "aggs": {
      "Design": {
      "terms": {
        "field": "TermsDesign.Terms.terms.value",
        "size": "20"
      }
    }
  }
} 

Я получил пустое ведро.Я пытаюсь получить количество значений массива с помощью оператора агрегирования?это правильный подход для получения значений из поля массива

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