Главная » Microsoft SQL Server, Базы данных » Развертывание пакетов

0

Утилита Business Intelligence Development Studio является идеальной средой разработки и отладки пакетов службы интеграции, однако это не самое эффективное место выполнения пакетов. Не устанавливая пакет на сервер, его можно выполнить без дополнительной нагрузки среды разработки с помощью утилиты dtexec или dtexecui. Запустите утилиту dtexecui из командной строки и установите необходимые параметры выполнения, после чего либо щелкните на кнопке Execute, либо перейдите к странице Command Line, чтобы скопировать соответствующие переключатели командной строки утилиты dtexec.

Установка пакета на сервере назначения целесообразна тогда, когда пакет будет использоваться многократно. После установки пакет становится известен службе интеграции, которая может быть подключена к SQL Server Management Studio для мониторинга. Служба интеграции также кэширует компоненты, выполняемые в пакетах, для сокращения времени их загрузки.

Установка пакетов

Можно создать специальную утилиту развертывания, устанавливающую все пакеты проекта на сервере назначения. Эта утилита конфигурируется щелчком правой кнопкой мыши на проекте (а не на пакете) в Solution Explorer и выбором в контекстном меню пункта Properties. Перейдите на страницу Deployment Utility открывшегося диалогового окна и установите для параметра CreateDeploymentUtility значение True. Просмотрите настройки параметра DeploymentOutputPath, чтобы определить, где будет сохранен пакет установки, по отношению к каталогу проекта. Установка параметра AllowConfigurationChanges позволяет в процессе инсталляции изменять параметры конфигурации. Сохраните настройки, а затем выберите в меню пункт Build^Build имя_проекта. Пакет развертывания будет создан.

После создания утилиты развертывания подключитесь к серверу назначения и дважды щелкните на манифесте пакета (имя_проекта . SSISDeploymentManif est), чтобы установить пакеты на целевом сервере.

С помощью утилиты Management Studio можно установить на сервере и отдельные пакеты проекта. Подключитесь к целевому серверу, а затем в окне Object Explorer — к локальному экземпляру службы интеграции. В узле File System или MSDB щелкните правой кнопкой мыши и выберите в контекстном меню пункт Import Package. Отмечу, чтобы исходный пакет был сохранен либо в файле, либо в базе данных msdb SQL Server. Аналогичная функциональность доступна и в утилите командной строки dtutil.

Выполнение пакетов

После установки на сервере назначения пакет может быть запущен на выполнение несколькими способами.

?               Найдите установленный пакет в SQL Server Management Studio, щелкните на нем правой кнопкой мыши и выберите в контекстном меню пункт Run Package. В результате для выбранного пакета будет запущена утилита dt execui.

?               Запустите утилиту dt execui, которая позволит настроить целый ряд параметров выполнения пакета. Также она сформирует соответствующие переключатели командной строки для утилиты dtexec.

?               В определении задания службы SQL Server Agent создайте действие с типом SQL Server Integration Services Package и источником SSIS Package Store.

Выбор метода выполнения и места размещения пакета оказывает значительное влияние на производительность и отчетность. При использовании утилит dtexecui/dtexec можно снять нагрузку с текущего сервера баз данных, если перенести обработку на другой сервер или рабочую станцию. Эти варианты также по умолчанию предполагают словесную обратную связь во время выполнения, что очень полезно для отслеживания хода выполнения и осмысления ошибок. В то же время этот сценарий предполагает и значительные сетевые потоки. Например, загрузка последовательности файлов данных с файл-сервера на SQL Server через посредство рабочей станции удвоит нагрузку на сеть (так как файл должен вначале быть перемещен с файл-сервера на рабочую станцию и уже затем с рабочей станции на SQL Server) по сравнению с запуском пакета непосредственно на сервере баз данных.

Запуск пакета с помощью службы SQL Server Agent приведет к его выполнению непосредственно на сервере баз данных. Это минимизирует нагрузку на сеть, однако может вызвать проблемы, если SQL Server не имеет ресурсов, адекватных запросам пакета (в частности оперативной памяти). К тому же средства отчетности SQL Server Agent ограничены протоколированием, установленным в самом пакете. В данном случае протоколирование в пакете нужно настраивать со всей тщательностью, чтобы на выходе получить адекватную информацию для управления и отладки.

Источник: Нильсен, Пол. Microsoft SQL Server 2005. Библия пользователя. : Пер. с англ. — М. : ООО “И.Д. Вильямс”, 2008. — 1232 с. : ил. — Парал. тит. англ.

По теме:

  • Комментарии