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
Ao executar processos de integração de dados e ETL na nuvem, seus trabalhos podem ter melhor desempenho e ser mais eficazes quando você lê apenas 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 do pipeline principal, selecione Novo em Recursos de fábrica para criar uma nova Captura de dados de alteração. O recurso de fábrica do CDC fornece uma experiência de configuração passo a passo, onde você pode selecionar suas origens e destinos, aplicar transformações opcionais e, em seguida, selecionar iniciar para começar sua captura de dados. Com o recurso CDC, você não precisa projetar pipelines ou atividades de fluxo de dados. Você também será cobrado apenas por quatro núcleos de fluxos de dados de uso geral enquanto seus dados estiverem sendo processados. Você pode definir uma latência preferencial, que o ADF usa para despertar e procurar dados alterados. Essa verificação inicial é o único momento em que você é 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
O fluxo de dados de mapeamento do ADF pode detectar e extrair automaticamente dados alterados, incluindo linhas inseridas, atualizadas e excluídas 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. Ao encadear uma referência de transformação de origem e uma 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 sendo aplicadas automaticamente ao banco de dados de destino, para que você possa sincronizar facilmente os dados 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 da 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 mapeamento de fluxo de dados para consultar os dados delta em relação à coluna de registro de data e hora ou ID, e atividade de SP para gravar o novo valor da marca d'água de volta na sua tabela de controle externa para a próxima execução. Quando você deseja carregar novos arquivos somente de um repositório de armazenamento, você pode excluir os arquivos sempre que eles forem movidos para o destino com sucesso ou usar os nomes de pastas ou arquivos particionados por tempo 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 os armazenamentos do seu banco de dados não fizerem parte da lista de conectores do ADF com suporte nativo à 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 uma 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 a oportunidade de obter arquivos novos ou atualizados com apenas uma seleção. É a maneira mais simples e recomendada de obter carga delta desses armazenamentos baseados em arquivos no fluxo de dados de mapeamento.
- Você pode obter mais práticas recomendadas.
Ponto de verificação
Ao habilitar as opções de captura de dados de alterações nativas ou 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 automaticamente leia 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 o nome da atividade, mas ainda manter o ponto de verificação para obter dados alterados da última execução automaticamente, use sua própria chave de ponto de verificação na atividade de fluxo de dados para fazer isso. A regra de nomenclatura da sua própria chave de ponto de verificação é a mesma dos 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 é redefinido quando você atualiza o navegador durante a execução de depuração. Depois que estiver satisfeito com o pipeline que resultar da sequência de depuração, você poderá publicá-lo e dispará-lo. 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 execuçã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.