SQLServer Integration Services (сокращенно SSIS) формально определяется как набор графических, консольных утилит и программных объектов, которые предназначены для извлечения, преобразования и консолидации данных из разнородных источников (MySQL, Oracle, Hadoop, XML, dbf, Excel, …).
В данной статье я перечислю TOP-10 (с моей точки зрения) полезностей, появившихся в версии 2012.
Я понимаю, что это звучит дико, но до версии SQL Server 2012 дизайнер пакетов не поддерживал операции undo\redo. Представьте, в Word вы удалили целый абзац и должны набрать его заново.
В SSIS Designer это было нормой. Если разработчик изменил форматирование или внес изменения в пакет, нет никакого способа отменить изменения. Более того, SSIS Designer автоматически сохранит все изменения (без каких-либо предупреждений), когда вы запустите пакет на выполнение.
Теперь SSIS Designer поддерживает до 20 операций undo\redo.
Появился набор хранимых процедур, позволяющий конфигурировать и выполнять пакеты с помощью T-SQL. Теперь SSIS стал еще ближе к базе данных. Можно создавать хранимые процедуры любой сложности. Например, выбирать данные из произвольной таблицы и передавать их различным пакетам в качестве параметров.
Теперь можно создать соединение (connection) для всего проекта. Раньше приходилось копировать соединение из пакета в пакет. Если нужно изменить имя сервера, то теперь не надо изменять все пакеты в проекте.
В дизайнере можно пометить соединение как «Work Offline», чтобы упростить отладку пакетов.
Также для соединений теперь поддерживаются параметры.
Еще один пряник — можно кэшировать данные в памяти в master-пакете и они будут доступны во всех дочерних пакетах.
Теперь нет необходимости использовать конфигурационные файлы или таблицы для того чтобы передать параметры в пакет. Разработчику теперь не нужно заботиться о группе конфигурационных файлов, которые живут отдельно от пакетов.
Теперь поддерживается импорт текстовых файлов с переменным количеством столбцов.
Также стали корректно импортироваться строки вида ‘What’’s new in SSIS’.
Настоящие разработчики дебагером не пользуется :)
Script Task и Script Component теперь поддерживают .Net 4.0
Также появилась возможность отладки в Script Component.
ODBC is dead?! ODBC живее всех живых!
Майкрософт теперь равняется на ODBC (де-факто стандарт для баз данных).
Справедливости ради надо сказать, что и раньше была поддержка ODBC через ADO.Net, но скорость такого соединения была очень низкой.
Приходилось ли вам когда-нибудь разбираться, почему SSIS-пакет вылетел с ошибкой или вместо 5 минут выполнялся 3 часа? Занятие, я вам скажу, не из приятных, копаться в текстовом файле логов размером в несколько мегабайт.
Теперь в SISS добавлены отчеты, позволяющие отследить ошибки или проблемы с производительностью.
Представьте Data Viewer: который можно добавить без изменения пакета; который может записать данные на диск, а не только отображать их на экране.
Теперь есть возможность отлаживать SSIS-пакеты в продакшн, даже без права на доступ к источнику данных.
В SSIS 2012 включена база данных SSISDB в которой хранится каталог SSISDB.
Каталог SSISDB служит центральным пунктом для работы с проектами служб SSIS 2012.
Объекты, которые хранятся в каталоге SSISDB, включают проекты, пакеты, параметры, среды и журнал операций.
Теперь достаточно сделать «backup» базы SSISDB стандартными средствами SQL Server.
В предыдущей версии SSIS пакеты также можно легко бэкапить, если они сохранены в системной базе msdb. Но файлы конфигурации, содержащиеся в пакетах, сохраняются в файловой системе. Эти файлы не копируются при создании резервной копии базы данных msdb.
В данной статье я перечислю TOP-10 (с моей точки зрения) полезностей, появившихся в версии 2012.
#1 Undo/Redo
Я понимаю, что это звучит дико, но до версии SQL Server 2012 дизайнер пакетов не поддерживал операции undo\redo. Представьте, в Word вы удалили целый абзац и должны набрать его заново.
В SSIS Designer это было нормой. Если разработчик изменил форматирование или внес изменения в пакет, нет никакого способа отменить изменения. Более того, SSIS Designer автоматически сохранит все изменения (без каких-либо предупреждений), когда вы запустите пакет на выполнение.
Теперь SSIS Designer поддерживает до 20 операций undo\redo.
#2 Конфигурирование и запуск пакетов из T-SQL
Появился набор хранимых процедур, позволяющий конфигурировать и выполнять пакеты с помощью T-SQL. Теперь SSIS стал еще ближе к базе данных. Можно создавать хранимые процедуры любой сложности. Например, выбирать данные из произвольной таблицы и передавать их различным пакетам в качестве параметров.
#3 Менеджер соединений (Connection Manager)
Теперь можно создать соединение (connection) для всего проекта. Раньше приходилось копировать соединение из пакета в пакет. Если нужно изменить имя сервера, то теперь не надо изменять все пакеты в проекте.
В дизайнере можно пометить соединение как «Work Offline», чтобы упростить отладку пакетов.
Также для соединений теперь поддерживаются параметры.
Еще один пряник — можно кэшировать данные в памяти в master-пакете и они будут доступны во всех дочерних пакетах.
#4 Параметры и окружение
Теперь нет необходимости использовать конфигурационные файлы или таблицы для того чтобы передать параметры в пакет. Разработчику теперь не нужно заботиться о группе конфигурационных файлов, которые живут отдельно от пакетов.
#5 – Улучшения для Flat File Source
Теперь поддерживается импорт текстовых файлов с переменным количеством столбцов.
Также стали корректно импортироваться строки вида ‘What’’s new in SSIS’.
#6 – Отладка в Script Component
Настоящие разработчики дебагером не пользуется :)
Script Task и Script Component теперь поддерживают .Net 4.0
Также появилась возможность отладки в Script Component.
#7 – Поддержка ODBC
ODBC is dead?! ODBC живее всех живых!
Майкрософт теперь равняется на ODBC (де-факто стандарт для баз данных).
Справедливости ради надо сказать, что и раньше была поддержка ODBC через ADO.Net, но скорость такого соединения была очень низкой.
#8 — Отчеты
Приходилось ли вам когда-нибудь разбираться, почему SSIS-пакет вылетел с ошибкой или вместо 5 минут выполнялся 3 часа? Занятие, я вам скажу, не из приятных, копаться в текстовом файле логов размером в несколько мегабайт.
Теперь в SISS добавлены отчеты, позволяющие отследить ошибки или проблемы с производительностью.
#9 – Data Taps
Представьте Data Viewer: который можно добавить без изменения пакета; который может записать данные на диск, а не только отображать их на экране.
Теперь есть возможность отлаживать SSIS-пакеты в продакшн, даже без права на доступ к источнику данных.
#10 – Резервное копирование
В SSIS 2012 включена база данных SSISDB в которой хранится каталог SSISDB.
Каталог SSISDB служит центральным пунктом для работы с проектами служб SSIS 2012.
Объекты, которые хранятся в каталоге SSISDB, включают проекты, пакеты, параметры, среды и журнал операций.
Теперь достаточно сделать «backup» базы SSISDB стандартными средствами SQL Server.
В предыдущей версии SSIS пакеты также можно легко бэкапить, если они сохранены в системной базе msdb. Но файлы конфигурации, содержащиеся в пакетах, сохраняются в файловой системе. Эти файлы не копируются при создании резервной копии базы данных msdb.