Como escolher uma chave de sharding
Pergunta
Você precisa fazer sharding de uma tabela de usuários que cresceu demais para um único banco. Como escolheria a chave de sharding e o que pode dar errado?
Resposta esperada
A chave de sharding ideal distribui a carga de forma uniforme e mantém juntos os dados acessados juntos com frequência (ex: sharding por user_id mantém todos os dados de um usuário no mesmo shard, evitando queries cross-shard constantes). O risco principal é uma chave com distribuição desigual (hot shard) — por exemplo, fazer sharding por país concentra tráfego demais em poucos shards se a base de usuários for concentrada geograficamente. Outro problema clássico: queries que precisam agregar entre shards (ex: 'top 10 usuários globais') ficam caras e exigem uma camada extra de agregação.
Por que perguntam isso
Resposta forte antecipa o problema de queries cross-shard antes de o entrevistador perguntar — mostra que já pensou no sharding além do dia da migração.