Este documento descreve o processo de migração dos seus dados e aplicação para o Spanner Graph. Descrevemos as fases de migração e as ferramentas recomendadas para cada fase, consoante a sua base de dados de origem e outros fatores.
A migração do seu gráfico para o Spanner Graph envolve as seguintes fases principais:
- Reúna os requisitos da sua candidatura.
- Crie o esquema do gráfico do Spanner.
- Migre a sua aplicação para o Spanner Graph.
- Teste e ajuste o gráfico do Spanner.
- Migre os seus dados para o Spanner Graph.
- Valide a migração de dados.
- Configure o mecanismo de transição e de alternativa.
Para otimizar o esquema e a aplicação em função do desempenho, pode ter de criar o esquema de forma iterativa, criar a aplicação e testar e ajustar o Spanner Graph.
Reúna os requisitos da sua candidatura
Para criar um esquema que satisfaça as necessidades da sua aplicação, reúna os seguintes requisitos:
- Modelação de dados
- Padrões de consulta comuns
- Requisitos de latência e débito
Crie o esquema do gráfico do Spanner
Para saber como criar um esquema do Spanner Graph, consulte a vista geral do esquema do Spanner Graph para ver os conceitos básicos e consulte o artigo Crie, atualize ou elimine um esquema do Spanner Graph para ver mais exemplos. Para otimizar o seu esquema para padrões de consulta comuns, consulte as práticas recomendadas para criar um esquema de grafos do Spanner.
Migre a sua aplicação para o Spanner Graph
Primeiro, leia as orientações gerais do Spanner sobre a migração da sua aplicação e, em seguida, leia as orientações nesta secção para saber as orientações de migração da aplicação Spanner Graph.
Associe ao Spanner Graph
Para saber como estabelecer ligação programaticamente ao Spanner Graph, consulte o artigo Crie, atualize ou elimine um esquema do Spanner Graph e a vista geral das consultas do Spanner Graph.
Migre consultas
A interface de consulta do Spanner Graph é compatível com o ISO GQL e inclui apoio técnico adicional para a sintaxe openCypher. Para mais informações, consulte o artigo Referência do gráfico do Spanner para utilizadores do openCypher.
Migre mutações
Para migrar a lógica de mutação da sua aplicação, pode usar mecanismos de mutação de tabelas do Spanner. Para mais informações, consulte Inserir, atualizar ou eliminar dados do Spanner Graph.
Teste e aperfeiçoe o gráfico do Spanner
As orientações do Spanner sobre como testar e otimizar o esquema e o desempenho da aplicação aplicam-se ao Spanner Graph. Para saber mais sobre as práticas recomendadas de otimização do desempenho do gráfico do Spanner, consulte os artigos Práticas recomendadas para conceber um esquema do gráfico do Spanner e Práticas recomendadas para otimizar consultas do gráfico do Spanner.
Migre os seus dados para o Spanner Graph
Para mover os seus dados de uma base de dados relacional, consulte o artigo Migre os seus dados.
Para mover dados de uma base de dados de grafos ou de uma base de dados não relacional, pode persistir dados da base de dados de origem em ficheiros, carregar os ficheiros para o Cloud Storage e, em seguida, importar os ficheiros através do Dataflow. Os formatos de ficheiros recomendados incluem AVRO e CSV. Para mais informações, consulte o artigo Formatos recomendados para a migração em massa.
Restrições de processamento
Se o seu esquema tiver restrições definidas em tabelas de entrada, certifique-se de que essas restrições não são violadas durante a importação de dados. As restrições incluem o seguinte:
- Chaves externas: pode ser definida uma restrição de chave externa para a referência de uma aresta a um nó.
- Intercalação: uma tabela de entrada de arestas pode ser intercalada numa tabela de entrada de nós. Esta intercalação define uma relação principal-secundário, com a restrição implícita de que o principal tem de existir antes de o secundário ser criado.
O superior numa organização intercalada e a entidade referenciada na restrição de chave externa têm de ser carregados primeiro. Isto significa que tem de carregar primeiro os nós no gráfico e, em seguida, carregar as arestas. Quando carrega arestas antes de carregar os nós aos quais as arestas se ligam, pode encontrar erros durante o processo de carregamento que indicam que determinadas chaves não existem.
Para alcançar a ordem de importação correta, use modelos fornecidos pela Google para definir trabalhos do Dataflow separados para cada fase e, em seguida, execute os trabalhos em sequência. Por exemplo, pode executar uma tarefa do Dataflow para importar nós e, em seguida, executar outra tarefa do Dataflow para importar arestas. Em alternativa, pode escrever uma tarefa do Dataflow personalizada que gere a sequência de importação.
Para mais informações sobre os modelos fornecidos pela Google, consulte o seguinte:
Se importar na ordem errada, a tarefa pode falhar ou apenas uma parte dos seus dados pode ser migrada. Se apenas uma parte dos seus dados for migrada, faça a migração novamente.
Melhore a eficiência do carregamento de dados
Para melhorar a eficiência do carregamento de dados, crie índices secundários e defina chaves externas depois de importar os dados para o Spanner. Esta abordagem só é possível para o carregamento em massa inicial ou durante a migração com tempo de inatividade.
Valide a migração de dados
Depois de migrar os dados, execute consultas básicas para verificar a correção dos dados. Execute as seguintes consultas nas bases de dados de origem e de destino para verificar se os resultados correspondem:
- Contar o número de nós e arestas.
- Contar o número de nós e arestas por etiqueta.
- Calcular estatísticas (contagem, soma, média, mínimo, máximo) em cada propriedade de nó e aresta.
Configure o mecanismo de transição e de alternativa
Configure os mecanismos de transição e de tolerância a falhas.