Integration Services для формирования хранилищ данных

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

Для решения перечисленных задач служит компонент SQL Server Integration Services, позволяющий интегрировать и преобразовывать данные. В число возможностей компонента входит копирование и загрузка файлов, отправка сообщений электронной почты как реакция на события, обновление хранилища данных, вызов процедур очистки и исследования данных, управление объектами и данными в базе данных SQL Server.

Загрузка данных в хранилище данных и формирование аналитических моделей

В классическом варианте данные сначала выгружаются (как правило, без преобразований) из источников данных в отдельную базу — промежуточную область. Далее при загрузки данных из этой области в хранилище данных данные уже значительно преобразуются и переводятся в специальную схему хранения (в итоге процесс преобразования не замедляет исходные базы). При необходимости (например, для увеличения скорости последующего извлечения) части данных переводятся в «витрины данных» (как правило, базы в схеме «звезда»). Из витрин и/или хранилища данных формируются (обновляются) аналитические модели.

Классический вариант загрузки данных в ХД, формирования витрин и аналитических моделей

Противоположный подход – формировать многомерную аналитическую модель напрямую из источника (если это SQL Server) с помощью функции «проактивного кэширования». Соответственно, между этими двумя противоположными вариантами существует множество промежуточных решений. Дополнительно проекты формирования хранилища данных могут быть дополнены функциями интеграции с системой управления нормативно-справочной информацией (НСИ) и функциями очистки данных.

Графическая разработка интеграционных пакетов

Интеграционные решения разрабатываются в программе SQL Server Data Tools (SSDT; расширение среды разработки Visual Studio). С помощью этой среды разработчики могут совместно создавать интеграционные проекты используя специальную графическую нотацию. Благодаря этой нотации проекты являются само-документируемыми; в итоге значительно уменьшаются затраты и увеличивается скорость сопровождения и внесения изменений в проекты.

Структура интеграционного проекта

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

Алгоритм работы пакета отражен в управляющем потоке, который содержит в себе задачи (в том числе, задачи выполнения других пакетов) и контейнеры (в том числе контейнерами последовательностей и циклов), которые могут быть соединены связями очередности.

Поток данных – это особый вид задачи в потоке управления, предназначенный для извлечения данных из источников (через адаптеры чтения), а затем преобразования и загрузки данных в целевые базы (например, в хранилище данных; через адаптеры записи). В число преобразований входит комбинирование данных через joins, unions и т.д.; проверка данных через правила, сопоставления, оценку качества; преобразование данных в целевой формат.

Поток данных в составе потока управления интеграционного проекта. Источник - Microsoft

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

Размещение и администрирование

Разработанное интеграционное решение размещается в каталоге SSIS в виде модели проекта (.ispac). Для администрирования проектов, задания расписания выполнения пакетов, запуска пакетов с параметрами, формирования отчетности о результатах выполнения пакетов и т.д. используется SQL Server Management Studio (SSMS).

Журналирование работы интеграционных пакетов

В SQL Server 2012 встроена функция журналирования работы интеграционных пакетов и на базе журнала построены стандартные отчеты. В отчете верхнего уровня (All Executions report) можно посмотреть историю запусков каждого конкретного пакета (успешность, расположение, время начала и окончания, продолжительность). Через гиперссылки каждый запуск пакета можно детализировать вплоть до уровня конкретного события (в том числе можно посмотреть диагностические сообщения и значения переменных в момент возникновения события).

Отчет производительности запусков (Execution Performance report) отображает график изменения продолжительности времени работы пакета.

Фрагмент отчета о производительности интеграционного пакета

Также предусмотрен отчет со статистикой всех запусков всех пакетов (Dashboard report) и аналогичной возможностью детализации.

Демонстрация SSIS (разработка, размещение и администрирование)

Дополнительные материалы

  1. TechEd 2011 North America. DBI317. What’s New in Microsoft SQL Server Code-Named “Denali” for SQL Server Integration ServicesWhat’s New in Microsoft SQL Server Code-Named “Denali” for SQL Server Integration ServicesWhat’s New in Microsoft SQL Server Code-Named “Denali” for SQL Server Integration ServicesWhat’s New in Microsoft SQL Server Code-Named “Denali” for SQL Server Integration Services
  2. TechEd Australia 2011. DAT307DAT307. Denali SSIS and Data Quality Enhancements
  3. MSDN Library. SQL Server Integration Services
  4. SQLCAT. SSIS 2008 — world record ETL performance

Встреча Russian BI PASS Chapter в московском технологическом центре Майкрософт

В четверг, 27 сентября 2012 года в 19:30  в Московском технологическом центре Майкрософт состоится очередная встреча Russian BI PASS Chapter.

Докладчик: Сергей Олонцев.

Доклад: «Change data capture, change tracking и инкрементальная загрузка данных в хранилище с помощью SSIS 2012»

Ссылка для регистрации: http://www.facebook.com/events/271619339622186/

Место проведения:
Москва, ул. Лесная, 5С, 6 этаж, аудитория «Арсенальная».
При себе необходимо иметь паспорт.

Карта: http://maps.yandex.ru/-/CVqYQLK9

Microsoft BI для SAP R/3 и SAP NetWeaver BI (BW)

Последнее обновление: 06.06.2011

Обзор вариантов интеграции

Существует несколько вариантов интеграции SAP R/3 или SAP NetWeaver BI (BW) для анализа данных из SAP с помощью инструментов анализа Microsoft BI.

Вот эти варианты:

  • извлечение данных из SAP NetWeaver BI;
  • извлечение данных из SAP R/3;
  • прямое подключение к SAP NetWeaver BI.

Далее мы рассмотрим эти три варианта интеграции и существующие партнерские решения.

Извлечение данных из SAP NetWeaver BI

Для извлечения данных из SAP NetWeaver BI в базу данных SQL Server с помощью SSIS используется SAP Open Hub Service (OHS).

Далее для построения аналитических кубов используется SQL Server Analysis Services. Таким образом, данные из SAP NetWeaver BI могут быть проанализированы с помощью полного набора инструментов анализа Microsoft BI.

Извлечение данных из SAP NetWeaver BI

Вариант извлечения данных из  SAP NetWeaver BI позволяет решить следующие задачи:

  1. Стандартные кубы SAP BW могут быть повторно  использованы для отображения в инструментах анализа Microsoft BI.
  2. Обеспечивается большая гибкость использования других источников данных помимо SAP, т.к. в Integration Services можно настроить объединение данных из этих источников и из SAP.
  3. Решение позволяет использовать любые инструменты анализа, работающие над аналитическими кубами SSAS, как  стандартные инструменты Microsoft, так и клиентские BI-инструменты сторонних разработчиков.

Вариант интеграции характеризуется следующими особенностями:

  1. Open Hub Services (OHS) не поддерживает извлечение иерархий BW. Для решения этой задачи требуется использовать ABAP-отчеты.
  2. Настройки системы безопасности SAP используются только во время экспорта данных из SAP NetWeaver BI. Дополнительно необходимо произвести настройки безопасности в Analysis Services.
  3. Клиент должен иметь лицензию SAP OHS.

Дополнительные материалы по извлечению данных из SAP NetWeaver BI:

Извлечение данных из SAP R/3

Для извлечения данных напрямую из SAP R/3 в хранилище данных SQL Server используется Integration Services и Microsoft .Net Provider для SAP mySAP Business Suite.

Для построения аналитических кубов используется SQL Server Analysis Services, следовательно, данные из SAP R/3 могут быть проанализированы с помощью полного набора инструментов анализа Microsoft BI.

Извлечение данных из SAP R/3

Вариант извлечения данных из  SAP R/3 позволяет решить следующие задачи:

  1. Вариант является полной альтернативой SAP NetWeaver BI (BW) и, следовательно, не требует лицензий SAP BW.
  2. Аналогично предыдущему варианту обеспечивается большая гибкость использования других источников данных помимо SAP, т.к. в Integration Services можно настроить сопоставление данных из этих источников и из SAP.
  3. Аналогично предыдущему варианту решение позволяет использовать любые инструменты анализа, работающие над аналитическими кубами SSAS, как  стандартные инструменты Microsoft, так и клиентские BI-инструменты сторонних разработчиков.
  4. В данном варианте используются более производительный механизм ETL и среда разработки кубов.

Вариант интеграции характеризуется следующими особенностями:

  1. В данном варианте нет доступа к бизнес-объектам SAP NetWeaver BI (BW).
  2. Аналогично предыдущему варианту настройки системы безопасности SAP используются только во время экспорта данных из SAP NetWeaver BI. Дополнительно необходимо произвести настройки безопасности в Analysis Services.

Прямое подключение к SAP NetWeaver BI

Reporting Services и Excel/Excel Services можно использовать как клиентские инструменты анализа, использующие данные напрямую из SAP NetWeaver BI.

Reporting Services для доступа к данным SAP NetWeaver BI использует Microsoft .Net Provider for SAP NetWeaver Business Intelligence. Сводные таблицы (Pivot tables) в Excel подсоединяются к SAP NetWeaver BI (BW) через протокол OLE DB для OLAP (ODBO).

Прямое подключение к SAP NetWeaver BI

Вариант прямого подключения к SAP NetWeaver BI позволяет решить следующие задачи:

  1. Используется отчетность SAP BW.
  2. Используются настройки безопасности SAP. Не требуется создавать дополнительный уровень безопасности.
  3. В качестве средства создания отчетов на базе SAP BI можно использовать Report Builder 2.0 и 3.0.

Вариант интеграции характеризуется следующими особенностями:

  1. Для формирования отчетов поддерживаются только объекты InfoCube, QueryCube и Multiprovider.
  2. Объекты ODS могут быть отображены через объекты QueryCube.

Дополнительные материалы по подключению к SAP NetWeaver BI:

Дополнительные возможности

Компонент Reporting Services позволяет использовать данные SAP в виде потоков данных  «ATOM» (ATOM data feeds). Эти потоки данных можно использовать как источник данных в PowerPivot для Excel 2010 или SharePoint 2010, что является функцией самостоятельного анализа (Self Service BI).

Партнерские решения

Theobald Software Xtract IS

Партнерский набор компонентов Theobald Software Xtract IS предлагает девять SSIS для предоставления всех видов взаимодействия с SAP. В результате применения решения вы можете разрабатывать потоки данных SSIS с помощью графического редактора с учетом применением настроек безопасности и безопасных типов данных.

 Theobald Software Xtract IS

В состав решения входят следующие компоненты:

  • Xtract IS Table- извлекает данные из таблицы;
  • Xtract IS Query – извлекает запросы SAP;
  • Xtract IS BAPI – вызывает функциональные модули RFC и может выступать в роли источника, приемника или преобразования (transformation);
  • Xtract IS BW Cube – извлекает запросы и кубы SAP NetWeaver BI (BW);
  • Xtract IS OHS – использует Open Hub Services для извлечения кубов SAP NetWeaver BI (BW), объектов ODS, InfoObjects и так далее;
  • Xtract IS Hierarchy — извлекает иерархии BW / BI;
  • Xtract IS BW Loader – может быть использован для загрузки атрибутов, текста и данных транзакций в SAP BW;
  • Xtract IS Report – позволяет использовать существующие ABAP –отчеты или ABAP-программы как источники данных в пределах потока данных SSIS;
  • Xtract IS DeltaQ – использует « BW extractor API» для извлечения данных из системы R/3 используя дельта-механизмы.

Подробнее: http://www.theobald-software.com/en/products/xtractis.htm

 Theobald Software Xtract PPS (PerformancePoint Services)

 Theobald Software Xtract PPS позволяет интегрировать все виды данных SAP R/3 и SAP NetWeaver BI (BW) в Microsoft SharePoint PerformancePoint Services. Компонент предоставляет доступ к таблицам SAP, запросам, BAPI, RFC и кубам BW.

Theobald Software Xtract PPS

ERP-Link iNET.BI

ERP-Link iNET.BI предоставляет ROLAP-куб SSAS для всех инструментов анализа данных Microsoft BI для анализа данных из SAP BW. Решение не требует какой-либо репликации данных.

ERP-Link iNET.BI

Подробнее: http://www.erplink.com/html/product/product-overview-iNetBI.asp

Прочие партнерские решения

Ниже приведены ссылки на другие партнерские решения по интеграции с SAP:

 Заключение

Итак, мы рассмотрели несколько вариантов интеграции Microsoft BI с SAP R/3 или SAP NetWeaver BI (извлечение данных из SAP NetWeaver BI, извлечение данных из SAP R/3 и прямое подключение к SAP NetWeaver BI), а также привели сведения о существующих партнерских решениях.

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

  1. Какой процент из кубов SAP NetWeaver BI является нестандартными кубами?
  2. На сколько процентов каждый модуль SAP R/3 доработан (присутствует нестандартный для SAP R/3 функционал)?
  3. Планируется ли использовать в отчетах данные из SAP наравне с данными из других источников? Что это за источники?
  4. Насколько хорошо разработчики знают структуру реляционных таблиц SAP R/3?
  5. Сколько в среднем уходит времени на создание дополнительного отчета в SAP NetWeaver BI?
  6. Есть ли небходимость, чтобы пользователи могли самостоятельно создавать регламентированную отчетность и/или отчеты в Excel?
  7. Какая задержка приемлема между моментом, когда данные появились в SAP R/3 и моментом, когда они стали доступны в инструментах анализа Microsoft BI?

После анализа ответов на эти вопросы необходимо рассмотреть плюсы и минусы перечисленных решений, чтобы выбрать оптимальный вариант.

Дополнительная информация

Примеры интеграции Microsoft BI и SAP

Глоссарий

SAP BW (Business Information Warehouse) = SAP NetWeaver BI (Business Intelligence)

ABAP (Advanced Business Application Programming, originally Allgemeiner Berichts-Aufbereitungs-Prozessor, German for «general report creation processor») is a very high level programming language created by the German software company SAP. It is currently positioned, alongside the more recently introduced Java, as the language for programming SAP’s Web Application Server, part of its NetWeaver platform for building business applications. Its syntax is somewhat similar to COBOL (источник – http://www.wikipedia.org).