Биты и байты.

Биты и байты.

понедельник, 20 января 2014 г.

Запуск SSIS пакета из SQL и другие фичи SSIS 2012

Пришлось однажды, реализовывать в отчете SSRS механизм обновления SSAS куба,
Очевидным решением было запустить существующий SSIS пакет из процедуры,
оказывается парни из Microsoft подготовили несколько новых возможностей в SSIS 2012,которыми хочу с вами поделиться.
Прежде чем развертывать проекты на сервере служб Службы Integration Services, необходимо создать каталог SSISDB на этом сервере.
Программа установки SQL Server 2012 не создает этот каталог автоматически.
Его необходимо создать вручную, следуя приведенным ниже инструкциям


Затем развернуть пакет на сервере где установлен SQL, для этого в свойствах пакета Deployment указываем наш SQL сервер и жмем кнопку Deploy


Теперь мы можем запускать наш пакет из SQL скрипта, для этого используем две процедуры
[SSISDB].[catalog].[create_execution] (создать экземпляр выполнения SSIS)
[SSISDB].[catalog].[start_execution] (запустить экземпляр выполнения SSIS)

Ниже пример использования, название пакета, папки и проекта можно получить по скрипту


Также доступны стандартные отчеты,  для просмотра хода выполнения и статистики.


Ниже список всех новых возможностей SSIS 2012

Новая модель позволяет хранить в *.ispac файле, конфигурации,  соединения, пакеты

1. Поддержка ODBC, раньше приходилось подключать ODBC через ADO.NET провайдера
2. В плоских файлах txt, csv и тд.  может быть произвольное количество столбцов в строках, как пример
3.Поддержка технологии CDC (Change Data Capture) - захват измененных данных,
в SQL SERVER эта возможность была добавлена еще в 2008 версии, в SSIS появилась только сейчас.
4.Параметры ,окружения и конфигурации.
Создание конфигураций для проекта  DEV, PROD, TEST  для того чтобы развернуть пакет на разных серверах

Создавать окружения для выполнения пакетов PROD, DEV, TEST  и передавать параметры в пакет в зависимости от окружения

Настраиваем окружение для нашего пакета, добавляем конфигурацию
Настраиваем параметр пакета или соединение на переменную из конфигурации

При запуске пакета указываем нужную конфигурацию


5.Версионность пакетов, возможность  откатиться на предыдущую версию, чего раньше очень не хватало…


6.Просмотр текущих операций в каталоге Integration Services, достаточно правой кнопкой на каталоге SSISDB выбрать operations.

7.Отладка в Script Component, поддержка.Net 4.0

8. Управление через PowerShell,  появилась возможность легко проверять, разворачивать и запускать пакеты
Полноценная интеграция с PowerShell
Подробнее тут

9. Менеджер соединений,
Теперь можно создать соединение (connection) для всего проекта. Раньше приходилось копировать соединение из пакета в пакет.
Если нужно изменить имя сервера, то теперь не надо изменять все пакеты в проекте.
В дизайнере можно пометить соединение как «Work Offline», чтобы упростить отладку пакетов.
Также для соединений теперь поддерживаются параметры.

10. Поддержка Undo\Redo, до этой версии если вы что то удалили из пакета, приходилось заново это вводить руками.
Теперь SSIS Designer поддерживает до 20 операций undo\redo

11. Логическая группировка компонентов в дизайнере,
будет полезна для выделения отельных функциональных блоков в больших пакетах.

12. Новая функциональная возможность Data taps, короче говоря она позволяет в момент выполнения пакета 
любое движение данных перенаправить в текстовый файл , может быть использовано как дополнительное средство отладки  
и полезна для отладки на серверах с ограниченным доступом.
Для того чтобы воспользоваться этим функционалом нам понадобятся:


С помощью скриптов создаем захват данных и запускаем пакет на выполнение.


Ищем наш csv файл в папке:\Program Files\Microsoft SQL Server\110\DTS\DataDumps 
и радуемся что дамп снят успешно.
Подробнее о функциях Data Pump на MSDN

Кажется вот и все…. Ну а теперь дискотека)

Проститутка, запутавшаяся в проводах, помогла электрику снять напряжение.


About