У меня есть запрос на эластичный, который содержит всего 8 вложенных агрегаций, все агрегации являются term
агрегациями, кроме одной, которая является histogram
агрегацией.Если я удаляю эту агрегацию гистограммы, запрос выполняется отлично.Но с агрегацией гистограммы она выдает эту конкретную ошибку:
Эта агрегация создает слишком много сегментов (10001) и выдает ошибку в будущих версиях.Вам следует обновить настройку кластера [search.max_buckets] или использовать [составное] агрегирование, чтобы разбить все сегменты на несколько запросов.
Теперь я попытался увеличить размер max_buckets
, но размер достигает значения выше100000, а также это число не определено, так что эта опция отсутствует.Затем я попытался создать агрегацию composite
, как предложено в ошибке, но это также выдает ту же ошибку с добавленной гистограммой.
Так что мой вопрос в том, что я пишу запросы каким-то неправильным образом, или эластичность невыполнимо ли создать столько контейнеров?
Запрос Кибана: (только с 3 уровнями вложенности исходная задача имеет 8)
GET /project/test/_search
{
"query": {
"bool": {
"must": [
{
"range": {
"date" : {
"gte": 20180101,
"lte": 20180630
}
}
}
]
}
},
"size": 0,
"aggs": {
"agg1": {
"terms": {
"field": "agg1"
},
"aggs": {
"agg2": {
"terms": {
"field": "agg2"
},
"aggs": {
"agg3": {
"histogram": {
"field": "agg3",
"interval": 1
}
}
}
}
}
}
}
}