Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Aplica-se a: SQL Server
SSIS Integration Runtime em Azure Data Factory
No tópico, Melhorar as Cargas Incrementais com Captura de Dados de Alteração, o diagrama ilustra um pacote básico que realiza uma carga incremental numa única tabela. No entanto, carregar uma tabela não é tão comum como ter de realizar uma carga incremental de múltiplas tabelas.
Quando se realiza uma carga incremental de múltiplas tabelas, alguns passos têm de ser feitos uma vez para todas as tabelas, e outros passos têm de ser repetidos para cada tabela de origem. Tem mais do que uma opção para implementar estes passos nos Serviços de Integração:
Use um pacote parental e pacotes filhos.
Use múltiplas tarefas do Fluxo de Dados num único pacote.
Carregamento de várias tabelas utilizando um pacote pai e vários pacotes subordinados
Pode usar um pacote pai para realizar essas etapas que só têm de ser efetuadas uma vez. Os pacotes filhos executarão as etapas que têm de ser executadas para cada tabela de origem.
Criar um pacote pai que execute esses passos que só precisam de ser feitos uma vez
Crie um pacote principal.
No fluxo de controlo, utilize uma tarefa Executar SQL ou expressões do Integration Services para calcular os pontos finais.
Para obter um exemplo de como calcular pontos finais, consulte Especificar um Intervalo de Dados de Alterações.
Se necessário, utilize um contentor For Loop para atrasar a execução até que os dados de alteração do período selecionado estejam prontos.
Para um exemplo de um contentor For Loop deste tipo, veja Determinar se os dados de alteração estão prontos.
Utilize múltiplas tarefas "Executar Pacote" para executar pacotes subordinados para cada tabela a carregar. Transfira os endpoints calculados no pacote pai para cada pacote filho, utilizando configurações de Variável do Pacote Pai.
Para mais informações, consulte Executar Tarefa de Pacote e Usar os Valores de Variáveis e Parâmetros num Pacote Filho.
Criar pacotes filhos para executar as etapas necessárias para cada tabela de origem
Para cada tabela fonte, crie um pacote filho.
No fluxo de controlo, use uma tarefa Script ou uma tarefa Execute SQL para montar a instrução SQL que será usada para consultar alterações.
Para um exemplo de como montar a consulta, veja Preparar para Consultar os Dados de Alteração.
Utilize uma única tarefa de Fluxo de Dados em cada pacote filho para carregar os dados de alteração e aplicá-los ao destino. Configure o Fluxo de Dados conforme descrito nos seguintes passos:
No fluxo de dados, utilize um componente de origem para consultar as tabelas de alterações relativamente às alterações compreendidas entre os extremos selecionados.
Para um exemplo de como consultar as tabelas de alteração, veja Recuperar e Compreender os Dados de Alteração.
Use uma transformação de Divisão Condicional para direcionar inserções, atualizações e eliminações para diferentes saídas para processamento adequado.
Para um exemplo de como configurar esta transformação para saída direta, veja Inserções, Atualizações e Eliminações de Processos.
Utilize um componente de destino para aplicar as inserções no destino. Utilize transformações Comando OLE DB com instruções parametrizadas UPDATE e DELETE para aplicar atualizações e eliminações ao destino.
Para um exemplo de como usar esta transformação para aplicar atualizações e eliminações, veja Aplicar as Alterações ao Destino.
Carregar múltiplas tabelas usando múltiplas tarefas de Fluxo de Dados num único pacote
Alternativamente, pode usar um único pacote que contenha uma tarefa Fluxo de Dados separada para cada tabela de origem a ser carregada.
Carregar múltiplas tabelas usando múltiplas tarefas do Fluxo de Dados num único pacote
Cria um único pacote.
No fluxo de controlo, utilize expressões Executar Tarefa SQL ou Serviços de Integração para calcular os endpoints.
Para um exemplo de como calcular pontos finais, consulte Especificar um Intervalo de Alteração de Dados.
Se necessário, use um contentor For Loop para atrasar a execução até que os dados de alteração para o intervalo selecionado estejam prontos.
Para um exemplo de um contentor For Loop deste tipo, veja Determinar se os dados de alteração estão prontos.
Use uma tarefa Script ou uma tarefa Execute SQL para montar a instrução SQL que será usada para consultar alterações.
Para um exemplo de como montar a consulta, veja Preparar para Consultar os Dados de Alteração.
Use múltiplas tarefas do Fluxo de Dados para carregar os dados de alteração de cada tabela de origem e aplicá-los ao destino. Configure cada tarefa do Fluxo de Dados conforme descrito nos passos seguintes.
Em cada fluxo de dados, utilize um componente fonte para consultar as tabelas de alterações para as alterações que se encontram nos endpoints selecionados.
Para um exemplo de como consultar as tabelas de alteração, veja Recuperar e Compreender os Dados de Alteração.
Use uma transformação de Divisão Condicional para direcionar inserções, atualizações e eliminações para diferentes saídas para processamento adequado.
Para um exemplo de como configurar esta transformação para saída direta, veja Inserções, Atualizações e Eliminações de Processos.
Utilize um componente de destino para aplicar as inserções ao destino. Utilize transformações de Comando OLE DB com instruções parametrizadas UPDATE e DELETE para aplicar atualizações e eliminações no destino.
Para um exemplo de como usar esta transformação para aplicar atualizações e eliminações, veja Aplicar as Alterações ao Destino.