Quanto ao Facebook, Google, etc: Os servidores de banco de dados não estão todos em um único local e, certamente, nem todos estão em sincronia total o tempo todo. Todos eles empregam um sistema distribuído em vários grupos de servidores para diferentes áreas geográficas.
Os clusters são distribuídos em muitos países. A frequência das atualizações entre os clusters depende da necessidade do sistema de funcionar de maneira aceitável.
Se você usar o Facebook, por exemplo:
Na maioria das vezes você se comunica com amigos em seu próprio país. Assim, manter os servidores em seu país terá um efeito imediato e seus amigos verão instantaneamente suas mensagens.
Amigos em outros países podem ter um atraso, dependendo da freqüência com que os nós de servidores clusterizados são atualizados. IIRC Os clusters do Facebook interagem solicitando informações de outros clusters, se necessário. Muitas vezes recebi uma mensagem dizendo algo como "Este usuário atualizou status para blah blah". Ao clicar no link para a mensagem inteira, recebi uma mensagem de erro. Este é um problema de sincronização entre os clusters. Algumas informações foram sincronizadas, enquanto outras não.
Como você constrói a infraestrutura depende de quantos usuários, com que frequência os dados precisam ser sincronizados, etc.
Outro exemplo, e-mail: O sistema de e-mail é um sistema distribuído em todo o planeta. Um servidor com um único usuário não está tão ocupado comparado a um servidor com 1 milhão de usuários. Como você resolveria os problemas de entrega de um servidor ocupado? Servidor local mais distribuído? Servidores mais poderosos? Conexão de internet mais poderosa? Tudo acima? Como o conceito subjacente de email (para entregar mensagens de um nó para outro) não muda independentemente do número de usuários de email, você precisará projetar seu sistema específico para acomodar todos os seus usuários. Independentemente de como você projeta seu sistema, há momentos em que os e-mails são atrasados na entrega, porque simplesmente há muito tráfego nos outros nós da cadeia.
O mesmo conceito se aplica ao Facebook. Eles projetam e constroem suas fazendas para uma região específica, mas todo o sistema depende de "diferenças geográficas". Ou seja, é mais provável que você interaja com usuários em sua própria região do que em outras regiões.
Quanto ao seu problema específico: tudo depende de quantos usuários existem. Um único servidor de banco de dados (ou servidor em cluster) pode funcionar para você. Se houver necessidade de farms de servidores de cluster distribuídos, talvez seja necessário criar seu próprio sistema para sincronização, como o Facebook e o Google. Essa solução depende do que seus usuários precisam e de como o sistema deve funcionar. Não conheço nenhum sistema padronizado que seja uma solução "funciona para todos".
Eu tenho reclamado muito aqui e é bem tarde e eu posso estar totalmente fora do alvo, mas ei, são meus 2 centavos.
Felicidades!