DBAtlas · Atlas de operações de banco de dados

too_many_buckets_exception: Trying to create too many buckets

Elasticsearch

O que significa?

Uma consulta de agregação tentou produzir mais buckets do que o limite superior permitido (search.max_buckets, padrão 65.536). A consulta foi rejeitada para proteger a memória.

Por que acontece?

Agregações como terms/date_histogram executadas em campos de alta cardinalidade com um size muito grande ou um intervalo muito fino; agregações aninhadas multiplicando a quantidade de buckets. O limite é aplicado porque a criação excessiva de buckets pode esgotar a memória do nó.

Como resolver

Reduza o número de buckets produzidos: diminua o size das agregações terms, amplie o intervalo do date_histogram, remova agregações aninhadas desnecessárias. Se forem necessários muitos resultados, pagine-os com uma agregação composite. Aumentar o limite deve ser o último recurso e traz risco de memória: search.max_buckets pode ser alterado com PUT _cluster/settings, mas faça isso com cuidado.

Abrir no DBAtlas →

Mais entradas deste banco