Arquitetura de software · Dados · 6 min de leitura
Replicação e sharding
Replicar copia os dados para ter leitura extra e tolerância a falhas; fazer sharding divide os dados entre máquinas para escalar a escrita.
Arraste para o lado para ver o diagrama inteiro.
Replicação
Um primário recebe as escritas e as envia para réplicas. Elas atendem leituras e assumem se o primário falhar. Na replicação assíncrona a réplica pode estar alguns instantes atrasada: quem acabou de gravar pode não ver o dado se ler de uma réplica.
Sharding
Quando um único servidor não aguenta as escritas ou o volume, os dados são divididos por uma chave de partição (cliente, região). A escolha da chave é crítica: chaves ruins criam hot spots e consultas que cruzam shards ficam caras.
Antes de dividir
- Otimize consultas e índices, use cache e réplicas de leitura.
- Shard só quando necessário: é uma decisão difícil de desfazer.
Em resumo
- Réplicas: mais leitura e alta disponibilidade.
- Atraso de replicação afeta “leia o que escreveu”.
- Sharding escala escrita; a chave define tudo.
- Esgote alternativas antes de fazer sharding.