Processamento de captura de dados de alterações (CDC)

Esta página explica a captura de dados de alterações (CDC) no Google Cloud Cortex Framework no BigQuery. O BigQuery foi concebido para armazenar e analisar novos dados de forma eficiente.

Processo de CDC

Quando os dados são alterados no sistema de dados de origem (como o SAP), o BigQuery não modifica os registos existentes. Em alternativa, as informações atualizadas são adicionadas como um novo registo. Para evitar duplicados, tem de aplicar uma operação de união posteriormente. Este processo é denominado tratamento de captura de dados de alterações (CDC).

A base de dados para SAP inclui a opção de criar scripts para o Cloud Composer ou o Apache Airflow para unir ou upsert os novos registos resultantes das atualizações e manter apenas a versão mais recente num novo conjunto de dados. Para que estes scripts funcionem, as tabelas têm de ter alguns campos específicos:

  • operation_flag: este indicador indica ao script se um registo foi inserido, atualizado ou eliminado.
  • recordstamp: esta data/hora ajuda a identificar a versão mais recente de um registo. Esta flag indica se o registo é:
    • Inserido (I)
    • Atualizado (U)
    • Eliminado (D)

Ao usar o processamento de CDC, pode garantir que os seus dados do BigQuery refletem com precisão o estado mais recente do seu sistema de origem. Isto elimina as entradas duplicadas e oferece uma base fiável para a análise de dados.

Estrutura do conjunto de dados

Para todas as origens de dados suportadas, os dados dos sistemas a montante são primeiro replicados num conjunto de dados do BigQuery (source ou replicated dataset) e os resultados atualizados ou unidos são inseridos noutro conjunto de dados (conjunto de dados de CDC). As vistas de relatórios selecionam dados do conjunto de dados da CDC para garantir que as ferramentas e as aplicações de relatórios têm sempre a versão mais recente de uma tabela.

O fluxo seguinte mostra como o processamento de CDC para SAP, dependente do operational_flag e do recordstamp.

Exemplo de processamento de CDC para SAP

Figura 1. Exemplo de processamento de CDC para SAP.

O fluxo seguinte representa a integração das APIs em dados não processados e processamento de CDC para o Salesforce, dependente dos campos Id e SystemModStamp produzidos pelas APIs Salesforce.

Integração de APIs em dados não processados e processamento de CDC para o Salesforce

Figura 2. Integração de APIs em dados não processados e processamento de CDC para o Salesforce.

Algumas ferramentas de replicação podem unir ou inserir os registos quando os inserem no BigQuery, pelo que a geração destes scripts é opcional. Neste caso, a configuração só tem um conjunto de dados. O conjunto de dados de relatórios obtém registos atualizados para relatórios desse conjunto de dados.