SQL Server Integration Services (SSIS) — это удобная среда, входящая в состав MS SQL Server 2005 Business Intelligence, которая предназначена для разработки ETL — процессов.
Проекты Integrations Services хорошо интегрируются с другими средствами разработки SQL Server 2005 — Analysis Services (SSAS) и Reporting Services (SSRS).
В качестве источников и получателей данных могут выступать книги Excel, текстовые и XML файлы, а так же базы данных,
для которых реализован OLE DB провайдер. Для работы с данными Firebird и InterBase в среде Integration Services
необходимо воспользоваться компонентами OLE DB Source и OLE DB Destination, а так же установить IBProvider Professional Edition (32/64 bit).
Integration Services, помимо стандартных компонентов, позволяет разрабатывать собственные источники и получатели данных.
Подробнее о создании компонентов для SSIS читайте в статье
Повышение производительности с помощью нестандартных решений.
Запустите среду SQL Server Business Intelligence Development Studio и создайте новый проект Integration Services Project.
Перетащите на вкладку Control Flow компонент Data Flow Task. (см. Рисунок 3),
Будет создан новый поток данных. Далее переключитесь на вкладку Data Flow и перетащите с панели компонентов (Toolbox)
OLE DB Source (см. Рисунок 4). Далее необходимо настроить источник данных.
Существует несколько способов создания подключения к базе данных. Один из них — это воспользоваться менеджером подключений (Connection Manager).
Щелкните правой кнопкой мыши в менеджере подключений и выберите пункт меню New OLE DB Connection:
В открывшемся окне менеджера подключений OLE DB (см. Рисунок 6),
выберите существующее подключение или создайте новое.
При создании нового подключения откроется диалог, в котором в выпадающем списке необходимо выбрать
LCPI OLE DB Provider for InterBase [v3]
и нажать кнопку Data Links:
Запустится встроенный в IBProvider диалог настройки подключения OLE DB, в котором необходимо установить следующие обязательный параметры:
Full path to database file — соответствует параметру строки подключения Location.
User и Password.
Save password — разрешить сохранение пароля в тексте строки подключения.
Для импорта списка клиентов создадим источник данных, который загрузит таблицу CUSTOMERS.
Нажмите правой кнопкой мыши на компоненте OLE DB Source и выберите пункт меню Edit:
Откроется диалог настройки источника данных. В нем необходимо:
Выбрать подключение к базе данных.
Выбрать таблицу с данными (таблицу CUSTOMERS).
Настроить список возвращаемых полей, выбранной таблицы.
Для загрузки отчета о продажах настроим OLE DB Source так, чтобы он использовал данные SQL запроса.
Добавим новый компонент OLE DB Source в Data Flow и настроим его в соответствии с рисунком:
Запрос можно написать вручную или воспользоваться построителем запросов (Query Builder).
Для проверки синтаксиса нажмите кнопку Parse Query, Кнопка Preview покажет результат выполнения запроса.
В среде Integration Services реализовано достаточно много стандартных преобразователей.
Их рассмотрение выходит за рамки данной статьи, поэтому я приведу лишь результирующий поток данных:
Данные о клиентах и продажах загружаются из двух источников OLE DB Source — Customers List и Sales Report.
Далее они сортируются по полю CUST_NO при помощи двух компонентов Sort.
Предварительная сортировка требуется для компонента Merge (Merge customer countries and sales info).
В компоненте Merge данные из двух источников объединяются по полю CUST_NO.
В результрующее множество добавляются поля TOTAL_VALUE, DISCOUNT, ITEM_TYPE из отчета о продажах, а так же COUNTRY из списка клиентов:
Далее данные передаются компоненту Aggregate (Group by countries and items types),
который производит различные групповые операции над результирующим множеством:
Из рисунка следует, что сначала производится группировка по странам, далее по типу товара,
а так же определяется величина прибыли и число продаж по каждой стране. После этого компонент Sort сортирует данные
по величине прибыли и передает их виртуальному приемнику DataReaderDest. Результат обработки данных контролируется с
помощью средства Data Viewers:
Просмотром данных (DataViewers) удобно пользоваться для вывода промежуточных результатов и отладки SSIS пакета.
После выполнения пакета (F5), на экране появится окно с результатами обработки данных: