Как сгруппировать _index и _type в родительский элемент _source при отображении результата эластичного поиска - PullRequest
0 голосов
/ 25 апреля 2018

Предполагается, что мне нужно запросить несколько индексов и документов, как показано ниже, я хочу сгруппировать элемент _source в их собственный _index, _type в качестве родителя, но каким-то образом он дал каждый индекс, тип в каждом блоке, мне трудноуправлять результатом

GET /index_1,index_2,hockey,bookdb_index/_search?size=200

        {
        "_index": "hockey",
        "_type": "player",
        "_id": "10",
        "_score": 1,
        "_source": {
            "first": "mikael",
            "last": "backlund",
            "goals": [
                3,
                15,
                13
            ],
            ...
        }
    },
    {
        "_index": "bookdb_index",
        "_type": "book",
        "_id": "2",
        "_score": 1,
        "_source": {
            "title": "Taming Text:...
        }
    },

Как сгруппировать индекс и тип в качестве родительского, а _source является дочерним элементом

"hockey": {
    "player": [{
       "first": "mikael",
        "last": "backlund",
        "goals": [
            3,
            15,
            13
        ] }
      }, { "first": ...

      }]
}, 
"bookdb_index": { ...

1 Ответ

0 голосов
/ 26 апреля 2018

Я создал клиента для этой цели и т. Д.

Nginx Elastic Client

Это чистая запись запроса на упругую запись в nginx.conf, выше по течению, на сервер упругой Вы можете выбрать index_docs, чтобы получить желаемый результат. См. Readme для получения дополнительной информации.

 location /test {
    elastic_pass http://elastic_upstream;
    elastic_send POST /testindex/testdoc/_search?size=100 index_docs;

    elastic_query '{"query":
       {
        "match_all": {}
       }
    }';
 }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...