A migração de um esquema da base de dados de origem para o Spanner envolve um processo de vários passos que combina ferramentas automatizadas com análise manual e refinamento. Os passos seguintes descrevem a abordagem recomendada:
Extração do esquema: extraia a definição do esquema (LDD) da base de dados de origem.
Conversão inicial: pode ponderar usar uma ferramenta de conversão de esquemas automatizada, como a ferramenta de migração do Spanner (SMT), que pode processar muitos dos mapeamentos de tipos de dados básicos e conversões estruturais.
Revisão e refinamento detalhados do esquema: considere converter o esquema da base de dados de origem que seja mais compatível com o Spanner em alterações menores e deliberadas que possam ser testadas e otimizadas individualmente para reduzir o risco de alterar tudo de uma só vez.
- Mapeamento do tipo de dados: reveja e refine o mapeamento do tipo de dados gerado pelo SMT. Certifique-se de que os tipos de dados do Spanner representam com precisão o intervalo, a precisão e a semântica dos tipos de base de dados de origem correspondentes.
- Chaves primárias e intercalação: identifique oportunidades para usar tabelas intercaladas do Spanner para modelar relações hierárquicas presentes no esquema da base de dados de origem. Escolha estratégias de chave primária adequadas para o Spanner, como a utilização de UUIDs. O SMT pode ajudar a escolher uma estratégia de chave principal adequada. Considere as implicações para a localidade dos dados e a evicção de pontos críticos. Avalie como as restrições de chaves externas são usadas na base de dados de origem e determine como as processar no Spanner. Para mais informações, consulte o artigo Relações entre tabelas principal e secundária.
- Otimização de índices: analise os índices existentes na base de dados de origem e crie índices do Spanner para otimizar o desempenho das consultas. Considere eliminar os índices usados com pouca frequência.
- Remova incompatibilidades: remova ou reescreva quaisquer funcionalidades específicas da base de dados de origem que não sejam suportadas no Spanner. Por exemplo, o Spanner não suporta procedimentos armazenados nem acionadores. Isto pode exigir a refatoração do código da aplicação.
Implementação do esquema: implemente o esquema do Spanner num ambiente de desenvolvimento ou de preparação.
Testes e refinamentos iterativos: carregue dados de amostra e teste o esquema com interações representativas da aplicação. Monitorize o desempenho e identifique áreas de melhoria. Refine o esquema com base nos resultados dos testes. Repita este processo até que o esquema cumpra os requisitos funcionais e de desempenho da sua aplicação.
Validação do esquema: desenvolva scripts ou procedimentos para comparar a estrutura dos esquemas da base de dados de origem e do Spanner para garantir que a conversão foi realizada corretamente.
Implementação do esquema final: implemente o esquema validado e refinado na instância de produção do Spanner.
Guias específicos de fontes
- MySQL: migre o esquema do MySQL.