Esta página descreve como mudar esquemas no Cloud Data Fusion ao replicar dados de um banco de dados do Microsoft SQL Server para uma tabela do BigQuery. Para garantir que o job de replicação continue a replicar dados de uma origem do SQL Server após as mudanças no esquema, siga estas etapas.
Mudar o esquema
Acesse sua instância:
No console do Google Cloud, acesse a página do Cloud Data Fusion.
Para abrir a instância no Cloud Data Fusion Studio, clique em Instâncias e em Ver instância.
Na interface da Web do Cloud Data Fusion, clique em Replicação.
Interrompa o job de replicação.
Aplique uma mudança de esquema com suporte à tabela de origem, como Adicionar coluna com valor nulo.
Crie uma nova tabela de captura usando o procedimento
sys.sp_cdc_enable_table
com um valor exclusivo para o parâmetro@capture_instance
.Aplique a mesma mudança de esquema na tabela de destino no BigQuery.
Reinicie o job de replicação.
Opcional: quando o job começar a transmitir novas mudanças que ocorrem após a interrupção, você poderá excluir a tabela de captura antiga usando o procedimento armazenado
sys.sp_cdc_disable_table
. Defina o parâmetro@capture_instance
como o nome da instância de captura antiga.
Depois de aplicar uma mudança de esquema à tabela de origem e antes de criar uma nova tabela de captura (como você fez nas etapas anteriores), todas as mudanças são capturadas pela captura antiga com o esquema antigo. Se você adicionou uma coluna, qualquer evento de mudança durante esse período não contém dados para a nova coluna. Se o aplicativo não puder processar essa transição, siga estas etapas:
Suspenda todos os aplicativos que geram registros de banco de dados.
Verifique se o job de replicação processou todos os eventos existentes.
Interrompa o job de replicação.
Aplique a mudança de esquema à tabela de origem, como Adicionar coluna com valor nulo.
Crie uma nova tabela de captura usando o procedimento
sys.sp_cdc_enable_table
com um valor exclusivo para o parâmetro@capture_instance
.Retome os aplicativos suspensos na primeira etapa.
Aplique a mesma mudança de esquema na tabela de destino no BigQuery.
Reinicie o job de replicação.
Opcional: quando o job começar a transmitir novas alterações que ocorrem depois de você criar a nova tabela de captura na etapa anterior, você poderá excluir a tabela de captura antiga usando o procedimento armazenado
sys.sp_cdc_disable_table
. Defina o parâmetro@capture_instance
como o nome da instância de captura antiga.
A seguir
- Saiba mais sobre a replicação.
- Consulte as mudanças de esquema compatíveis.
- Consulte a API Replication.