Migrar para a replicação de CDC pelo Pub/Sub

Este documento descreve como migrar da replicação de dados de streaming para a replicação de CDC pelo Pub/Sub ao usar o BigQuery Connector para SAP.

Se você já usa o BigQuery Connector para SAP e quer que sua tabela do BigQuery reflita diretamente as mudanças das tabelas de origem do SAP, use a replicação de CDC pelo Pub/Sub. Quando os dados mudam no SAP, o BigQuery Connector para SAP captura as mudanças e as envia pelo Pub/Sub diretamente para sua tabela do BigQuery, aplicando as mudanças sem duplicatas.

Antes de começar

Antes de começar, saiba mais sobre o serviço Pub/Sub e sua terminologia.

Verifique se você ou seus administradores concluíram os seguintes pré-requisitos:

Atualizar o BigQuery Connector para SAP

Para usar a replicação de CDC pelo Pub/Sub, atualize o BigQuery Connector para SAP para a versão 2.9 ou mais recente. Para informações sobre como atualizar o conector, consulte Atualizar o BigQuery Connector para SAP.

Ativar as APIs Google Cloud

Para a replicação de CDC pelo Pub/Sub, verifique se as seguintes APIs estão ativadas:

  • API Pub/Sub
  • API BigQuery
  • API IAM Service Account Credentials

Para informações sobre como ativar as APIs do Google Cloud , consulte Como ativar APIs.

Configurar a autenticação

Para usar a replicação de CDC pelo Pub/Sub, além dos papéis atuais do BigQuery, é necessário conceder o papel de editor do Pub/Sub à conta de serviço usada para autorização. Verifique se a conta de serviço tem os seguintes papéis:

  • Editor do Pub/Sub
  • Editor de dados do BigQuery
  • Usuário de jobs do BigQuery

Para informações sobre como conceder um papel, consulte Conceder um único papel.

Para informações sobre os métodos de autenticação aceitos e como configurar a autenticação, consulte Configurar a autenticação.

Criar um tópico de mensagens inativas

Para processar mensagens que uma assinatura do BigQuery não consegue gravar na tabela de destino do BigQuery, recomendamos que você crie um tópico de dead-letter. Esse tópico de mensagens inativas serve como uma fila separada em que o Pub/Sub publica automaticamente mensagens não entregues após todas as novas tentativas.

Etapas da migração

Siga estas etapas gerais de migração:

  1. Pare a configuração de replicação do SAP LT Replication Server.
  2. Prepare a tabela de CDC duplicada.
  3. Inicie a migração pelo BigQuery Connector para SAP.
  4. Configure as configurações de replicação.
  5. Ative a configuração de replicação do SAP LT Replication Server.
  6. Verificar a replicação no BigQuery.

Parar a configuração de replicação do SAP LT Replication Server

  1. Na GUI do SAP, insira o código da transação LTRC.

  2. Pare a configuração de replicação do SAP LT Replication Server que você quer migrar.

Preparar a tabela de CDC duplicada

No BigQuery, crie uma tabela de CDC sem duplicação com base na tabela temporária do BigQuery. Quando você usa a replicação de CDC pelo Pub/Sub, essa tabela de CDC se torna a tabela externa no BigQuery para seus dados do SAP.

Para preparar uma tabela de CDC sem duplicação, faça o seguinte:

  1. No console Google Cloud , acesse a página BigQuery.

    Acessar o BigQuery

  2. Clique em Escrever nova consulta.

  3. Crie uma tabela de CDC com base na tabela de staging do BigQuery:

    1. Na área de texto do Editor de consultas, para copiar a estrutura da tabela de preparação do BigQuery, insira a seguinte consulta:

      CREATE TABLE CDC_TABLE LIKE STAGING_TABLE

      Substitua:

      • CDC_TABLE: um nome para a tabela de CDC do BigQuery.
      • STAGING_TABLE: o nome da tabela de transferência temporária do BigQuery.
    2. Clique em Executar.

    Esta etapa cria uma estrutura de tabela de CDC sem chaves primárias.

  4. Modifique a definição da tabela de CDC para adicionar chaves primárias:

    1. Na área de texto do Editor de consultas, para adicionar chaves primárias, insira a seguinte consulta:

      ALTER TABLE CDC_TABLE ADD PRIMARY KEY(PRIMARY_KEYS) NOT INFORCED

      Substitua:

      • CDC_TABLE: o nome da tabela de CDC.
      • PRIMARY_KEYS: as chaves primárias como uma lista separada por vírgulas. É possível recuperar a lista de chaves primárias da tabela SAP de origem.
    2. Clique em Executar.

  5. Elimine a duplicação da tabela de CDC:

    1. Na área de texto do Editor de consultas, para remover duplicidades da tabela de CDC, insira a seguinte consulta:

      INSERT INTO CDC_TABLE (COLUMN_NAMES )
      SELECT COLUMN_NAMES FROM STAGING_TABLE WHERE is_deleted = false QUALIFY ROW_NUMBER() OVER( PARTITION BY PRIMARY_KEYS ORDER BY recordstamp DESC ) = 1

      Substitua:

      • CDC_TABLE: o nome da tabela de CDC.
      • COLUMN_NAMES: os nomes das colunas como uma lista separada por vírgulas. É possível recuperar a lista de nomes de colunas do sistema de origem SAP. Como alternativa, use um asterisco (*) para selecionar todas as colunas.
      • PRIMARY_KEYS: as chaves primárias da tabela de CDC.
      • STAGING_TABLE: o nome da tabela de transição.
    2. Clique em Executar.

Outra opção é usar a opção Copiar no BigQuery Studio para copiar a estrutura da tabela de preparo de origem e criar uma tabela de CDC.

Iniciar a migração pelo BigQuery Connector para SAP

  1. Na GUI do SAP, insira a transação /GOOG/SLT_SETTINGS precedida por /n:
    /n/GOOG/SLT_SETTINGS
  2. No menu suspenso, no campo Google Cloud Partner, selecione BigQuery.
  3. No menu suspenso Tabela de configurações, na tela de inicialização da transação /GOOG/SLT_SETTINGS, selecione Transferências em massa.
  4. No campo Chave de transferência em massa, especifique o ID da configuração de replicação do SAP LT Replication Server que você quer migrar.
  5. Clique no ícone Executar.
  6. Na tela Manutenção de configurações do BigQuery: transferências em massa, clique em Migrar.
  7. Na caixa de diálogo de confirmação da migração, clique em Sim.

Configurar as opções de replicação

  1. Na GUI do SAP, insira a transação /GOOG/SLT_SETTINGS precedida por /n:
    /n/GOOG/SLT_SETTINGS
  2. No menu suspenso, no campo Google Cloud Partner, selecione CDC do BigQuery via Pub/Sub.
  3. No menu suspenso Tabela de configurações, na tela de inicialização da transação /GOOG/SLT_SETTINGS, selecione Transferências em massa.
  4. No campo Chave de transferência em massa, especifique o ID da configuração de replicação do SAP LT Replication Server que você migrou na seção Iniciar a migração pelo BigQuery Connector para SAP.
  5. Clique no ícone Executar. A tela Manutenção de configurações do BigQuery: transferências em massa é exibida.
  6. Verifique se a configuração de replicação migrada do SAP LT Replication Server está sendo exibida.
  7. Para a configuração de replicação do SAP LT Replication Server, especifique os seguintes atributos de tabela:

    1. No campo Nome da tabela externa, insira o nome da tabela de CDC que você criou na etapa anterior Preparar a tabela de CDC sem duplicação.

    2. Para ativar a replicação de CDC no BigQuery pelo Pub/Sub, marque a caixa de seleção Repl CPS.

    3. No campo Esquema do Pub/Sub, insira um nome para o esquema do Pub/Sub. O BigQuery Connector para SAP cria ou atualiza automaticamente um esquema Avro para corresponder à definição da tabela SAP.

    4. No campo Tópico do Pub/Sub, insira um nome para o tópico do Pub/Sub em que as mensagens são publicadas. O BigQuery Connector para SAP cria um tópico automaticamente.

    5. No campo Assinatura do Pub/Sub, insira um nome para a assinatura do BigQuery que consome mensagens do tópico do Pub/Sub e grava no BigQuery. O BigQuery Connector para SAP cria automaticamente uma assinatura e a vincula ao tópico especificado na etapa anterior.

    6. No campo Fila de mensagens mortas, insira o nome do tópico de mensagens inativas do Pub/Sub. Esse tópico de mensagens inativas recebe mensagens que o Pub/Sub não consegue gravar no BigQuery usando a assinatura do BigQuery.

    7. Para ativar a funcionalidade de captura de dados alterados (CDC) na tabela, marque a caixa de seleção Act. CDC (Ativar CDC).

    8. Para otimizar a performance dos carregamentos iniciais, marque a caixa de seleção Cache Val (Validação de cache).

      Quando você seleciona esse campo, o conector oferece o máximo de performance para grandes transferências de dados. O sistema executa validações de pipeline Google Cloud em intervalos e armazena os resultados em cache. O conector oferece transformação rápida de dados e envia dados diretamente para o Pub/Sub. Para mais informações, consulte Validações de cache.

Ativar a configuração de replicação do SAP LT Replication Server

  1. Na GUI do SAP, insira o código da transação LTRC.

  2. Ative a configuração.

    A ativação da configuração cria todos os recursos necessários relacionados ao Pub/Sub e inicia a replicação. A tabela de CDC configurada reflete todas as mudanças novas e não processadas.

Verificar a replicação no BigQuery

No BigQuery, verifique se os valores na tabela de CDC são os mesmos da tabela SAP de origem. Para mais informações sobre como fazer isso, consulte Validar a replicação no BigQuery.

Resolver problemas

Para informações sobre como diagnosticar e resolver problemas que você pode encontrar ao migrar a replicação, consulte o Guia de solução de problemas do BigQuery Connector para SAP.

Receber suporte

Se você precisar de ajuda para resolver problemas com as etapas de migração, colete todas as informações de diagnóstico disponíveis e entre em contato com Cloud Customer Care. Para mais informações sobre como entrar em contato com o atendimento ao cliente, consulte Como receber suporte para o SAP no Google Cloud.