Replicar dados da base de dados Oracle para o BigQuery


Este tutorial mostra como implementar uma tarefa que replica continuamente dados alterados de uma base de dados Oracle para um conjunto de dados do BigQuery, através da replicação do Cloud Data Fusion. Esta funcionalidade é fornecida pela stream de dados.

Objetivos

Neste tutorial:

  1. Configure a sua base de dados Oracle para ativar o registo suplementar.
  2. Criar e executar uma tarefa de replicação do Cloud Data Fusion.
  3. 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.

Os novos Google Cloud utilizadores podem ser elegíveis para uma avaliação gratuita.

Quando a replicação é executada, são-lhe cobrados custos pelo cluster do Dataproc e pelo Cloud Storage, e incorre em custos de processamento do Datastream e do BigQuery. Para otimizar estes custos, recomendamos vivamente que use a tarifa fixa do BigQuery.

Antes de começar

  1. 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 the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  2. Verify that billing is enabled for your Google Cloud project.

  3. Enable the Cloud Data Fusion, Dataproc, Datastream, 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 the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the APIs

  4. 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.
  5. Funções necessárias

    Para receber as autorizações de que precisa para estabelecer ligação a uma base de dados Oracle, peça ao seu administrador que lhe conceda as seguintes funções de IAM:

    Para mais informações sobre a atribuição de funções, consulte o artigo Gerir acesso.

    Também pode conseguir as autorizações necessárias através de funções personalizadas ou outras funções predefinidas.

    Opcional: instale o Oracle no Compute Engine

    Esta secção mostra como configurar uma base de dados de exemplo. Se já tiver uma base de dados do Oracle instalada, pode ignorar esta secção.

    1. Transfira uma imagem Docker do servidor Oracle.

      Para ver as limitações desta imagem do Oracle Express Edition 11g, consulte o artigo Edições da base de dados Oracle.

    2. Implemente a sua imagem de Docker numa nova instância de VM.

    3. Na página Discos do Compute Engine, altere o tamanho do disco para 500 GB e reinicie a VM.

      Aceda a Discos

    4. Instale o esquema de exemplo de RH.

    Crie uma regra de firewall ou uma interligação de redes VPC para o seu servidor Oracle

    Se a sua base de dados Oracle não permitir tráfego de entrada de endereços IP públicos, configure a interligação de redes VPC entre a VPC do Datastream e a<0x0AVPC onde a sua base de dados Oracle pode ser acedida. Para mais informações, consulte o artigo Crie uma configuração de conetividade privada.

    Se a sua base de dados Oracle permitir tráfego de entrada de endereços IP públicos, crie uma regra de firewall para a instância de VM para permitir tráfego de entrada de IPs públicos do Datastream.

    Configure o servidor Oracle para ativar o registo suplementar

    Siga os passos para configurar a base de dados Oracle de origem.

    Crie e execute uma tarefa de replicação do Cloud Data Fusion

    Crie o trabalho

    1. Na interface Web do Cloud Data Fusion, clique em Replicação.

    2. Clique em Criar tarefa de replicação.

    3. Na página Criar nova tarefa de replicação, especifique um Nome para a tarefa de replicação e clique em Seguinte.

    4. Configure a origem:

      1. Selecione Oracle (pelo Datastream) como a origem.

      2. Para o Método de conetividade, se o seu servidor Oracle permitir tráfego de entrada de IPs públicos do Datastream, escolha Lista de autorizações de IPs. Caso contrário, para o Nome da ligação privada, escolha Conetividade privada (intercâmbio da VPC) e introduza o nome do intercâmbio da VPC que criou na secção Crie o intercâmbio da rede da VPC ou a regra de firewall para o seu servidor Oracle.

      3. Em Anfitrião, introduza o nome de anfitrião do servidor Oracle a ler.

      4. Para Porta, introduza a porta a usar para estabelecer ligação ao servidor Oracle: 1521.

      5. Para Identidade do sistema, introduza xe (o nome da base de dados de exemplo do servidor Oracle).

      6. Na secção de credenciais, introduza o nome de utilizador e a palavra-passe para aceder ao servidor Oracle.

      7. Deixe todas as outras propriedades como estão.

    5. Clicar em Seguinte.

    6. Configure o alvo:

      1. Selecione o destino do BigQuery.

      2. O ID do projeto e a chave da conta de serviço são detetados automaticamente. Manter os valores predefinidos como estão.

      3. Opcional: na secção Avançadas, pode configurar o seguinte:

        • Nome e localização do contentor de preparação
        • Intervalo de carregamento
        • Prefixo da tabela de teste
        • Comportamento quando as tabelas ou as bases de dados são eliminadas
    7. Clicar em Seguinte.

    8. Se a ligação for bem-sucedida, é apresentada uma lista de tabelas. Para este tutorial, selecione algumas tabelas.

    9. Clicar em Seguinte.

    10. Na página de revisão da avaliação, clique em Ver mapeamentos em qualquer uma das tabelas para receber uma avaliação dos problemas de esquema, das funcionalidades em falta ou dos problemas de conetividade que possam ocorrer durante a replicação.

      Se ocorrerem problemas, tem de os resolver antes de continuar. Para este tutorial, se alguma das tabelas tiver problemas, faça o seguinte:

      1. Voltar ao passo em que selecionou tabelas.
      2. Selecionar uma tabela ou um evento (inserções, atualizações ou eliminações) 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.

    11. Clique em Anterior.

    12. Clicar em Seguinte.

    13. Reveja os detalhes do trabalho de replicação do resumo e, de seguida, clique em Implementar trabalho de replicação.

    Inicie a tarefa

    1. Na interface Web do Cloud Data Fusion, aceda à página detalhes da tarefa de replicação.

    2. Clique em Iniciar.

    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 instantânea inicial dos dados da tabela que selecionou para o BigQuery. Neste estado, o estado da tabela é apresentado como Snapshotting. Depois de o instantâneo inicial ser carregado no BigQuery, todas as alterações feitas à tabela são replicadas no BigQuery, e 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 da tarefa de replicação na página de detalhes da tarefa de replicação.

    1. Na página Replicação, clique no Nome da tarefa de replicação escolhida.

    2. Clique em Monitorizaçã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 Oracle.

    1. Na Google Cloud consola, aceda à página BigQuery.

    2. No painel do lado esquerdo, clique no nome do projeto para expandir uma lista de conjuntos de dados.

    3. Selecione o conjunto de dados xe e, de seguida, selecione uma tabela para ver.

    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, limpe os recursos que criou no Google Cloud para que não ocupem quota e não lhe sejam cobrados no futuro. As secções seguintes descrevem como eliminar ou desativar estes recursos.

    Elimine a instância de VM

    1. Na Google Cloud consola, aceda à página Instâncias de VM.

      Aceder às instâncias de VM

    2. Selecione a caixa de verificação da instância que quer eliminar.

    3. Para eliminar a instância, clique em Eliminar.

    Elimine a instância do Cloud Data Fusion

    Siga as instruções para eliminar a sua instância do Cloud Data Fusion.

    Elimine o projeto

    A forma mais fácil de eliminar a faturação é eliminar o projeto que criou para o tutorial.

    Para eliminar o projeto:

    1. In the Google Cloud console, go to the Manage resources page.

      Go to Manage resources

    2. In the project list, select the project that you want to delete, and then click Delete.
    3. In the dialog, type the project ID, and then click Shut down to delete the project.

    O que se segue?