Particione dados sem criar pontos quentes
Escolha chaves de partição e reconheça os custos de desbalanceamento, fan-out e rebalanceamento.
- Comparar particionamento por intervalo e por hash e identificar uma partição quente.
O particionamento divide os dados entre nós para que o armazenamento e o trabalho cresçam horizontalmente. O particionamento por intervalo mantém juntas as chaves vizinhas e permite varreduras ordenadas, mas as escritas no intervalo mais recente podem se concentrar num único nó. O particionamento por hash espalha as chaves de forma mais equilibrada, mas dificulta as varreduras por intervalo. Uma chave popular ainda pode sobrecarregar uma partição. O hashing consistente reduz a quantidade de dados movidos quando a composição do cluster muda, mas sozinho não elimina o desbalanceamento.
Algumas respostas ao desbalanceamento: escolher uma chave melhor, adicionar um salt às chaves muito quentes, dividir um cliente (tenant) ou criar um caminho de atendimento especializado; cada opção afeta os padrões de consulta e a operação.
Prática: escolha uma chave de partição
Experimente
Até 15 XPParticione uma tabela de pedidos
Teste cada chave e observe tanto as escritas quanto as leituras.
- Qual chave espalha as escritas novas de forma mais equilibrada?
- Ative o cliente gigante. Qual chave sofre?
- Quanto a chave mais equilibrada custa quando você lê os pedidos de um único cliente?
O último painel mostra quantas chaves mudam de lugar quando você adiciona um shard.
- Shard 10%
- Shard 20%
- Shard 30%
- Shard 4100%
- Para ler os pedidos de um cliente
- consultar 4 shards
- Para ler os pedidos de uma semana
- consultar 1 shard
Adicionando um shard: de 4 para 5
- hash % número de shards
- 80% das chaves mudam de lugar
- Hashing consistente
- 24% das chaves mudam de lugar
Experimente
Até 15 XPEncontre o shard quente
Você está olhando as métricas de um cluster. Clique na linha que precisa de atenção.
Qual shard está quente?
Principais conclusões
Escolha a chave de partição pelos padrões de acesso e pela distribuição das chaves.
Particionar por intervalo ou por hash troca localidade por espalhamento.
O hashing consistente ajuda a rebalancear quando a composição do cluster muda, não a corrigir carga desequilibrada.
Quiz da aula
5 perguntas · aprovação com 4 acertos · até 50 XP
Ao passar, você conclui a aula e mantém sua sequência. As perguntas erradas voltarão em sessões de revisão.
Dúvidas sobre esta lição
Travou em algum ponto? Pergunte. Descobriu algo? Compartilhe. Explicar também é uma ótima forma de aprender.
Carregando publicações…