Habilitar captura de dados de alteração para conexões de origem na API
Use a captura de dados de alteração em origens do Adobe Experience Platform para manter seus sistemas de origem e destino sincronizados em tempo quase real.
Atualmente, o Experience Platform oferece suporte a cópia de dados incremental, que transfere periodicamente registros recém-criados ou atualizados do sistema de origem para os conjuntos de dados assimilados. Este método depende de uma coluna de carimbo de data/hora para rastrear as alterações, mas não detecta exclusões, o que pode levar a inconsistências de dados ao longo do tempo.
Por outro lado, a captura de dados de alteração captura e aplica inserções, atualizações e exclusões em tempo quase real. Esse controle abrangente de alterações garante que os conjuntos de dados permaneçam totalmente alinhados ao sistema de origem e fornece um histórico completo de alterações, além do que a cópia incremental suporta. No entanto, as operações de exclusão exigem consideração especial, pois afetam todos os aplicativos que usam os conjuntos de dados de destino.
A alteração da captura de dados no Experience Platform exige o Data Mirror com esquemas baseados em modelo (também chamados de esquemas relacionais). Você pode fornecer dados de alteração ao Data Mirror de duas maneiras:
- Controle manual de alterações: inclua uma coluna
_change_request_type
em seu conjunto de dados para fontes que não geram nativamente registros de captura de dados de alteração - Exportações de captura de dados de alteração nativa: usar registros de captura de dados de alteração exportados diretamente do sistema de origem
Ambas as abordagens exigem o Data Mirror com esquemas baseados em modelo para preservar relacionamentos e impor exclusividade.
Data Mirror com esquemas baseados em modelo
O Data Mirror usa esquemas baseados em modelo para estender a captura de dados de alteração e habilitar recursos avançados de sincronização de banco de dados. Para obter uma visão geral do Data Mirror, consulte visão geral do Data Mirror.
Os esquemas baseados em modelo estendem o Experience Platform para aplicar a exclusividade da chave primária, rastrear alterações no nível da linha e definir relações no nível do esquema. Com a captura de dados de alteração, eles aplicam inserções, atualizações e exclusões diretamente no data lake, reduzindo a necessidade de extrair, transformar, carregar (ETL) ou reconciliação manual.
Consulte Visão geral dos esquemas baseados em modelo para obter mais informações.
Requisitos do esquema baseado em modelo para captura de dados de alteração
Antes de usar um schema baseado em modelo com a captura de dados de alteração, configure os seguintes identificadores:
- Identifique exclusivamente cada registro com uma chave primária.
- Aplique atualizações em sequência usando um identificador de versão.
- Para esquemas de série temporal, adicione um identificador de carimbo de data e hora.
Controlar manuseio de coluna control-column-handling
Use a coluna _change_request_type
para especificar como cada linha deve ser processada:
u
— substituir (padrão se a coluna estiver ausente)d
— excluir
Essa coluna é avaliada somente durante a assimilação e não é armazenada ou mapeada para campos XDM.
Fluxo de trabalho workflow
Para ativar a captura de dados de alteração com um esquema baseado em modelo:
-
Crie um esquema baseado em modelo.
-
Adicione os descritores necessários:
- Descritor de chave primária
- Descritor de versão
- Descritor de carimbo de data/hora (somente série temporal)
-
Crie um conjunto de dados a partir do esquema e ative a captura de dados de alteração.
-
Somente para assimilação baseada em arquivo: adicione a coluna
_change_request_type
aos arquivos de origem se precisar especificar explicitamente operações de exclusão. As configurações de exportação do CDC lidam com isso automaticamente para fontes de banco de dados. -
Conclua a configuração da conexão de origem para habilitar a assimilação.
_change_request_type
só é necessária para fontes baseadas em arquivo (Amazon S3, Azure Blob, Armazenamento da Google Cloud, SFTP) quando você deseja controlar explicitamente o comportamento de alteração no nível da linha. Para fontes de banco de dados com recursos nativos do CDC, as operações de alteração são tratadas automaticamente por meio de configurações de exportação do CDC. A assimilação baseada em arquivo presume operações de substituição por padrão. Você só precisará adicionar essa coluna se quiser especificar operações de exclusão nos uploads de arquivo.Fornecendo dados de alteração para fontes baseadas em arquivo file-based-sources
Para fontes baseadas em arquivo (Amazon S3, Azure Blob, Google Cloud Storage e SFTP), inclua uma coluna _change_request_type
em seus arquivos.
Use os valores _change_request_type
definidos na seção Manuseio de coluna de controle acima.
_change_request_type
com u
(substituição) ou d
(exclusão) para validar os recursos de controle de alterações. Por exemplo, o recurso Campanhas orquestradas da Adobe Journey Optimizer exige essa coluna para habilitar a opção "Campanha orquestrada" e permitir a seleção de conjuntos de dados para direcionamento. Os requisitos de validação específicos do aplicativo podem variar.Siga as etapas específicas da origem abaixo.
Fontes de armazenamento na nuvem cloud-storage-sources
Habilite a captura de dados de alteração para fontes de armazenamento na nuvem seguindo estas etapas:
-
Crie uma conexão básica para sua origem:
table 0-row-2 1-row-2 2-row-2 3-row-2 4-row-2 Fonte Guia de conexão básica Amazon S3 Criar uma Amazon S3 conexão básica Azure Blob Criar uma Azure Blob conexão básica Google Cloud Storage Criar uma Google Cloud Storage conexão básica SFTP Criar uma SFTP conexão básica
Todas as fontes de armazenamento na nuvem usam o mesmo formato de coluna _change_request_type
descrito na seção Fontes baseadas em arquivo acima.
Origens de Banco de Dados database-sources
Azure Databricks
Para usar a captura de dados de alteração com o Azure Databricks, você deve habilitar o feed de dados de alteração nas tabelas de origem e configurar o Data Mirror com esquemas baseados em modelo no Experience Platform.
Use os seguintes comandos para habilitar a alteração do feed de dados nas tabelas:
Nova tabela
Para aplicar o feed de dados de alteração a uma nova tabela, defina a propriedade de tabela delta.enableChangeDataFeed
como TRUE
no comando CREATE TABLE
.
CREATE TABLE student (id INT, name STRING, age INT) TBLPROPERTIES (delta.enableChangeDataFeed = true)
Tabela existente
Para aplicar o feed de dados de alteração a uma tabela existente, defina a propriedade de tabela delta.enableChangeDataFeed
como TRUE
no comando ALTER TABLE
.
ALTER TABLE myDeltaTable SET TBLPROPERTIES (delta.enableChangeDataFeed = true)
Todas as novas tabelas
Para aplicar o feed de dados de alteração a todas as novas tabelas, defina suas propriedades padrão como TRUE
.
set spark.databricks.delta.properties.defaults.enableChangeDataFeed = true;
Para obter mais informações, leia o Azure Databricks guia sobre como habilitar o feed de dados de alteração.
Leia a documentação a seguir para obter as etapas sobre como habilitar a captura de dados de alteração para sua conexão de origem do Azure Databricks:
Data Landing Zone
Para usar a captura de dados de alteração com o Data Landing Zone, você deve habilitar o feed de dados de alteração nas tabelas de origem e configurar o Data Mirror com esquemas baseados em modelo no Experience Platform.
Leia a documentação a seguir para obter as etapas sobre como habilitar a captura de dados de alteração para sua conexão de origem do Data Landing Zone:
Google BigQuery
Para usar a captura de dados de alteração com o Google BigQuery, você deve habilitar o histórico de alterações em suas tabelas de origem e configurar o Data Mirror com esquemas baseados em modelo no Experience Platform.
Para habilitar o histórico de alterações na conexão de origem do Google BigQuery, navegue até a página Google BigQuery no console Google Cloud e defina enable_change_history
como TRUE
. Essa propriedade ativa o histórico de alterações da tabela de dados.
Para obter mais informações, leia o manual sobre instruções de linguagem de definição de dados em GoogleSQL.
Leia a documentação a seguir para obter as etapas sobre como habilitar a captura de dados de alteração para sua conexão de origem do Google BigQuery:
Snowflake
Para usar a captura de dados de alteração com Snowflake, você deve habilitar o controle de alterações nas tabelas de origem e configurar o Data Mirror com esquemas baseados em modelo no Experience Platform.
Em Snowflake, habilite o controle de alterações usando ALTER TABLE
e definindo CHANGE_TRACKING
como TRUE
.
ALTER TABLE mytable SET CHANGE_TRACKING = TRUE
Para obter mais informações, leia o Snowflake guia sobre como usar a cláusula de alterações.
Leia a documentação a seguir para obter as etapas sobre como habilitar a captura de dados de alteração para sua conexão de origem do Snowflake: