2013-11-10 6 views
0

Возможно ли разбиение на страницы результатов с гистограммы даты?ElasticSearch - отображение результатов гистограммы даты

У меня есть следующая примерная гистограмма даты, но с использованием «from»: 0, «size»: 10 параметров, похоже, не работают.

POST _search/ 
{ 
    "query" : { 
     "match_all" : {} 
    }, 
    "facets" : { 
     "histo1" : {     
      "date_histogram" : { 
       "value_field": "value.count", 
       "interval" : "10s", 
       "field": "_timestamp" 
      } 
     } 
    } 
} 

ответ

2

Параметры «от» и «размер» работают только с результатами вашего запроса (показов). Границы запускаются во всем списке результатов, независимо от того, сколько записей вы хотите извлечь. Поэтому, чтобы реализовать «разбиение на страницы» на гистограмме, вам нужно ограничить свой запрос. Например, чтобы получить все веточки гистограммы за последний час, вы можете просто добавить запрос диапазона или фильтр для запроса, который будет ограничивать результаты до текущего часа. Если _timestamp индексируется как дата, вы можете сделать что-то вроде этого:

POST _search/ 
{ 
    "query" : { 
     "filtered": { 
      "query": { 
       "match_all" : {} 
      }, 
      "filter": { 
       "range" : { 
        "_timestamp" : { 
         "gt": "now-1h", 
         "lte": "now" 
        } 
       } 

      } 
     } 
    }, 
    "facets" : { 
     "histo1" : {     
      "date_histogram" : { 
       "value_field": "value.count", 
       "interval" : "10s", 
       "field": "_timestamp" 
      } 
     } 
    } 
} 
+0

Действительно интересно, спасибо за ввод. – Ben

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