Контейнеры служб Integration Services

Применимо к: SQL Server Integration Runtime служб SSIS в Фабрика данных Azure

Контейнеры в службах SQL Server Службы Integration Services представляют собой объекты, содержащие структуру пакетов и службы для задач. Они поддерживают повторение потоков управления в пакетах, а также группируют задачи и контейнеры в единые рабочие объекты. Кроме задач контейнеры могут включать другие контейнеры.

Пакеты используют контейнеры для следующих целей.

  • Повторение задач для каждого элемента коллекции: файлов, папок, схем или управляющих объектов SQL Server (SMO). Например, пакет может выполнять инструкции Transact-SQL, размещенные в нескольких файлах.

  • Повторение задач до тех пор, пока значение определенного выражения не будет равно false. Например, пакет может посылать разные сообщения по электронной почте семь раз, один раз в каждый день недели.

  • Группирование задач и контейнеров, успешное или аварийное выполнение которых учитывается как для единого объекта. Например, пакет может группировать задачи, удаляющие и добавляющие строки в таблице базы данных, а затем фиксировать их или же производить откат всех задач в случае сбоя одной из них.

Типы контейнеров

Службы Integration Services поддерживают четыре типа контейнеров для построения пакетов. В следующей таблице перечислены типы контейнеров.

Контейнер Описание
Контейнер «цикл по каждому элементу» Повторяет запуск потока управления для каждого элемента, используя перечислитель.
Контейнер «цикл по элементам» Повторяет запуск потока управления с проверкой условия.
контейнер последовательности Группирует задачи и контейнеры в потоки управления, являющиеся частью потока управления пакета.
контейнер «Сервер задач» Обеспечивает поддержку служб для отдельной задачи.

Пакеты и обработчики событий также являются типами контейнеров. Дополнительные сведения см. в разделах Пакеты Integration Services (SSIS) и Обработчики событий Integration Services (SSIS).

Сводка свойств контейнера

Все типы контейнеров имеют набор общих свойств. При создании пакетов с помощью графических средств, предоставляемых службами Службы Integration Services , в окне «Свойства» перечисляются следующие свойства контейнеров «цикл по каждому элементу», «цикл по элементам» и контейнеров последовательности. Настройка свойств контейнера сервера задач является частью настройки задачи, которую инкапсулирует сервер задач. При настройке задачи настраиваются и свойства сервера задачи.

Свойство Description
DelayValidation Логическое значение, указывающее, откладывается ли проверка контейнера до времени выполнения. Значение этого свойства по умолчанию — False.

Для получения дополнительной информации см. DelayValidation.
Описание Описание контейнера. Свойство содержит строку, но может быть пустым.

Для получения дополнительной информации см. Description.
Отключено Логическое значение, указывающее, запущен ли контейнер. Значение этого свойства по умолчанию — False.

Для получения дополнительной информации см. Disable.
DisableEventHandlers Логическое значение, указывающее, связаны ли обработчики событий с запуском контейнера. Значение этого свойства по умолчанию — False.
FailPackageOnFailure Логическое значение, указывающее, завершается ли работа пакета с ошибкой в случае ошибки в контейнере. Значение этого свойства по умолчанию — False.

Для получения дополнительной информации см. FailPackageOnFailure.
FailParentOnFailure Логическое значение, указывающее, завершается ли работа родительского контейнера с ошибкой в случае ошибки в контейнере. Значение этого свойства по умолчанию — False.

Для получения дополнительной информации см. FailParentOnFailure.
ForcedExecutionValue Если свойство ForceExecutionValue равно True, объект содержит необязательное значение выполнения для контейнера. Значение этого свойства по умолчанию равно 0.

Для получения дополнительной информации см. ForcedExecutionValue.
ForcedExecutionValueType Тип данных ForcedExecutionValue. Значение по умолчанию этого свойства равно Int32.
ForceExecutionResult Значение, определяющее вынужденный результат запуска пакета или контейнера. Допустимые значения: None, Success, Failureи Completion. Значение этого свойства по умолчанию — None.

Для получения дополнительной информации см. ForceExecutionResult.
ForceExecutionValue Логическое значение, указывающее, должно ли необязательное значение выполнения для контейнера содержать конкретное значение. Это свойство имеет значение по умолчанию False.

Для получения дополнительной информации см. ForceExecutionValue.
Идентификатор Идентификатор GUID контейнера, назначаемый ему при создании пакета. Это свойство доступно только для чтения.

ID.
IsolationLevel Уровень изоляции транзакции контейнера. Допустимые значения — Unspecified, Chaos, ReadUncommitted, ReadCommitted, RepeatableRead, Serializableи Snapshot. Значение по умолчанию этого свойства равно Serializable. Для получения дополнительной информации см. IsolationLevel.
LocaleID Локаль Microsoft Win32. Значение этого свойства по умолчанию равно локали операционной системы на локальном компьютере.

Для получения дополнительной информации см. LocaleID.
LoggingMode Значение, определяющее для контейнера режим записи в журнал. Допустимые значения — Disabled, Enabledи UseParentSetting. Значение по умолчанию этого свойства равно UseParentSetting. Дополнительные сведения см. в разделе DTSLoggingMode.
MaximumErrorCount Максимальное число ошибок, после достижения которого выполнение контейнера прекращается. Значение этого свойства по умолчанию равно 1.

Для получения дополнительной информации см. MaximumErrorCount.
имя; Имя контейнера.

Дополнительные сведения см. в разделе Name.
TransactionOption Участие контейнера в транзакции. Допустимые значения — NotSupported, Supported, Required. Значение по умолчанию этого свойства равно Supported. Дополнительные сведения см. в разделе DTSTransactionOption.

Чтобы узнать о всех свойствах, доступных для контейнеров «цикл по каждому элементу», «цикл по элементам», контейнеров последовательности и сервера задач при настройке свойств программно, см. следующие разделы по API-интерфейсу служб Службы 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

Объекты, расширяющие функциональные возможности контейнеров

Контейнеры включают в себя потоки управления, которые состоят из исполняемых объектов и ограничений очередностью, а также могут использовать обработчики событий и переменные. Контейнер сервера задач является исключением из правила: так как он инкапсулирует единственную задачу, не используется никаких элементов управления очередностью.

Исполняемые объекты

Исполняемыми объектами называются задачи уровня контейнера, а также любые контейнеры внутри контейнера. Исполняемый объект может быть одной из задач или одним из контейнеров, изначально включенных в службы Службы Integration Services , либо пользовательской задачей. Дополнительные сведения см. в разделе Integration Services Tasks.

Управление очередностью

Элементы управления очередностью связывают контейнеры и задачи из одного родительского контейнера в упорядоченный поток управления. Дополнительные сведения см. в статье Precedence Constraints.

Обработчики событий

Обработчики события на уровне контейнера реагируют на события, инициируемые контейнером или объектами, содержащимися в нем. Дополнительные сведения см. в разделе Обработчики событий Integration Services (SSIS).

Переменные

Переменные, используемые в контейнерах, включают системные переменные уровня контейнера, предоставляемые службами Службы Integration Services , а также пользовательские переменные, используемые контейнером. Дополнительные сведения см. в статье Переменные в службах Integration Services (SSIS).

Точки останова

Если задается точка останова в контейнере и условием останова является Приостановить выполнение при получении контейнером события OnVariableValueChanged, определите переменную в области контейнера.

См. также

Поток управления