Entrar ou criar conta

Upnetix Labs · protocolo de experimento

Protocolo: Qual o impacto do número de shards no tempo de indexação do Elasticsearch?

Este protocolo responde como o número de shards afeta o tempo de indexação de documentos no Elasticsearch. O participante irá medir o tempo necessário para indexar um volume fixo de dados variando a quantidade de shards.

Elastic Stack do zero à observabilidade full-stack
Ligado ao treinamento Elastic Stack do zero à observabilidade full-stack
Protocolo, não resultado. Esta página descreve como medir. Execução pela engenharia Upnetix: ainda não realizada. Nenhum valor aqui é resultado de medição da Upnetix; os números que valem são os que você obtém na sua bancada.
Pergunta

Como o tempo de indexação de documentos varia conforme o número de shards em um índice do Elasticsearch?

Hipótese

Aumentar o número de shards além de um certo ponto não reduz proporcionalmente o tempo de indexação e pode até aumentar o overhead.

Variáveis

Independentes (o que varia)Número de shards do índice
Dependentes (o que se mede)Tempo total de indexação (segundos)
Controladas (o que fica fixo)Volume de dados indexados; Configuração de hardware; Versão do Elasticsearch; Tipo de documento; Bulk size

Ambiente

Cluster Elasticsearch de nó único, versão estável, instalado conforme documentação oficial. Ferramenta de benchmark: Rally (https://github.com/elastic/rally) para geração de carga e medição. Ambiente isolado, sem outras cargas concorrentes.

Procedimento

  1. Preparar ambiente

    Instale e configure Elasticsearch e Rally conforme documentação oficial.

  2. Definir volume

    Escolha um volume fixo de documentos (por exemplo, 1 milhão de documentos EXEMPLO) para todos os testes.

  3. Configurar índice

    Crie índices com diferentes números de shards (por exemplo, 1, 2, 4, 8, 16 EXEMPLO), mantendo as demais configurações idênticas.

    PUT /nome_indice?pretty { "settings": { "number_of_shards": X, "number_of_replicas": 0 } }
  4. Executar benchmark

    Use Rally para indexar o volume definido em cada configuração de shards e medir o tempo total.

    esrally --track=geonames --target-hosts=localhost:9200 --challenge=append-no-conflicts --pipeline=benchmark-only --track-params='{"number_of_shards":X}'
  5. Repetir

    Repita cada experimento 5 vezes para cada configuração de shards.

Planilha de coleta

num_shards (unidade)tempo_indexacao_s (segundos)
num_shards=4, tempo_indexacao_s=120 (EXEMPLO)

Repetições recomendadas: 5. Baixe a planilha vazia em CSV: colunas prontas.

Análise

Calcule média, desvio padrão e mediana do tempo de indexação para cada configuração de shards. Compare os resultados para identificar o ponto de melhor desempenho e possíveis aumentos de overhead.

Critérios de decisão

  • Desempenho considerado ótimo se redução de tempo for significativa até certo ponto
  • Se aumento de shards não reduzir tempo ou aumentar, identificar o limite ótimo

Fontes de erro e mitigação

  • Variações de hardware podem afetar resultados; use ambiente dedicado
  • Cargas externas podem interferir; execute em horários de baixa demanda
  • Aquecimento do cache pode influenciar; descarte a primeira execução ou padronize o estado inicial
Verificação editorial
Publicado
09/09/2026
Última revisão
09/09/2026
Versão do conteúdo
1.0
Referências
0 oficiais
Revisão técnica
redação e revisão por IA, URLs conferidas na publicação
Status
Atual
Encontrou um erro? Escreva para comercial@upnetix.com.br com o endereço da página. A revisão semestral por IA nunca altera comandos ou configurações sem passar pela fila de revisão.