Trilha Sênior Trilha

Sharding de banco de dados: horizontal

O sharding horizontal divide as linhas de uma tabela entre vários bancos com o mesmo schema. O curso compara shards e réplicas e mostra os dois problemas que o sharding resolve: vazão de escrita e volume de dados. Ele trata da escolha da chave de shard a partir dos padrões de acesso, da declaração com connects_to e da escolha do shard em execução com connected_to ou com o middleware de shard. Depois mostra do que se abre mão: joins, transações, unicidade global e agregações baratas. No fim, traz os números que mantêm esta aplicação sem sharding e o desafio group_by_shard.

O que você vai aprender

  • ✓Como um shard se diferencia de uma réplica e o que cada um resolve
  • ✓Como escolher uma chave de shard equilibrando distribuição uniforme e alinhamento com as queries
  • ✓Como declarar shards no Active Record com connects_to shards:
  • ✓Como escolher um shard por bloco ou por requisição, incluindo a trava de troca de shard
  • ✓Do que o sharding tira: joins, transações, unicidade global e agregações baratas
  • ✓As alternativas a tentar antes do sharding, em ordem
Prévia grátis · Aula 1 3 min de leitura

Dividindo linhas entre bancos

O sharding horizontal divide as linhas de uma tabela entre vários bancos, cada um guardando um subconjunto diferente. Todo shard tem o mesmo schema, e nenhum deles tem todos os dados.

Ler a aula completa grátis →

Currículo

7 aulas
Digite para buscar...