Este tutorial mostra como criar e implementar uma tarefa que replica continuamente os dados alterados de uma base de dados do Microsoft SQL Server para uma tabela do BigQuery.
Objetivos
Neste tutorial:
- Ative a captura de dados de alterações (CDC) na sua base de dados do SQL Server.
- Criar e executar uma tarefa de replicação do Cloud Data Fusion.
- Veja os resultados no BigQuery.
Custos
Neste documento, usa os seguintes componentes faturáveis do Google Cloud:
Para gerar uma estimativa de custos com base na sua utilização projetada,
use a calculadora de preços.
Quando a replicação é executada, é cobrado o cluster do Dataproc e incorre em custos de processamento do BigQuery. Para otimizar estes custos, recomendamos vivamente que use os preços de taxa fixa do BigQuery.
Antes de começar
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator
(
roles/resourcemanager.projectCreator
), which contains theresourcemanager.projects.create
permission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
Enable the Cloud Data Fusion, BigQuery, and Cloud Storage APIs.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin
), which contains theserviceusage.services.enable
permission. Learn how to grant roles. - Crie uma instância pública do
Cloud Data Fusion na versão 6.3.0 ou posterior. Se
criar uma instância
privada, configure o peering de rede VPC.
- Quando criar a instância, ative a replicação clicando em Adicionar aceleradores e selecionando a caixa de verificação Replicação.
- Para a ativar numa instância existente, consulte o artigo Ative a replicação.
Transfira a base de dados AdventureWorks2017 (OLTP) e carregue os dados na sua instância do SQL Server.
Transfira o controlador JDBC do SQL Server para a sua máquina local.
Na interface Web do Cloud Data Fusion, carregue o controlador JDBC. Use estes valores para configurar o controlador JDBC:
- No campo Nome, introduza
sqlserver
. - No campo Nome da turma, introduza
com.microsoft.sqlserver.jdbc.SQLServerDriver
. - No campo Versão, mantenha a predefinição.
- No campo Nome, introduza
Na interface Web do Cloud Data Fusion, clique em Replicação.
Clique em
Criar tarefa de replicação.Na página Criar nova tarefa de replicação, especifique um Nome para a tarefa de replicação e clique em Seguinte.
Configure a origem:
- Selecione Microsoft SQL Server como origem.
- Para Anfitrião, introduza o nome do anfitrião do SQL Server a partir do qual quer ler.
- Para Porta, introduza a porta a usar para estabelecer ligação ao SQL Server:
1433
. - Para Nome do plug-in JDBC, selecione
sqlserver
ou o nome que especificou quando configurou o controlador JDBC. - Em Nome da base de dados, introduza
AdventureWorks2017
. - Na secção Credenciais, introduza o seu nome de utilizador e palavra-passe para aceder ao SQL Server.
Clicar em Seguinte.
Configure o alvo:
- Selecione o destino do BigQuery.
- O ID do projeto e a chave da conta de serviço são detetados automaticamente. Mantenha os valores predefinidos.
- Opcional: na secção Avançadas, pode configurar o nome e a localização do contentor do Google Cloud Storage, o intervalo de carregamento, o prefixo da tabela de preparação e o comportamento quando as tabelas ou as bases de dados são eliminadas.
Clicar em Seguinte.
Se a associação for bem-sucedida, é apresentada uma lista de tabelas
AdventureWorks2017
. Para este tutorial, selecione algumas tabelas e eventos, como os eventosInsert
,Update
eDelete
.Opcional: configure as propriedades avançadas. Para este tutorial, pode aceitar as predefinições.
Clicar em Seguinte.
Na página Rever avaliação, clique em Ver mapeamentos em qualquer uma das tabelas para ver uma avaliação dos problemas de esquema, das funcionalidades em falta ou dos problemas de conetividade que possam ocorrer durante a replicação. Os problemas têm de ser resolvidos antes de poder continuar. Para este tutorial, se alguma das tabelas tiver problemas, volte ao passo em que selecionou tabelas e selecione uma tabela ou um evento sem problemas.
Para mais informações acerca das conversões de tipos de dados da base de dados de origem para o destino do BigQuery, consulte o artigo Tipos de dados de replicação.
Clique em Anterior.
Clicar em Seguinte.
Reveja os detalhes do trabalho de replicação do resumo e, de seguida, clique em Implementar trabalho de replicação.
- Na página Detalhes da tarefa de replicação, clique em Iniciar.
Na página Replicação, clique no Nome da tarefa de replicação.
Clique em Monitorização.
Abra o BigQuery na Google Cloud consola.
No painel do lado esquerdo, clique no nome do projeto para expandir uma lista de conjuntos de dados.
Selecione o conjunto de dados
adventureworks2017
e, de seguida, selecione uma tabela para ver.- In the Google Cloud console, go to the VM instances page.
- Select the checkbox for the instance that you want to delete.
- To delete the instance, click More actions, click Delete, and then follow the instructions.
- In the Google Cloud console, go to the Manage resources page.
- In the project list, select the project that you want to delete, and then click Delete.
- In the dialog, type the project ID, and then click Shut down to delete the project.
- Saiba mais sobre a replicação no Cloud Data Fusion.
- Consulte a referência da API Replication.
- Siga o tutorial para replicar dados do MySQL para o BigQuery.
- Siga o tutorial Replicar dados do Oracle para o BigQuery.
Para mais informações sobre redes, consulte o artigo Usar o HAProxy com o Cloud Data Fusion para navegar em topologias de rede complexas.
Funções necessárias
Para obter as autorizações de que precisa para este tutorial, consulte os artigos Controlo de acesso com o IAM e Conceda autorização de utilizador à conta de serviço.
Opcional: configure uma instância de VM do SQL Server
Ative a CDC na sua base de dados do SQL Server
Para a replicação, ative a captura de dados de alterações (CDC) na base de dados e na tabela que quer replicar.
Crie e execute uma tarefa de replicação do Cloud Data Fusion
Carregue o controlador JDBC
Crie o trabalho
Inicie a tarefa
A tarefa de replicação transita do estado Aprovisionamento para o estado Início e, de seguida, para o estado Em execução. No estado de execução, a tarefa de replicação carrega uma captura inicial dos dados da tabela que selecionou (por exemplo, a tabela People) para o BigQuery. Neste estado, o estado da tabela People é apresentado como Snapshotting. Depois de o instantâneo inicial ser carregado no BigQuery, todas as alterações feitas à tabela People são replicadas no BigQuery. O estado da tabela é apresentado como A replicar.
Monitorize o trabalho
Pode iniciar e parar a tarefa de replicação, rever a respetiva configuração e registos, e monitorizar a tarefa de replicação.
Pode monitorizar as atividades das tarefas de replicação na página Detalhes da tarefa de replicação.
Veja os resultados no BigQuery
A tarefa de replicação cria um conjunto de dados e uma tabela replicados no BigQuery, com nomes herdados da base de dados e dos nomes das tabelas correspondentes do SQL Server.
Para mais informações, consulte a documentação do BigQuery.
Limpar
Para evitar incorrer em custos na sua conta do Google Cloud pelos recursos usados neste tutorial, elimine o projeto que contém os recursos ou mantenha o projeto e elimine os recursos individuais.
Depois de concluir o tutorial, elimine os recursos que criou no Google Cloud.
Elimine a instância de VM
Elimine a instância do Cloud Data Fusion
Siga as instruções para eliminar a sua instância do Cloud Data Fusion.