Contêineres do Integration Services
Se aplica a:SQL Server SSIS Integration Runtime no Azure Data Factory
Contêineres são objetos no SQL Server Integration Services que fornecem estrutura para pacotes e serviços para tarefas. Eles suportam fluxos de controle repetidos em pacotes e agrupam tarefas e contêineres em unidades significativas de trabalho. Os contêineres podem incluir outros contêineres além das tarefas.
As embalagens utilizam recipientes para os seguintes fins:
Repita tarefas para cada elemento de uma coleção, como arquivos em uma pasta, esquemas ou objetos SMO (SQL Server Management Objects). Por exemplo, um pacote pode executar instruções Transact-SQL que residem em vários ficheiros.
Repita tarefas até que uma expressão especificada seja avaliada como falso. Por exemplo, um pacote pode enviar uma mensagem de email diferente sete vezes, uma vez para cada dia da semana.
Agrupe tarefas e contêineres que devem ser bem-sucedidos ou falhar como uma unidade. Por exemplo, um pacote pode agrupar tarefas que excluem e adicionam linhas em uma tabela de banco de dados e, em seguida, confirmar ou reverter todas as tarefas quando uma falha.
Tipos de Contentores
O Integration Services fornece quatro tipos de contêineres para a criação de pacotes. A tabela a seguir lista os tipos de contêiner.
Contentor | Descrição |
---|---|
Contêiner de Ciclo Foreach | Executa um fluxo de controle repetidamente usando um enumerador. |
para contêiner de loop | Executa um fluxo de controle repetidamente testando uma condição. |
Contêiner de seqüência | Agrupa tarefas e contêineres em fluxos de controle que são subconjuntos do fluxo de controle do pacote. |
Contentor de Anfitrião de Tarefas | Fornece serviços para uma única tarefa. |
Pacotes e manipuladores de eventos também são tipos de contêineres. Para obter informações, consulte os Pacotes do Integration Services (SSIS) e os Manipuladores de Eventos do Integration Services (SSIS).
Resumo das propriedades do contêiner
Todos os tipos de contêiner têm um conjunto de propriedades em comum. Se você criar pacotes usando as ferramentas gráficas fornecidas pelo Integration Services, a janela Propriedades listará as seguintes propriedades para os contêineres Foreach Loop, For Loop e Sequence. As propriedades do contentor do anfitrião de tarefas são configuradas como parte da configuração da tarefa que o anfitrião de tarefas encapsula. Você define as propriedades do Host da Tarefa ao configurar a tarefa.
Propriedade | Descrição |
---|---|
DelayValidation | Um valor booleano que indica se a validação do contêiner está atrasada até o tempo de execução. O valor padrão para essa propriedade é False. Para obter mais informações, consulte DelayValidation. |
Descrição | A descrição do contentor. A propriedade contém uma cadeia de caracteres, mas pode estar em branco. Para obter mais informações, consulte Description. |
Desativar | Um valor booleano que indica se o contêiner é executado. O valor padrão para essa propriedade é False. Para obter mais informações, consulte Disable. |
DisableEventHandlers | Um valor booleano que indica se os manipuladores de eventos associados ao contêiner são executados. O valor padrão para essa propriedade é False. |
FalharPacoteAoFalhar | Um valor booleano que especifica se o pacote falha se ocorrer um erro no contêiner. O valor padrão para essa propriedade é False. Para obter mais informações, consulte FailPackageOnFailure. |
FailParentOnFailure | Um valor booleano que especifica se o contêiner pai falhará se ocorrer um erro no contêiner. O valor padrão para essa propriedade é False. Para obter mais informações, consulte FailParentOnFailure. |
"ForcedExecutionValue" | Se ForceExecutionValue estiver definido como True, será o objeto que contém o valor de execução opcional para o contentor. O valor padrão dessa propriedade é 0. Para obter mais informações, consulte ForcedExecutionValue. |
TipoValorExecuçãoForçada | O tipo de dados de ForcedExecutionValue. O valor padrão dessa propriedade é Int32. |
ResultadoExecuçãoForçada | Um valor que especifica o resultado forçado da execução do pacote ou contêiner. Os valores são Nenhum, Sucesso, Falhae Conclusão. O valor padrão para essa propriedade é Nenhum. Para obter mais informações, consulte ForceExecutionResult. |
ValorDeExecuçãoForçada | Um valor booleano que especifica se o valor de execução opcional do contêiner deve ser forçado a conter um valor específico. O valor padrão dessa propriedade é False. Para obter mais informações, consulte ForceExecutionValue. |
ID | O GUID do contêiner, que é atribuído quando o pacote é criado. Esta propriedade é somente leitura. ID. |
Nível de Isolamento | O nível de isolamento da transação de contêiner. Os valores são Não Especificado, Chaos, ReadUncommitted, ReadCommitted, RepeatableRead, Serializable, e Snapshot. O valor padrão dessa propriedade é Serializable. Para obter mais informações, consulte IsolationLevel. |
LocaleID | Uma localidade Win32 da Microsoft. O valor padrão dessa propriedade é a localidade do sistema operacional no computador local. Para obter mais informações, consulte LocaleID. |
ModoDeRegisto | Um valor que especifica o comportamento de log do contêiner. Os valores são Disabled, Enablede UseParentSetting. O valor padrão dessa propriedade é UseParentSetting. Para obter mais informações, consulte DTSLoggingMode. |
ContagemMáximaDeErros | O número máximo de erros que podem ocorrer antes que um contêiner pare de ser executado. O valor padrão dessa propriedade é 1. Para obter mais informações, consulte MaximumErrorCount. |
Nome | O nome do contêiner. Para obter mais informações, consulte Name. |
OpçãoTransação | A participação transacional do contêiner. Os valores são Não Suportado, Suportado, Obrigatório. O valor padrão dessa propriedade é Supported. Para obter mais informações, consulte DTSTransactionOption. |
Para saber mais sobre todas as propriedades disponíveis para os contêineres Foreach Loop, For Loop, Sequence e Task Host ao configurá-los programaticamente, consulte os seguintes tópicos da API do Integration Services:
T:Microsoft.SqlServer.Dts.Runtime.ForEachLoop
T:Microsoft.SqlServer.Dts.Runtime.ForLoop
T:Microsoft.SqlServer.Dts.Runtime.Sequence
T:Microsoft.SqlServer.Dts.Runtime.TaskHost
Objetos que estendem a funcionalidade do contêiner
Os contêineres incluem fluxos de controle que consistem em executáveis e restrições de precedência, e podem usar manipuladores de eventos e variáveis. O contêiner do host da tarefa é uma exceção: como o contêiner do host da tarefa encapsula uma única tarefa, ele não usa restrições de precedência.
Executáveis
Executáveis referem-se às tarefas de nível de contentor e a quaisquer contentores dentro do contentor. Um executável pode ser uma das tarefas e contêineres que o Integration Services fornece ou uma tarefa personalizada. Para obter mais informações, consulte Tarefas do Integration Services.
Restrições de precedência
As restrições de precedência vinculam contêineres e tarefas dentro do mesmo contêiner pai a um fluxo de controle ordenado. Para obter mais informações, consulte Restrições de precedência.
Manipuladores de eventos
Os manipuladores de eventos no nível do contêiner respondem a eventos gerados pelo contêiner ou pelos objetos que ele inclui. Para obter mais informações, consulte Manipuladores de Eventos do Integration Services (SSIS).
Variáveis
As variáveis usadas em contêineres incluem as variáveis de sistema no nível de contêiner que o Integration Services fornece e as variáveis definidas pelo usuário que o contêiner usa. Para obter mais informações, consulte Variáveis dos Serviços de Integração (SSIS).
Pontos de Interrupção
Quando você define um ponto de interrupção em um contêiner e a condição de quebra é Break quando o contêiner recebe o evento OnVariableValueChanged, defina a variável no escopo do contêiner.