Введение

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

Для этих целей применяют системы Business Intelligence. Они строятся на базе многомерных хранилищ данных. Над хранилищем данных надстраиваются средства OLAP (online analytical processing), средства интеллектуального анализа данных, средства статистического анализа данных. Сегодня системы, основанные на хранилищах данных, очень распространены и применяются практически в любой крупной компании.

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

Ведется разработка портала BiP, отличительными особенностями которого являются:

  • поддержка многомерной модели данных;
  • предоставление доступа пользователей к данным из множества различных гетерогенных источников;
  • возможность аналитической обработки данных;
  • возможность составления аналитических отчетов;
  • полная поддержка процесса KDD (Knowledge Discovery in Databases);
  • упрощенная разработка ETL-процессов;
  • выгрузка данных в любых форматах;
  • представление BI платформы как сервиса.

Комплекс BiP предназначен для бизнес-пользователей, которые заинтересованы в получении аналитических отчетов, основанных на актуальных данных, через web-портал, не нуждаясь при этом в установке и настройке BI систем, а также для аналитиков, которые нуждаются в доступных инструментах для анализа данных (доступных в плане стоимости, простоты подключения источников и анализа).

Основным конкурентом портала является система Knoema [34], т.к. она реализует сходный функционал: загрузку данных из предопределенных источников, агрегацию и визуальное представление данных в виде таблиц, графиков и диаграмм. Но эта система не ориентируется на аналитиков, которым необходим расширяемый набор источников данных.

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

Обзор существующих решений ETL

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

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

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

На данный момент существует несколько коммерческих инструментов, которые поддерживают процесс ETL для хранилищ данных на комплексном уровне:

  • CopyManager (Information Builders);
  • Datastage (Informix/Ardent);
  • Extract (ETI);
  • Powermart (Informatica);
  • Decisionbase (CA/Platinum);
  • DataTransformationService (Microsoft);
  • Metasuite (Minerva/Carleton);
  • Sagent Solution Platform (Sagent) ;
  • Informatica PowerCenter;
  • Oracle Data Integrator;
  • SAP BusinessObjects Data Integrator;
  • SAS Data Integration Server.

Эти инструменты используют репозиторий в СУБД для единообразного управления всеми метаданными. Схемы и данные извлекаются из оперативных источников данных как через собственный файл и шлюзы СУБД DBMS, так и через стандартные интерфейсы ODBC и EDA. Преобразования данных определяются через простой графический интерфейс.

Для определения индивидуальных шагов проецирования обычно существует собственный язык правил и комплексная библиотека предопределенных функций преобразования. Эти средства поддерживают и повторное использование существующих решений, например, внешних процедур C/C++. Процесс преобразования выполняется либо системой, интерпретирующей специфические преобразования в процессе работы, либо откомпилированным кодом. Все средства на базе системы (например, CopyManager, Decisionbase, Powermart, Datastage, WarehouseAdministrator), имеют планировщик и поддерживают технологические процессы со сложными зависимостями выполнения между этапами преобразования.

Средства ETL обычно содержат мало встроенных возможностей очистки, но позволяют пользователю определять функциональность очистки через собственный API. Как правило, анализ данных для автоматического выявления ошибок и несоответствий в данных не поддерживается. Тем не менее, пользователи могут реализовывать такую логику при работе с метаданными и путем определения характеристик содержимого с помощью функций агрегации (sum, count, min, max, median, variance, deviation). Поставляемая библиотека преобразований отвечает различным потребностям преобразования и очистки – например, конверсию типов данных (в частности, переформатирование данных), строковые функции (расщепление, слияние, замена, поиск по подстроке), арифметические, научные и статистические функции и т.д. Извлечение значений из атрибутов свободного формата автоматизировано не полностью, и пользователю приходится определять разделители, разграничивающие фрагменты значений.

Языки правил обычно охватывают конструкции if-then и case, способствующие обработке исключений в значениях данных, – неверных написаний, аббревиатур, утраченных или зашифрованных значений и значений вне допустимого диапазона. Эти проблемы могут также решаться с помощью функциональных возможностей по выборке данных из таблиц. Поддержка согласования элементов данных обычно ограничена использованием возможностей объединения и нескольких простых строковых функций соответствия, например точного или группового соответствия. Тем не менее, определенные пользователем функции соответствия полей, так же как и функции корреляции сходства полей, могут программироваться и добавляться во внутреннюю библиотеку преобразований.

CopyManager

CopyManager поддерживает широкий спектр источников данных, имеет высокую производительность. Имеется интуитивно понятный графический интерфейс. Предоставляет возможности планирования и сервисы трансформации данных. Для задания сложных трансформаций используется встроенный язык 3GL. Основным недостатком является тот факт, что может работать только с одним источником одновременно. Возможности помощи при настройке на источник отсутствуют.

С точки зрения открытых систем CopyManager является расширяемой системой за счет встроенного языка программирования, масштабируемой системой, переносимой системой, т.к. поддерживает все современные ОС (Linux, Mac-OSX, Windows, AIX, Unix), поддерживающей большинство форматов источников данных, а также имеющей дружелюбный пользовательский интерфейс [3].

Extract

Extract (ETI), используя метаданные об источнике и системе приемнике, генерирует нативный код для выполнения загрузки и трансформаций данных. Имеет децентрализованную архитектуру, т.е. исключает необходимость в центральном вычислительном сервере, который выполняет преобразования. Является переносимым. Поддерживаются платформы Windows, AIX, Unix, Solaris, HPUX и др. Решение может масштабироваться от персонального компьютера до мэйнфреймов. Модель генерации кода позволяет организовать процесс ETL, используя языки C, Cobol, Java или SQL. Может запускаться как в плановом режиме, так и вручную. Extract имеет встроенную поддержку Oracle, DB2, Teradata, SQL Server, а также может быть расширен для поддержки других источников данных. Пользователю предоставляется клиент с графическим интерфейсом. Для использования одного кода в нескольких проектах поддерживается концепция шаблонов [4].

Итак, ETI Extract является переносимой, расширяемой системой. Имеет графический пользовательский интерфейс для помощи в описании процедур загрузки и трансформации. Поддерживает разные источники данных. Список источников и трансформаций может быть расширен благодаря нескольким языкам программирования.

DataStage

IBM WebSphere DataStage – основной компонент IBM WebSphere Data Integration Suite. Он является одним из наиболее мощных средств визуального проектирования ETL-процедур и их выполнения, позволяющее разработчику в графическом виде описывать преобразование данных.

В рамках одного задания IBM WebSphere DataStage позволяет работать с самыми разнообразными форматами данных: текстовые файлы, сложные структуры XML-данных, системы корпоративных приложений, включая SAP, Siebel, Oracle и PeopleSoft, почти все базы данных, включая такие многораздельные базы данных, как Oracle, IBM DB2 Universal Database (с функцией разбиения данных на разделы или без нее), IBM Informix, Sybase, Teradata и Microsoft SQL Server, Web-службы, SAS, службы сообщений и продукты для интеграции корпоративных приложений, включая WebSphere MQ и SeeBeyond и многие другие [5].

WebSphere DataStage обеспечивает всеобъемлющий набор функций подключения для удобного и быстрого доступа к любой исходной системе или системе назначения. Присутствуют специальные средства построения Хранилищ Данных (DataStage) [5]:

  • множественность источников данных;
  • прямой доступ к основным СУБД;
  • удобство пользования;
  • широкие возможности трансформации и очистки (более 120 встроенных функций);
  • интеграция с операционной системой;
  • возможность работы с плоскими файлами;
  • тиражируемость;
  • высокая производительность.

Рассмотренная система является довольно гибкой за счет использования собственного языка, но в системе отсутствует возможность автоматического проецирования, а также настройка средств ETL требует изучения специальных языков, что может оказаться неприемлемым для пользователя [6].

В рассмотренных выше системах большое внимание уделено производительности и масштабируемости. Есть поддержка различных структурированных и неструктурированных источников данных.

Informatica PowerCenter и PowerMart

Некоторые средства являются очень гибкими за счет программирования. Например, в InformaticaPowerCenter иInforamticaPowerMart языком разработки является Java. Informatica PowerMart поддерживает структурированные, неструктурированные и частично структурированные источники данных [7].

Позволяет быстро создавать и работать с тематически-ориентированными витринами данных (datamarts). Выполняется на платформах Windows NT, Unix и имеет встроенные драйверы, поддерживающие большинство популярных реляционных баз данных. Источником данных может быть плоские файлы, xml, Oracle, SQL Server, Sybase, Informix, DB/2, SAP, People Soft, ODBC. К недостаткам продукта можно отнести относительно небольшое количество инструментов фильтрации и анализа данных, а также высокая цена. Имеет клиент-серверную архитектуру. Графический интерфейс drag’n’drop. Присутствует планировщик заданий, но нельзя назначить неравномерные интервалы времени между повторяющимися заданиями. Для выполнения преобразований используется внутренняя логика, а не медленный SQL. Не может подключаться сразу к нескольким источникам. Функция идентификации узких мест при выполнении загрузи и трансформации данных [8, 9, 10].

С точки зрения открытых систем PowerMart является переносимой системой, т.к. поддерживает все современные платформы, поддерживает множество форматов источников данных. Имеет дружелюбный пользовательский интерфейс. Система может быть расширена, благодаря возможности написания собственных модулей на языке Java.

DecisionBase

DecisionBaseSAP позволяет загружать данные в Oracle, IBM UDB, MS SQL Server. Для проецирования данных присутствует графический интерфейс, основанный на принципе drag-n-drop. Для задания сложных шагов используются различные мастера. Важной функцией является наличие пре- и пост- обработки данных, позволяющих добиться получения более качественных данных. Система генерирует SQL код, который может быть отредактирован вручную при необходимости. Система поддерживает интерфейс ODBC, благодаря чему позволяет подключаться практически к любым базам данных. DecisionBase портирована на большинство Unix платформ: HP/Unix, Sun Solaris, IBM AIX [11].

Система поддерживает много видов источников, является кросплатформенной. Имеет развитой графический интерфейс.

Data Transformation Services

DataTransformationServices – это набор служб SQL Server, предназначенных для организации импорта, экспорта данных и переноса из между любыми источниками, доступными через интерфейс OLEDB и ODBC. С их помощью можно копировать структуры данных и сами данные, создавать средства для переноса данных, встроенные в приложения, а также пополнять хранилища данных из разнообразных источников. Например, можно импортировать данные и пересылать по FTP. Data Transformation Service имеет планировщик задач. Поддерживаются пакеты задач на VBA. Пакеты имеют соединения с источниками данных, задачами, подлежащими выполнению и технологическими процессами, объединяющими соединения и задачи. Примеры задач: копирование данных, трансформация данных, выполнение набора скриптов ActiveX или операторов Transact SQL. DTS преобразует OLTP данные в многомерные структуры [12, 13, 14].

Data Transformation Services была переработана в продукт MicrosoftSQLServerIntegrationServices. SIS имеет развитой пользовательский интерфейс Business Intelligence Development Studio. Данная среда позволяет проектировать, разрабатывать и отлаживать пакеты загрузки данных. Сложные ETL системы могут быть созданы при помощи пакетных сетей, с одним пакетом, вызывающим остальные. Вызываемые пакеты могут эффективно повторно использовать логику, переменные и контекст. Пакеты SIS хранятся в виде XML файлов. Присутствует интеграция с WMI, что означает, что пакеты могут реагировать на внешние события, например, на изменение файла. Данные могут извлекаться из плоских файлов, источников OLEDB (DB2, Oracle) и бинарных файлов. Данные, извлекаемые из множества источников данных, могут быть объединены в одном хранилище. Преобразованные данные могут быть записаны в гетерогенные приемники: таблицы SQL Server, таблицы баз данных OLEDB, плоские и бинарные файлы [15].

SSIS широко используется для загрузки данных в Analysis Services. В дополнение к средствамзагрузки данных в реляционные базы данных, SSIS предоставляет средства прямой загрузки данных в многомерные модели Analysis Services [16].

SSIS позволяет создавать поток управления (control flow) и поток данных (data flow). Поток управления позволяет сформировать логику обработки данных в виде цепочки компонентов управления. Каждый компонент управления предоставляет различную функциональность по управлению данными, в том числе может быть потоком данных. Поток данных — это цепочка компонентов, позволяющих описать логику преобразования данных. Например, мы можем сформировать поток управления, позволяющий пройти по всем таблицам реляционной базы данных, проверить, в каких таблицах появились новые данные, и загрузить эти данные из таблиц в многомерную модель.

SSIS предоставляет широкую библиотеку стандартных компонентов потоков данных. В дополнении к ним, SSIS предоставляет инфраструктуру для создания пользовательских компонентов. Компоненты могут разрабатываться как на управляемом (managed), так и на неуправляемом коде (native). Это позволяет компаниям разрабатывать узкоспециализированные высокоэффективные компоненты обработки данных [16].

Продукт Integration Services не является кроссплатформенным и ориентирован на взаимодействие с продуктами Microsoft. IS является расширяемой системой за счет программирования пакетов на языке Visual Basic. Поддерживает большое количество источников, а также использует открытые форматы для хранения пакетов. Для поддержки полного цикла создания пакетов имеется отличная графическая среда.

Metasuite

Metasuite поддерживает большое количество источников данных. Система может быть использована для загрузки простых и сложных структур данных. Является мультиплатформенность и масштабируемой. Внутри системы используется единый формат информации. Цели использования системы: конвертация данных, миграция данных, создание и поддержка хранилищ данных и витрин данных, создание и поддержка операционных хранилищ. Использует однопроходную обработку для большей эффективности. В Metasuite присутствует возможность планирования задач. В репозитории хранятся метаданные всех источников. Система имеет интуитивный графический интерфейс пользователя, включающий среду визуальной разработки, мастера для настройки источников, создания правил проецирования. После осуществления всех настроек система генерирует скрипты на языке COBOL. Поддерживаются операционные системы z/OS, BS2000, DOS VSE, VMS, UNIX, OS/400, Linux и Windows. Поддерживаемые источники данных: IMS, IDMS, DATACOM/DB, ADABAS, VSAM, QSAM, Sequential files, Delimited files, XML, любая RDBMS, включая DB2, Oracle, Teradata, Informix, Sybase. Благодаря открытости системы, возможна интеграция с планировщиком и механизмом защиты операционной системы, кроме того Metasuite легко подключается к любым средствам Data Minig, OLAP и средствам отчетности [17].

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

Sagent Solution Platform

Sagent Solution Platform была преобразована в Sagent Data Flow. Система позволяет как организовывать миграции данных, так и строить хранилища данных. Поддерживаемые платформы: Windows, Unix, Solaris, AIX, HP-UX. Система имеет пользовательский интерфейс, доступный через браузер (тонкий клиент). Благодаря грамотному управлению потоками решение является легко масштабируемым [18].

Система имеет интегрированный планировщик заданий и открытый реляционный репозиторий метаданных. Параллельная конвейерная архитектура позволяет добиться высокой эффективности и масштабируемости. Sagent позволяет подключаться к Oracle, IBM DB2, MS SQL Server, XML, SAP R/3, Sybase, Informix, MySQL, Red Brick, в качестве источника могут выступать текстовые файлы. Кроме того поддерживаются все источники, реализующие интерфейс доступа к данным ODBC. Составляются планы загрузки и преобразования данных. Система предоставляет API для разработки собственных средств трансформации на C++. Кроме того в Sagent Solution встроена поддержка VBScript для решения более простых задач. Присутствует интеграция служб SS со службами Windows [19].

Система в полной мере использует преимущества 64-битной архитектуры для повышения производительности.

С точки зрения открытых систем Sagent является многоплатформенной, подключается практически ко всем базам данных и поддерживает множество форматов источников данных, хорошо масштабируется благодаря параллельной архитектуре. Является расширяемой системой благодаря API C++ и встроенного языка VBScript. Имеет дружелюбный графический интерфейс.

Oracle Data Integrator

Отличительной особенностью Oracle Data Integrator является технология ELT (Extract Load and Transform), позволяющая улучшить производительность и уменьшить стоимость интеграции данных, в том числе и гетерогенных систем. А также обеспечивает производительность декларативного программирования. Поддерживает гетерогенные платформы: Windows, Linux, HP-UX, Solaris, AIX, Mac OS. Система интегрирована с базами данных, ERP, CRM, B2B системами, XML, LDAP, JDBC, ODBC. ODI имеет интуитивный графический интерфейс пользователя. В ODI применяются специальные технологии для манипулирования большими объемами данных. Решение может быть масштабировано от небольшой организации до целого предприятия. Для поддержки разработчиков в системе имеются специальные модули знаний для многих других систем, содержащие шаблоны кода. Scheduler Agent координирует исполнение сценариев [20, 21, 22].

С точки зрения открытых систем ODI является кроссплатформенным, масштабируемым решением, поддерживающим множество источников данных, имеющим продуманный графический интерфейс.

SAP BusinessObjects Data Integrator

Особенностями SAPBusinessObjectsDataIntegrator являются комплексная интеграция данных, перемещение и интеграция данных в реальном времени с любой периодичностью (ETL), комплексное управление метаданными, интуитивно понятный интерфейс, позволяющий быстро разрабатывать проекты интеграции данных, высокая производительность, функции обработки текстовых данных [23].

Поддерживается интеграция с SAP R/3, Oracle, PeopleSoft, Siebel. Система масштабируется в масштабах предприятия, поддерживает параллельную и распределенную обработку данных. Открытая сервисо-ориентированная архитектура позволяет взаимодействовать с продуктами других поставщиков, используя стандарты CWM, XML, HTTP/HTTPS, JMS, SNMP и Web-сервисы [24].

Используется единая среда проектирования ETL, интерфейс drag-n-drop позволяет создавать задания на профилирование, проверку, очистку, преобразование и перемещение данных. Усовершенствованные средства отладки позволяют анализировать данные на протяжении всего ETL процесса. Имеются широкие возможности для предподготовки данных [25].

С точки зрения открытых систем SAP Data Integrator интегрируется с большим числом продуктов других компаний и источниками данных, поддерживает открытые стандарты и протоколы взаимодействия и имеет интуитивно понятный интерфейс.

SAS Data Integration Server

SAS Data Integration Server – наиболее полное решение по интеграции данных, позволяющее извлекать данные из различных источников (оперативные системы, журналы web-серверов, баз данных, файлов, например, MS Excel) и выделять из них наиболее необходимые и значимые. Система поддерживает различные форматы источников (любые реляционные и нереляционные базы данных), а также позволяет извлекать данные из ERP-систем (Oracle/People Soft, SAP, Siebel). Метаданные представлены в единой форме независимо от источника. Система является полностью интегрированной. Система выявляет изменения в данных в реальном времени, чтобы обеспечить целостность, значимость и достоверность данных [26].

Стандартный графический интерфейс с функцией перетаскивания снижает время на кодирование. Пользовательские дополнения и шаблоны программирования позволяют применять сложные преобразования и сохранять их для повторного использования. Возможности пользовательской настройки стандартных преобразований с их последующим сохранением делают возможным их воспроизведение и повторное использование без дополнительного программирования, знаний SQL и дополнительной подготовки. Сервер является многопоточным, что делает решение масштабируемым. Кроме того в системе применяется балансировка нагрузки, которая позволяет сократить время выполнения процессов. Для простоты обмена метаданными поддерживается стандарт CWM и технология интеграции метаданных MITI. Присутствует интегрированное управление потоком заданий, включающее автоматическое распределение нагрузки [27].

С точки зрения открытых систем SAS Data Integration Server является расширяемой, масштабируемой системой, поддерживающей стандарты. Может подключаться к большому множеству источников данных и имеет стандартный интерфейс.

Далее рассмотрим ряд условно-бесплатных систем:

  • Oracle Warehouse Builder;
  • Talend Open Studio;
  • Scriptella.

И систем ETL со свободной лицензией:

  • Pervasive;
  • Pentaho.

Pentaho Data Integration

Система Pentaho Data Integration (PDI, также известная как Kettle) это компонент комплекса Pentaho отвечающий за процесс Извлечения, Преобразования и Выгрузки данных (ETL). Несмотря на то, что использовать системы ETL предполагается в рамках комплекса хранения данных, средства PDI:Kettle могут быть применены и для других целей:

  • обмена данными между приложениями или базами данных;
  • экспорта данных из таблиц баз данных в файлы;
  • загрузки массивов данных в базы данных;
  • обработки данных;
  • интеграции в приложения.

Данные можно получать практически из любого источника – от текстового файла до БД.

Положительными сторонами продукта Pentaho являются:

  • гибкость;
  • скорость работы;
  • интуитивность интерфейса;
  • поддержка практически любого ЯП;
  • подключение к JDBC;
  • кроссплатформенность.

Итак, Pentaho является кроссплатформенной, расширяемой системой с поддержкой большого числа источников.

Pervasive

Отличительной чертой Pervasive является наличие встроенного скриптового языка, при помощи которого описываются преобразования над данными. Но язык не является общераспространенным. Кроме того можно отметить наличие графического интерфейса.

Pervasive поддерживает подключения к множеству видов источников данных, а также к CRM системам, таким как Dynamix CRM [28].

Метаданные хранятся в формате XML для дальнейшего обмена этими метаданными и их повторного использования.

Утилита Pervasive Metadata Manager, кроме автоматизированного сбора метаданных по приложениям и средствам интеграции, обеспечивает анализ всех процедур, используемых для передачи и преобразования данных в ходе интеграции. Возможность подробно изучить все шаги интеграции данных помогает находить и устранять возникающие проблемы интеграции, а также позволяет эффективно выполнять все требования по режиму обращения с информацией [29].

С точки зрения открытости системы Pervasive поддерживает открытые форматы, имеет возможности к расширению благодаря скриптовому языку. Кроме того система обладает графическим интерфейсом пользователя.

Scriptella

Scriptella – еще одно средство ETL со свободной лицензией. Написана Scriptella на языке Java. По заявлениям разработчиков главной особенностью ее является простота. Для трансформаций используется язык SQL. Система поддерживает достаточно большое число типов провайдеров к источникам данных. Scriptella чаще всего используется при миграции с одной БД на другую и операций импорта и экспорта данных между разными БД. Данный продукт является очень простым средством, для работы с которым необходимо обладать квалификацией программиста. Имеются встроенные адаптеры к большинству популярных баз данных [30]. Система имеет простой графический интерфейс. Поддерживает ОС Linux.

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

Talend Open Studio

Talend Open Studio (TOS) — мощное и универсальное решение в области интеграции данных, работающее по модели Open source с открытым исходным кодом.

Применение Talend Open Studio значительно повышает эффективность создания работ по интеграции данных, благодаря наличию простой в использовании графической среды разработки. TOS предусматривает возможность быстрого развертывания работ и снижает затраты на их разработку и сопровождение за счет использования уже готовых компонентов и коннекторов ко всем исходным и конечным системам, а также наличия поддержки всех типов интеграции, миграции и синхронизации данных [31].

Основные задачи:

  • Интеграция операционных данных.
  • Миграция данных.
  • Синхронизация данных.
  • ETL для бизнес-аналитики и построения хранилищ данных.

Функциональные возможности:

  • Присутствует поддержка языка Java, что позволяет наращивать возможности встроенных компонент и создавать собственные.
  • Отладка в режиме реального временипозволяет отслеживать информационные потоки в процессе выполнения работ, включая статистику и расширенную трассировку данных, обнаруживать «узкие» места в процессах интеграции данных.
  • Автоматическая генерация документации в форматах XML и HTML.
  • Функция обнаружения зависимостей позволяет пользователям выявлять зависимости среди интеграционных процессов, разрабатываемых в TOS, и упрощает глобальное обновление большого ряда процессов, централизованно хранимых в репозитории.
  • Решение Talend расширяет как традиционный ETL подход, так и ELT .

Система является наращиваемой, имеет графический интерфейс и поддерживает различные источники данных.

Oracle Warehouse Builder

Oracle Warehouse Builder предоставляет доступ к целому ряду сторонних источников. Для систем E-Business Suite и PeopleSoft есть коннекторы, позволяющие включать созданные в этих ERP-приложениях объекты в отображения и обрабатывать потоки работ. Коннектор SAP Connector аналогичен, но включает также кодогенератор АВАР, позволяющий организовать доступ к любой таблице SAP над любой базой данных, в том числе к кластерным таблицам, с помощью RFC-соединения [32].

Oracle Warehouse Builder использует архитектуру «извлечение-загрузка-преобразование» (ELT). OWB не предоставляет механизм внешнего преобразования данных, а выполняет все преобразования в базе данных Oracle, используя масштабируемость и производительность платформы базы данных [33].

Плюсы:

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

Минусы:

  • неудобный интерфейс в инструментах администрирования;
  • система подсказок ограниченная и громоздкая;
  • отставание от специализированных поставщиков в области инноваций (интеграция с офисом, BI-поиск).

Данные извлекаются из рабочей системы-источника и транспортируются в промежуточную область. Эта область представляет собой место временного хранения данных для их подготовки. Затем данные загружаются в целевые таблицы хранилища. Иногда этот процесс называют аббревиатурой ЕТТ (от extraction, transportation, transformation, извлечение, транспортировка, преобразование).

Для высокоскоростной загрузки плоских файлов компонент Oracle SQL*Loader поддерживает загрузку в прямом режиме(direct path load), когда выполняется запись прямо в файл данных, в обход кэша буферов и механизма отката.

Имеется развитой графический интерфейс.

Knoema

Система Knoema [34] не является ETL средством в традиционном понимании. Система позволяет на основе запроса на естественном языке находить предопределенные источники данных, получать из них информацию. Присутствуют широкие возможности к визуализации данных. Система реализована как web-портал, что делает ее кроссплатформенной.

Система является наиболее близкой по идеологии к разрабатываемому порталу BiP, но коренные различия заключаются в том, что Knoema ориентируется на конченых пользователей, а BiP ориентирован и на конечных пользователей, которым нужны готовые данные и на аналитиков и разработчиков систем анализа, которые должны иметь возможности подключать собственные источники данных. Подключение собственных источников данных должно быть максимально простым.

Таблица 1. Сравнительная таблица

  • Система

  • Поддержка

  • гетерогенных источников

  • GUI

  • Расширяемость

  • Масштабируемость

  • Кроссплатформенность

  • CopyManager
  • +
  • +
  • + (3GL)
  • +
  • +
  • Datastage
  • +
  • +
  • +
  • +
  • +
  • Extract
  • +
  • +
  • +
  • +
  • +
  • Powermart
  • +
  • +
  • +
  • +
  • Decisionbase
  • +
  • +
  • +
  • ?
  • +
  • Data Transformation Service
  • +
  • +
  • +
  • +
  • Metasuite
  • +
  • +
  • +
  • +
  • +
  • Sagent SP
  • +
  • +
  • +
  • ++
  • +
  • PowerCenter
  • +
  • +
  • +
  • +
  • +
  • Oracle DI
  • +
  • +
  • +
  • +
  • +
  • SAP DI
  • +
  • +
  • +
  • ++
  • +
  • SAS DIS
  • +
  • +
  • +
  • ++
  • +
  • Oracle Warehouse Builder
  • +
  • +
  • +
  • +
  • +
  • Talend Studio
  • +
  • +
  • +
  • ?
  • +
  • Scriptella
  • +
  • +
  • Pervasive
  • +
  • +
  • +
  • +
  • +
  • Pentaho
  • +
  • +
  • +
  • ?
  • +

Заключение

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

Практически для всех рассмотренных средств характерна поддержка большого количества источников и приемников данных, что закономерно, т.к. системы ориентированы на загрузку данных. Все системы позволяют осуществлять миграцию данных между базами данных, но только некоторые позволяют создавать хранилища данных и наполнять его данными из разных источников (например: решения Microsoft, Oracle, SAS, SAP и др.).

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

Графический интерфейс имеется у большинства систем. Некоторые системы (например: решения Microsoft) имеют весьма развитые средства для задания отображения из источника в приемник (BI Studio), а также позволяющие полностью держать под контролем процесс загрузки. Большинство систем являются расширяемыми за счет встроенных языков и масштабируемыми, хотя в некоторых из них масштабируемость является приоритетной задачей и поэтому реализована лучше, чем у других. Например: в системе SAS применяется балансировка нагрузки и параллельная архитектура.

Практически все рассмотренные системы являются кроссплатформенными и написаны на языке Java, за исключением решений копании Microsoft.

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

В результате выполненного обзора было установлено, что ни одна система не удовлетворяет поставленным требованиям (реализация как web-сервиса, требование открытости для интеграции с порталом), поэтому была поставлена задача разработки ETL системы для портала BiP. К системе предъявляются следующие требования:

  • «Кроссплатформенность для пользователя», т.е. пользователь не зависит от конкретной аппаратной архитектуры и установленной операционной системы, для чего планируется реализация системы как web-сервиса.
  • Расширяемость, которая может быть достигнута за счет возможностей подключения новых источников данных и новой функциональности для трансформации и очистки как плагинов.
  • Масштабируемость, для обеспечения которой предполагается использовать планировщика задач с возможностями балансировки загрузки.
  • Предоставление пользовательского интерфейса для создания ETL процессов без программирования.

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

Библиографический список

  1. Информационные потоки в хранилищах данных [Электронный ресурс]. [Режим доступа: http://informaticsscience.ru/index.php, свободный] [Проверено 01.06.2011].
  2. Knowledge Discovery in Databases – обнаружение знаний в базах данных [Электронный ресурс]. [Режим доступа: http://www.basegroup.ru/library/ methodology/kdd, свободный] [Проверено 16.01.2013].
  3. World Group Consulting. ETL Evaluation [Электронный ресурс]. [Режим доступа: datamystic.com/textpipe/etl_evaluation.doc, свободный] [Проверено 16.01.2013].
  4. High perfomance data integration [Электронный ресурс]. [Режим доступа: http://www.eti.com/product, свободный] [Проверено 16.01.2013].
  5. Хранилища данных. Инструментарий: IBM DataStage [Электронный ресурс]. [Режим доступа: http://www.progres-co.ru/index.php/techs/ibm-datastage, свободный] [Проверено 16.01.2013].
  6. Инструменты ETL [Электронный ресурс]. [Режим доступа: http://www.forekc.ru/nr2/index-instrumenty_etl_3.htm, свободный] [Проверено 16.01.2013].
  7. Informatica PowerCenter [Электронный ресурс]. [Режим доступа: http://www.data-integration.ru/products/PowerCenter/, свободный] [Проверено 16.01.2013].
  8. Шумейт Д. Быстрый старт рынков данных [Электронный ресурс]. [Режим доступа: http://www.pcweek.ru/themes/detail.php?ID=39160, свободный] [Проверено 16.01.2013].
  9. Informatica Basic Features – Power Centre, Power Mart [Электронный ресурс]. [Режим доступа: http://dwhlaureate.blogspot.ru/2012/08/informatica-basic-features.html, свободный] [Проверено 16.01.2013].
  10. Informatica PowerMart/PowerCenter 6.2.1 [Электронный ресурс]. [Режим доступа: http://www.brainbench.com/xml/bb/common/testcenter/taketest.xml?testId=2462, свободный] [Проверено 16.01.2013].
  11. Computer Associates Splashes Into the Data Warehousing Market with Platinum Tecnology Acquisition [Электронный ресурс]. [Режим доступа: http://datawarehousinginfos.blogspot.ru/2010/08/computer-associates-splashes-into-data.html, свободный] [Проверено 16.01.2013].
  12. ФедоровА. Microsoft SQL Server 2000. Краткий обзор новинок [Электронный ресурс]. [Режим доступа: http://www.interface.ru/home.asp?artId=3895#05, свободный] [Проверено 16.01.2013].
  13. Федоров А., Елманова Н. Введение в OLAP: часть 4. Создание и заполнение хранилищ данных с помощью Data Trancformation Services [Электронный ресурс]. [Режим доступа: http://mf.grsu.by/other/lib/olap/intro/olap_intro4.html, свободный] [Проверено 16.01.2013].
  14. Хранилище данных на SQL Server 2000 и компоненты OLAP [Электронный ресурс]. [Режим доступа: http://www.sdteam.com/t1854, свободный] [Проверено 16.01.2013].
  15. PayneA. Интеллектуальная обработка данных и хранилищ данных в SQL Server 2005 [Электронный ресурс]. [Режим доступа: http://citforum.ru/database/mssql/data_mining/#4, свободный] [Проверено 16.01.2013].
  16. БергерА. Б. Microsoft SQL Server 2005 Analysis Services. OLAP и многомерный анализ данных / Бергер А. Б., Горбач И. В., Меломед Э.Л., Щербинин В. А., Степаненко В. П. / Под общ. Ред. А. Б. Бергера, И. В. Горбач. – СПб.: БХВ-Петербург, 2007. – 928 с.: ил. – (В подлиннике).
  17. Metasuite. Main features [Электронный ресурс]. [Режим доступа: http://www.metasuite.be/product/main-features.html, свободный] [Проверено 16.01.2013].
  18. Sagent ships Sagent Solution 4.5i delivering 50 percent or greater pergomance increase [Электронный ресурс]. [Режим доступа: http://www.alicornio.co.za/index.php/news/news-releases/2001/52-sagent-ships-sagent-solution-4-5i-delivering-50-percent-or-greater-performance-increase, свободный] [Проверено 16.01.2013].
  19. Group 1 Sagent Data Flow Solution [Электронный ресурс]. [Режим доступа: http://www.pbsoftware.eu/ger/files/download/white-papers/Sagent%20Data%20Flow%20Solution_overview_2006_engl.pdf, свободный] [Проверено 16.01.2013].
  20. Oracle Data Integration [Электронный ресурс]. [Режим доступа: http://www.oracle.com/ru/products/middleware/data-integration/overview/index.html, свободный] [Проверено 16.01.2013].
  21. Oracle Data Integrator Enterprise Edition [Электронный ресурс]. [Режим доступа: http://www.oracle.com/us/products/middleware/data-integration/odi-ee-11g-ds-168065.pdf, свободный] [Проверено 16.01.2013].
  22. Архитектура Oracle Data Integrator: краткий технический обзор [Электронный ресурс]. [Режим доступа: http://www.olap.ru/home.asp?artId=818, свободный] [Проверено 16.01.2013].
  23. SAP BusinessObjects Data Integrator [Электронный ресурс]. [Режим доступа: http://www.sap.com/cis/solutions/sapbusinessobjects/large/eim/dataintegrator/index.epx, свободный] [Проверено 16.01.2013].
  24. SAP BusinessObjects Data Integrator [Электронный ресурс]. [Режим доступа: https://www.tern.ru/data_inegrator, свободный] [Проверено 16.01.2013].
  25. SAP BusinessObjects Data Integrator [Электронный ресурс]. [Режим доступа: https://www.tern.ru/files/data_integrator_tern.pdf, свободный] [Проверено 16.01.2013].
  26. Интеграция данных (Data Integration) [Электронный ресурс]. [Режим доступа: http://www.sas.com/offices/europe/russia/software/EIP/DI.html, свободный] [Проверено 16.01.2013].
  27. SAS Enterprise Data Integration Server [Электронный ресурс]. [Режим доступа: http://www.sas.com/offices/europe/russia/whitepapers/SAS_EDI.pdf, свободный] [Проверено 16.01.2013].
  28. Лучший open-sourse ETL (Pervasive, Talend, Pentaho) [Электронный ресурс]. [Режим доступа: http://www.deepedit.ru/luchshiy-open-sors-etl-pervasive-talend-pentaho.html, свободный] [Проверено 16.01.2013].
  29. Pervasive Data Integrator 9.2 – более 150 поддерживаемых источников [Электронный ресурс]. [Режим доступа: http://dba.ucoz.ru/news/2009-04-10-195, свободный] [Проверено 16.01.2013].
  30. Scriptella [Электронный ресурс]. [Режим доступа: http://scriptella.javaforge.com/, свободный] [Проверено 16.01.2013].
  31. Интеграция данных [Электронный ресурс]. [Режим доступа: http://www.citeck.ru/talend-open-studio/data-integration, свободный] [Проверено 16.01.2013].
  32. Гринвальд Р., Стаковьяк Р., Стерн Дж. Oracle 11g. Основы, 4-е издание / Пер. с англ. – СПб.: Символ-Плюс, 2009. – 464 с., ил.
  33. Oracle BI: Ключевые возможности и преимущества [Электронный ресурс]. [Режим доступа: http://www.cyberguru.ru/database/oracle/business-intelligence-features.html, свободный] [Проверено 01.06.2011].
  34. Knoema. Официальный сайт [Электронный ресурс]. [Режим доступа: http://knoema.com/, свободный] [Проверено 16.01.2013].

Научный руководитель: старший преподаватель кафедры МОВС ПГНИУ, П.А. Мальцев.