Captura de dados de alterações no Azure Data Factory e no Azure Synapse Analytics
APLICA-SE A: Azure Data Factory Azure Synapse Analytics
Dica
Experimente o Data Factory no Microsoft Fabric, uma solução de análise tudo-em-um para empresas. O Microsoft Fabric abrange desde movimentação de dados até ciência de dados, análise em tempo real, business intelligence e relatórios. Saiba como iniciar uma avaliação gratuita!
Este artigo descreve a CDA (captura de dados de alterações) no Azure Data Factory.
Para saber mais, confira a Visão geral do Azure Data Factory ou a Visão geral do Azure Synapse.
Visão geral
Quando você realiza processos a integração de dados e processos ETL na nuvem, seus trabalhos podem ter um melhor desempenho e ser mais eficazes quando você só lê os dados de origem que foram alterados desde a última vez que o pipeline foi executado, em vez de sempre consultar um conjunto de dados inteiro em cada execução. O ADF fornece várias maneiras diferentes para você obter facilmente dados delta apenas da última execução.
Recurso de alocador da Captura de Dados de Alterações
A maneira mais fácil e mais rápida de começar a usar o data factory com a CDC é por meio do recurso de Captura de Dados de Alterações no nível do alocador. No designer de pipeline principal, clique em Novo em Recursos de Alocador para criar uma Captura de Dados de Alterações. O recurso de alocador da CDA fornece uma experiência passo a passo de configuração em que você pode selecionar suas origens e destinos, aplicar transformações opcionais e clicar em iniciar para começar sua captura de dados. Com o recurso CDA, você não precisa projetar pipelines ou atividades de fluxo de dados. Você também só é cobrado por quatro núcleos de fluxos de dados de Uso Geral enquanto seus dados estão sendo processados. Você pode definir uma latência preferida, que o ADF usará para ativar e procurar por dados alterados. Essa é a única vez que você será cobrado. O recurso de CDC de nível superior também é o método do ADF para executar seus processos continuamente. Pipelines no ADF são apenas em lote, mas o recurso de CDA pode ser executado continuamente.
Captura de dados de alteração nativa no fluxo de dados de mapeamento
Os dados alterados, incluindo linhas inseridas, atualizadas e excluídas, podem ser detectados e extraídos automaticamente pelo fluxo de dados de mapeamento do ADF dos bancos de dados de origem. Nenhuma coluna de carimbo de data/hora ou ID é necessária para identificar as alterações, pois ela usa a tecnologia de captura de dados de alteração nativa nos bancos de dados. Simplesmente encadeando uma transformação de origem e uma referência de transformação de coletor a um conjunto de dados de banco de dados em um fluxo de dados de mapeamento, você pode ver as alterações ocorridas no banco de dados de origem para serem aplicadas automaticamente ao banco de dados de destino, para que você possa sincronizar dados facilmente entre duas tabelas. Você também pode adicionar quaisquer transformações entre elas para qualquer lógica de negócios para processar os dados delta. Ao definir o destino de dados do coletor, você pode definir operações de inserção, atualização, upsert e exclusão no coletor sem precisar de uma transformação Alterar Linha porque o ADF consegue detectar automaticamente os marcadores de linha.
Conectores com suporte
- SAP CDC
- Banco de Dados SQL do Azure
- SQL Server
- Instância Gerenciada do SQL do Azure
- Azure Cosmos DB (API do SQL)
- Repositório analítico do Azure Cosmos DB
- Snowflake
Extração incremental automática no fluxo de dados de mapeamento
As linhas recém-atualizadas ou os arquivos atualizados podem ser detectados e extraídos automaticamente pelo fluxo de dados de mapeamento do ADF dos repositórios de origem. Quando você deseja obter dados delta dos bancos de dados, a coluna incremental é necessária para identificar as alterações. Quando você deseja carregar novos arquivos ou arquivos atualizados somente de um armazenamento, o fluxo de dados de mapeamento do ADF só funciona no último tempo de modificação dos arquivos.
Conectores com suporte
- Armazenamento de Blobs do Azure
- ADLS Gen2
- ADLS Gen1
- Banco de Dados SQL do Azure
- SQL Server
- Instância Gerenciada do SQL do Azure
- Banco de Dados do Azure para MySQL
- Banco de Dados do Azure para PostgreSQL
- Common Data Model
Extração de dados delta gerenciada pelo cliente no pipeline
Você sempre pode criar seu próprio pipeline de extração de dados delta para todos os armazenamentos de dados suportados pelo ADF, incluindo o uso de atividade de pesquisa para obter o valor da marca d'água armazenado em uma tabela de controle externa, atividade de cópia ou atividade de fluxo de dados de mapeamento para consultar os dados delta em relação ao carimbo de data/hora ou coluna de ID, e atividade SP para gravar o novo valor da marca d'água de volta em sua tabela de controle externa para a próxima execução. Quando você deseja carregar novos arquivos somente de um armazenamento de armazenamento, você pode excluir arquivos sempre que eles forem movidos para o destino com êxito ou aproveitar a pasta particionada por tempo ou os nomes de arquivo ou a hora da última modificação para identificar os novos arquivos.
Práticas Recomendadas
Captura de dados de alterações de bancos de dados
- A captura de dados de alteração nativa é sempre recomendada como a maneira mais simples de obter dados de alteração. Ela também traz muito menos carga no banco de dados de origem quando o ADF extrai os dados de alteração para processamento adicional.
- Se seus armazenamentos de banco de dados não fizerem parte da lista de conectores do ADF com suporte nativo para captura de dados de alterações, recomendamos que você marque a opção de extração incremental automática, na qual você só precisa inserir a coluna incremental para capturar as alterações. O ADF cuidará do restante, incluindo a criação de uma consulta dinâmica para carregamento delta e o gerenciamento do ponto de verificação para cada execução de atividade.
- A extração de dados delta gerenciada pelo cliente no pipeline abrange todos os bancos de dados com suporte do ADF e oferece flexibilidade para controlar tudo sozinho.
Captura de arquivos de alterações em armazenamentos baseados em arquivo
- Quando você deseja carregar dados do Armazenamento de Blobs do Azure, Azure Data Lake Storage Gen2 ou Azure Data Lake Storage Gen1, o fluxo de dados de mapeamento oferece você com a oportunidade de obter arquivos novos ou atualizados com apenas um clique. É a maneira mais simples e recomendada para você obter carga delta desses armazenamentos baseados em arquivo no fluxo de dados de mapeamento.
- Você pode obter mais práticas recomendadas.
Ponto de verificação
Quando você habilita a captura de dados de alteração nativa ou as opções de extração incremental automática no fluxo de dados de mapeamento do ADF, o ADF ajuda você a gerenciar o ponto de verificação para garantir que cada execução de atividade lerá automaticamente apenas os dados de origem que foram alterados desde a última execução do pipeline. Por padrão, o ponto de verificação é associado ao seu pipeline e ao nome da atividade. Se você alterar o nome do pipeline ou da atividade, o ponto de verificação será redefinido, o que fará com que você comece do início ou receba alterações a partir de agora na próxima execução. Se você quiser alterar o nome do pipeline ou da atividade, mas ainda manter o ponto de verificação para obter os dados alterados da última execução automaticamente, use sua própria Chave de ponto de verificação na atividade de fluxo de dados para conseguir isso. A regra de nomenclatura de sua chave de ponto de verificação é a mesma de serviços vinculados, conjuntos de dados, pipelines e fluxos de dados.
Ao depurar o pipeline, esse recurso funcionará da mesma forma. O ponto de verificação será redefinido quando você atualizar seu navegador durante a execução de depuração. Depois que estiver satisfeito com o resultado do pipeline da sequência de depuração, você poderá publicar e disparar o pipeline. Ao disparar pela primeira vez o pipeline publicado, ele será reiniciado automaticamente do início ou passará a obter alterações desse momento em diante.
Na seção de monitoramento, sempre existe a possibilidade de reexecutar um pipeline. Ao fazer isso, os dados alterados sempre serão capturados do ponto de verificação anterior da sua versão de pipeline selecionada.
Tutoriais
A seguir estão os tutoriais para iniciar a captura de dados alterados no Azure Data Factory e no Azure Synapse Analytics.
- Tutorial CDC SAP no ADF
- Copiar dados de forma incremental de um armazenamento de dados de origem para um tutorial de armazenamento de dados de destino
Modelos
Veja a seguir os modelos para usar a captura de dados de alterações no Azure Data Factory e no Azure Synapse Analytics.