히스토그램 집계는 숫자 범위를 특정 간격별로 집계를 수행한다.
GET /apache-web-log/_search?size=0
{
"aggs": {
"bytes_histogram": {
"histogram": {
"field": "bytes",
"interval": 10000,
"min_doc_count": 10
}
}
}
}
# 결과
{
...
"aggregations" : {
"bytes_histogram" : {
"buckets" : [
{
"key" : 0.0,
"doc_count" : 4196
},
{
"key" : 10000.0,
"doc_count" : 1930
},
{
"key" : 20000.0,
"doc_count" : 539
},
{
"key" : 30000.0,
"doc_count" : 596
},
...
}
}
날짜 히스토그램은 일반 히스토그램의 날짜 버전이다. 날짜 히스토그램은 분/시간/월/연도 구간으로 집계를 수행할 수 있다.
UTC 기준일 경우, time_zone 필드로 타임존 조정이 가능하다.
GET /apache-web-log/_search?size=0
{
"aggs": {
"date_histogram": {
"date_histogram": {
"field": "timestamp",
"fixed_interval": "1d",
"format": "yyyy-MM-dd",
"time_zone": "+09:00"
}
}
}
}
# 결과
{
...
"aggregations" : {
"date_histogram" : {
"buckets" : [
{
"key_as_string" : "2015-05-17",
"key" : 1431788400000,
"doc_count" : 538
},
{
"key_as_string" : "2015-05-18",
"key" : 1431874800000,
"doc_count" : 2898
},
{
"key_as_string" : "2015-05-19",
"key" : 1431961200000,
"doc_count" : 2902
},
{
"key_as_string" : "2015-05-20",
"key" : 1432047600000,
"doc_count" : 2862
},
{
"key_as_string" : "2015-05-21",
"key" : 1432134000000,
"doc_count" : 799
}
]
}
}
}