Elasticsearch объединяет уникальные значения и сортирует их по настраиваемому полю dateTime - PullRequest
0 голосов
/ 10 октября 2018

У меня есть индекс с большим количеством документов, в основном из 2 полей: dateTime и tickValue

Я хочу запросить все tickValues за последний день, но отсортировано по дате.

Это то, что я получил до сих пор:

{
"query": {
        "bool": {
          "must": [
            {
              "query_string": {
                "query": "exchange: "randomExchangeName",
                "analyze_wildcard": true, 
                "default_field": "*" 
              } 
            }, 
            { 
              "range": { 
                "dateTime": { 
                  "gte" : "now-1d", 
                  "lte" :  "now" 
                } 
              } 
            } 
          ], 
          "filter": [], 
          "should": [],
          "must_not": []
        }
      },
  "size": 0,
  "aggs": {
    "byDate" : {
      "terms": {
        "field" : "dateTime",
        "order": { "_key": "desc" }  
      },
      "aggs": {
        "ticks": {
          "top_hits": {
            "size" : 1,
            "_source": "tickValue"
          }

        }
      }
    }
  }
}

Я успешно получаю тики, упорядоченные по дате, но тики НЕ агрегируются однозначно, все они повторяются.Что я тут не так делаю?

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