SSIS 2016 new features

В отличии от SSIS 2014, где не было вообще никаких улучшений,  SSIS 2016 порадовал внушительным набором новых фич. Особо углубляться в каждую из фич я не буду, в конце представлен материал для подробного изучения.

1. Поддержка AlwaysOn msdn

2. При обработке ошибок в потоке данных, к колонкам ErrorCode (определяет код ошибки) и ErrorColumn (определяет идентификатор колонки в пакете - lineage Id), добавились колонки ErrorDescription и ErrorColumnName. Из окна Data Viewer в режиме отладки эти колонки отображаются, правда разработчики почему-то не включили их в стандартный выход потока ошибок. Получить эти колонки можно через Script Component

В предыдущих версиях, чтобы получить эту информацию приходилось изрядно извращаться, чтобы получить по lineageId колонки её наименование. Приходилось парсить xml-файл с пакетом и получать маппинг колонок!!! Пример такого изврата.

3. Инкрементальное обновление пакетов, которое позволяет деплоить пакеты(один или несколько) отдельно от проекта. При этом пакет можно опубликовать как в текущий проект, так и отдельно (в новый проект).

4. В дефолтной поставке появились следующие компоненты:
- Balance Data Distributor (давно пора! равномерно делит входной поток на N потоков)
- Data Feed Publishsing (позволяет обращаться к результатам работы пакета через представление, предварительно настроив подключение линкед сервера к SSIS, msdn)
- Коннекторы для платформы Hadoop (для работы с HDFS, для запуска тасков в Pig и Hive, msdn )
- Коннекторы к сервисам Azure (необходимо установить Azure Feature Pack, msdn )
- Поддержка Excel 2016 и OData v4

5. Возможность создать свой собственный уровень логирования событий, очень тонко настроив необходимые статистики и события для логирования. При запуске пакета есть возможность выбрать тип логирования. Добавлен уровень логирования RuntimeLineage.

6. В дизайнере пакетов появился новый функционал, немного упрощающий разработку сложных проектов - Package parts - набор, компонентов потока управления, созданный для повторного использования в других пакетах, или по-другому, шаблон. При изменении шаблона он автоматически изменяется и в родительских пакетах, в которых он используется. При этом в родительском пакете нет возможности изменить package part. Сами шаблоны не публикуются на сервер, так как являются частью пакетов, в которых они используются.
7. Очень полезная фича - опция AutoAdjustBufferSize автоматически вычисляющая размер буфера для потока данных
8. Поддержка SSAS Tabular в компонентах процессинга
9. Добавили роли ssis_logreader - просмотр отчетов по запуску пакетов, ssis_monitor - внутренняя для AlwaysOn

Полезные ссылки:
1. TechNet Virtual Lab: Exploring What's New in SQL Server 2016 Integration Services
2. MSDN. What's New in Integration Services
3. Reuse Control Flow across Packages by Using Control Flow Package Parts
4. Data Flow Performance Features
5. Operationalize your machine learning project using SQL Server 2016 SSIS and R Services
6. What's New in SQL Server Integration Services 2016 - Part 1What's New in Integration Services 2016 - Part 2
7. Improving data flow performance with SSIS AutoAdjustBufferSize property
8. Презентация