2015-08-26 3 views
0

У меня есть отображение с внутренним объектом следующим образом:Elasticsearch Aggregation - Невозможно выполнить агрегацию объект

{ 
    "mappings": { 
     "_all": { 
      "enabled": false 
     }, 
     "properties": { 
      "foo": { 
       "name": { 
        "type": "string", 
        "index": "not_analyzed" 
       }, 
       "address": { 
        "type": "object", 
        "properties": { 
         "address": { 
          "type": "string" 
         }, 
         "city": { 
          "type": "string", 
          "index": "not_analyzed" 
         } 
        } 
       } 
      } 
     } 
    } 
} 

Когда я пытаюсь следующая агрегацией она не возвращает данные:

post data:*/foo/_search?search_type=count 
{ 
    "query": { 
    "match_all": {} 
    }, 
    "aggs": { 
    "unique": { 
     "cardinality": { 
     "field": "address.city" 
     } 
    } 
    } 
} 

Когда я пытаюсь поставить поле city или address.city, агрегация возвращает ноль, но если я положил foo.address.city, то тогда Я получаю правильный ответ elasticsearch. Это также влияет на поведение кибаны

Любые идеи, почему это происходит? Я видел, что есть mapping refactoring, что может повлиять на это. Я использую elasticsearch версию 1.7.1

Чтобы добавить на это, если я использую относительный путь в поисковом запросе следующим образом он работает нормально:

"query": { 
    "filtered": { 
     "filter": { 
     "term": { 
      "address.city": "london" 
     } 
     } 
    } 
    } 
+0

Есть ли название поля foo и индексный тип, называемый foo? –

+0

Нет, это упрощенный пример, который я добавил для целей вопроса – tbo

+0

Извините, опечатка в моем вопросе - «Есть ли имя поля под названием foo и индексный тип, называемый foo» –

ответ

2

Кажется, это его же issue. Это видно, когда имя типа и имя поля одинаковы.

+0

, так что из-за проблемы https://github.com/elastic/elasticsearch/issues/8870 кажется, что этого следует ожидать в версии 2.0.0? – tbo

+0

Разве это не должно быть разрешено к настоящему времени? – eliasah

Смежные вопросы