As migrações costumam ser demoradas e complexas. É possível que, após a migração e a conversão de dados, você enfrente problemas ou desempenho inconsistente.
Recomendamos a criação de mecanismos de fallback para evitar impactos significativos em caso de erro durante a migração, permitindo que você volte ao banco de dados de origem com tempo de inatividade mínimo.
A replicação reversa permite que você faça fallback replicando os dados gravados no Spanner de volta ao banco de dados de origem. Se você precisar de um substituto, a replicação reversa permite apontar seu aplicativo para o banco de dados de origem e continuar a atender às solicitações sem tempo de inatividade significativo.
O processo de replicação reversa precisa fazer o seguinte:
- Processar mudanças nos tipos de dados ou conteúdo.
- reverter todas as transformações realizadas durante a migração.
- Envie os dados para o destino apropriado, levando em consideração esquemas de fragmentação no banco de dados de origem.
Considere a abordagem de alto nível a seguir para criar um fluxo de replicação reversa:
- Leia as mudanças que ocorrem no Spanner.
- (Opcional) Desative a migração da captura de dados de alteração (CDC) para a frente antes de ativar a replicação reversa.
- Como o Spanner é um banco de dados distribuído, capture e ordene temporariamente todas as alterações antes de gravar no banco de dados de origem.
- Grave os dados no banco de dados de origem.