По определению аналитиков Gartner, интеграция данных охватывает практики, архитектурные подходы и программные инструменты для обеспечения согласованного доступа и доставки данных для всего спектра приложений и бизнес-процессов компании (Magic quadrant for data integration tools, Gartner, 2006). Как свидетельствуют исследования, затраты на программные средства интеграции данных сегодня неуклонно растут в самых разных индустриях и географических регионах. Это происходит из-за несоответствия существующих подходов к управлению данными и ситуации с автоматизированной поддержкой операций бизнеса со стороны прикладных систем. Управление сквозными бизнес-процессами, охватывающими различные подразделения компании и ее внешних партнеров и заказчиков, демонстрирует своюэффективность и подкреплено вполне зрелыми методами и технологиями интеграции, в том числе на базе SOA. При этом ключевые данные на различных стадиях бизнес-процессов тесно привязаны к работающим с ними приложениям, но согласованное для разных систем представление данных отсутствует.
Между тем такое представление действительно необходимо. Например, основные данные о клиентах и продуктах в разных подразделениях — маркетинговом, финансовом, отделе продаж и т.д. — могут определяться и использоваться по-разному; более того, каждое подразделение может иметь свой собственный источник данных. Чтобы включить операции этих подразделений в общий бизнес-процесс, требуется привести разрозненные данные к общему виду — только в этом случае будет обеспечена необходимая эффективность и простота выполнения бизнес-процесса. Однако если отсутствует общая корпоративная стратегия и соответствующий инструментарий интеграции данных, их сведение воедино реализуется с помощью специальных программных настроек для каждого конкретного приложения, что только усложнит задачу.
Несогласованность данных и невозможность унифицированного доступа к ним становится особенно очевидной и болезненной в ситуациях слияния и поглощения компаний. Существование множества разрозненных источников данных и отсутствие механизмов их объединения и согласования усложняют использование информации, поскольку для принятия обоснованных решений нужен единый источник достоверных данных в масштабах всей компании.
Технологически интеграция данных долгое время была сосредоточена преимущественно в системах категории ETL (Extract-Transformation-Load), которые предусматривают извлечение данных (data extraction) из определенного источника, изменение структуры или формата данных (data transformation) для их использования в бизнес-приложении и отправки приложению (data load). Инструментарий ETL первоначально сложился как основное средство формирования хранилищ данных, но затем стал использоваться и в других сценариях интеграции данных. Наряду с ETL появились и другие технологии, реализующие предоставление единого достоверного источника данных, например, средства репликации данных и федеративный доступ к данным; собирательно их обозначают термином интеграция информации предприятия (Enterprise Information Integration, EII). Кроме того, в той или иной степени охватывают область интеграции данных решения по очистке, обеспечению качества и моделированию данных, адаптеры доступа к данным, инструментарий управления неструктурированными данными, средства обеспечения безопасности данных и др.
В итоге рынок программных средств интеграции данных оказался чрезвычайно фрагментированным, из-за этого интеграция данных на больших предприятиях существенно усложнилась. Компаниям приходилось приобретать разные решения, часто от разных производителей. Подразделения использовали различный инструментарий без каких-либо средств согласования и с большой вероятностью дублирования и избыточности функций при невозможности обеспечить общее управление процессом интеграции. В итоге интеграция не решала, а, наоборот, усугубляла проблему разнородности и несогласованности данных, участвующих в автоматизации бизнес-процессов.
Сегодня ситуация меняется к лучшему, заметен значительный прогресс в интеграции приложений, рынок консолидируется, у компаний появляются реальные возможности автоматизировать сквозные бизнес-процессы и при этом возникает настоятельная потребность в централизованных, многофункциональных решениях по интеграции данных. Производители расширяют и унифицируют свои программные продукты за счет как новых разработок, так и приобретения других компаний. В Gartner считают, что на сегодня рынок решений интеграции данных сложился и предоставляет широкий спектр возможностей и способов интеграции наряду с единой платформой моделирования данных, представления метаданных и поддержки среды исполнения.
Что есть что в интеграции данных
К программным систем интеграции данных аналитики относят решения, обеспечивающие инфраструктуру доступа и доставки данных для следующих сценариев интеграции.
Получение данных для хранилищ данных и систем бизнес-аналитики — извлечение данных из систем поддержки оперативной деятельности, трансформация и объединение этих данных, представление интегрированных данных для решения аналитических задач. Хранилища данных сохраняют свою доминирующую роль среди возможных применений средств интеграции данных.
Создание интегрированных хранилищ основных, или мастер-данных — обеспечение консолидации и рационализации данных, имеющих важное значение для бизнеса (например, данные о клиентах, продуктах и сотрудниках). В решениях по управлению основными данными (Master Data Management, MDM) инструментарий интеграции обеспечивает ключевые процессы их консолидации и синхронизации.
Миграция/преобразование данных — автоматизация перемещения и трансформации данных, востребованных при замене унаследованных приложений и для консолидации данных при слияниях и приобретениях компаний. Раньше поддержка таких процессов, как правило, требовала от организации большого объема специального программирования.
Синхронизация данных между приложениями, поддерживающими оперативную деятельность — обеспечение согласованности между приложениями на уровне баз данных, включая как внутренние и внешние базы данных или приложения. Синхронизация данных может быть одно- или двунаправленной.
Федеративное объединение данных — объединенное представление данных из множества различных источников. Этот подход к интеграции, часто обозначаемый термином EII, приобретает все большую популярность в качестве эффективного средства виртуального объединения данных из разных источников в реальном времени, то есть без физического их перемещения.
Сервисы данных в контексте сервис-ориентированной архитектуры — реализация интеграции данных в рамках SOA. Это не отдельный сценарий, а, скорее, новый метод интеграции, активно развивающийся в связи с ростом популярности сервисных архитектур и применимый, в принципе, к любому из перечисленных случаев.
Унификация структурированных и неструктурированных данных. Это также не отдельный сценарий, а новый поход к интеграции, отражающий тенденцию к созданию единой платформы управления информацией, способной охватить источники данных произвольных типов.
Существует несколько классов функций, которые аналитики считают обязательными для реализации полного спектра сценариев интеграции данных.
Связь различных источников и целевых хранилищ данных — взаимодействие с разными типами структур данных, включая реляционные и унаследованные нереляционные базы, файлы различных форматов, XML-документы, данные бизнес-приложений типа ERP, CRM и SCM, отраслевые форматы передачи данных, такие как Electronic Data Interchange (EDI), банковский стандарт SWIFT или принятый в здравоохранении формат Health Level, очереди сообщений, применяемые в известных продуктах типа WebSphere MQ или основанные на стандарте Java Messaging Service неструктурированные данные из систем электронной почты, Web-сайтов, офисных систем и репозиториев контента. Средства интеграции данных должны также поддерживать различные режимы взаимодействия, в том числе доставку больших объемов данных или, наоборот, отдельных минимальных порций, извлечение только модифицированных данных, доставку данных на основе определенных событий (по расписанию, при получении конкретного значения и т.д.).
Доставка данных — предоставление данных приложениям, процессам и базам данных в различных режимах, включая физическое перемещение больших объемов данных между репозиториями, создание федеративных представлений данных, перемещение инкапсулированных данных с помощью механизмов передачи сообщений, репликацию данных между однородными и неоднородными СУБД и схемами баз данных. Доставка может осуществляться в режиме запланированной пакетной передачи, в реальном времени или на базе событий.
Трансформация данных — преобразование данных из одной формы в другую для обеспечения согласованности их элементов, размещаемых в различных информационных источниках. Трансформация может иметь разные уровни сложности: базовые трансформации, например, преобразование типов данных, манипуляции со строками и простые вычисления; преобразования средней сложности, например, операции поиска и замены, агрегация, резюмирование и др.; комплексные преобразования типа сложного грамматического разбора. Кроме того, должны предоставляться средства для разработки дополнительных или расширения имеющихся способов трансформации данных.
Метаданные и моделирование данных становятся центром системы интеграции и управления данными в целом, обеспечивая автоматическое обнаружение и доставку метаданных из различных источников и приложений; создание и сопровождение моделей данных; взаимное отображение физических и логических моделей данных; описание зависимостей между моделями с помощью средств графического отображения на уровне атрибутов; открытый репозиторий метаданных, имеющий средства двунаправленного обмена с другим инструментарием; расширение репозитория определенными в компании атрибутами и зависимостями метаданных; интерфейс для аналитиков и обычных пользователей, работающих с метаданными.
Среда разработки предназначена для определения и проектирования процессов интеграции данных и должна поддерживать графическое представление объектов репозитория, моделей и потоков данных, управление потоками работ, безопасность на базе ролей в разработке, командную разработку, тестирование и отладку.
Руководство данными — обеспечивает повышение точности данных и гарантию их качества, включая возможности взаимодействия с инструментарием профилирования данных (получение точной информации о содержании, структуре и качестве данных), системами добычи и обеспечения качества данных.
Оперативная поддержка и администрирование — адекватное сопровождение, управление и контроль процессов интеграции данных: обработка ошибок, мониторинг выполнения процессов, сбор статистики времени выполнения, контроль безопасности и обеспечение надлежащей архитектуры для производительности и масштабируемости процессов интеграции.
Идеальная архитектура системы интеграции данных должна поддерживать высокий уровень общности, согласованности и взаимодействия между компонентами системы, обеспечивая минимальное число продуктов для поддержки разных режимов доставки данных, единый репозиторий метаданных с возможностью разделять метаданные между всеми компонентами и всеми режимами доставки и общую среду разработки для всех таких режимов.
Интеграция данных в эпоху SOA
Поддержка XML-преобразований, Web-сервисов, связи с источниками данных с использованием таких спецификаций, как JDBC или JMS, подготовили технологии интеграции данных к реализации на базе сервисной архитектуры. Появилось понятие сервисов данных, которые объединяются в отдельный уровень, абстрагирующий бизнес-логику от технологии доставки данных приложениям из различных источников и преобразования данных. Если в SOA традиционные прикладные сервисы инкапсулируют логику бизнес-приложений, позволяя использовать ее многократно в различных ситуациях, то, аналогично, уровень сервисов данных позволяет инкапсулировать все рассмотренные функциональные возможности технологий интеграции данных в компоненты, доступные для многократного использования различными приложениями и в разных сценариях интеграции данных. Наличие уровня сервиса данных дает возможность развертывать в среде выполнения все функции интеграции данных в виде сервисов, управлять их публикацией и тестированием, обеспечить взаимодействие с реестром/репозиторием сервисов приложений, реализовать сервисные принципы в организации сред разработки и администрирования процессов интеграции данных.
Концепция сервисного подхода к управлению данными, включая задачу их интеграции, в ряде источников получила название Information as a Service, а в отношении единой платформы управления данными на базе сервисов можно встретить такие обозначения, как «информационная фабрика» (information fabric) или «информационный сервер» (information server). Полноценной реализации подобного сервера, как отмечают аналитики Forrester Research, пока нет, но решения таких компаний, как BEA Systems, IBM и Oracle, эволюционируют именно в этом направлении.
В идеале сервисная архитектура интеграции данных должна включать в себя три основных компонента: среду универсального доступа к данным, репозиторий и сервисы метаданных, а также сервисы интеграции (рис. 1).
Среда универсального доступа к данным реализует связь с произвольными источниками данных и предоставляет бизнес-сервисам данные различных типов в нужных режимах доставки. Универсальность доступа подразумевает поддержку в организации полного спектра возможных источников данных, включая готовые бизнес-системы, унаследованные решения на платформе мэйнфреймов, реляционные базы данных, неструктурированные данные.
Центральную роль в сервисной системе интеграции данных играет среда метаданных. Собранные в едином корпоративном репозитории, метаданные позволяют задать общий язык определения данных и добиться единого понимания данных на различных уровнях их использования. И хотя любая из систем, скажем, СУБД или информационный портал, имеет свое хранилище метаданных, речь идет об общем представлении для всех таких решений, позволяющем определить на едином языке (например, XML) семантику и правила использования корпоративных данных в целом.
Репозиторий метаданных включает в себя определения данных, правила преобразования в ETL-системах, отображения из источника данных в целевое хранилище, логические модели данных и другие характеристики, описывающие, как искать, осуществлять доступ и использовать данные. Репозиторий позволяет задать единую семантику и правила ко всем процессам организации, отслеживания и управления данными в компании и, подобно универсальному брокеру, связывает высокоуровневые сервисы данных и более детальные определения и зависимости данных. Основная ценность такого репозитория — в абстрагировании логических моделей данных от фактической реализации технологий интеграции данных. Сервисы метаданных позволяют согласовывать семантику данных между различными системами, выявлять происхождение и историю данных для отчетности и аудита, отслеживать факт внесения изменений, обнаруживать связанные с данными слабые места в общей информационной архитектуре. В целом среда метаданных призвана обеспечить надлежащую структуру и качество данных, прежде чем они будут переданы соответствующему бизнес-сервису.
Платформа интеграции позволяет реализовать в виде сервисов интеграции данных росновные функции интеграции— режимы доставки, способы трансформации данных, средства профилирования и очистки данных и т.д. К необходимым свойствам такой платформы относится также разбиение данных для интеграции на высокопроизводительных многопроцессорных или распределенных платформах, обеспечение восстановления при сбоях и безопасность работы с данными, например, аутентификация и авторизация, протоколы управления учетными записями и шифрование.
Основные решения
Аналитики Gartner среди участников рынка систем интеграции данных выделяют такие компании, как Oracle, SAP, Microsoft, Business Objects, SAS Institute, Sybase, Cognos и Tibco Software. Некоторые из них отнесятся к так называемым нишевым игрокам; их предложения не отличаются универсальностью, не реализуют всех ключевых аспектов интеграции данных и не могут быть причислены к решениям корпоративного уровня. В число лидеров, предлагающих реальную конвергенцию отдельных инструментов в единую платформу интеграции данных, с отрывом от остальных, попали только IBM и Informatica.
В IBM одними из первых сделали ставку на технологии федеративного объединения данных в системе DB2 Information Integrator (сегодня Federation Server). После приобретения в 2005 году компании Ascential Голубой гигант вышел в лидеры ETL-решений. Группа продуктов по интеграции данных от IBM относится к семейству WebSphere и включает в себя Federation Server, ETL-систему DataStage, системы Information Analyzer и Quality Stage для профилирования и очистки данных, сервер метаданных Metadata Server. Недавно все эти продукты вошли в состав нового пакета IBM Information Server, реализующего единую, построенную на принципах многократного использования сервисов архитектуру интеграции данных и управления разнородной информацией. Ядром этой архитектуры является среда управления метаданными, пользователям предоставляется возможность многофункциональной работы с данными посредством ролевых интерфейсов, имеются мощные механизмы параллельной обработки больших объемов данных.
Informatica, также ветеран рынка интеграции данных, является крупнейшим поставщиком, специализирующимся только на решениях этого класса. Функции интеграции сосредоточены в системе Informatica PowerCenter, которая изначально была разработана для реализации возможностей ETL, но со временем (с приобретением других компаний, лицензированием и разработкой новых технологий) пополнилась возможностями федеративного объединения данных (Data Federation Option), профилирования и обеспечения качества данных (Data Profiling Option, Data Cleanse and Match Option), поддержки неструктурированных источников (Unstructured Data Option) и управления метаданными (Metadata Exchange Option и Metadata Manager).
В версии системы PowerCenter 8.5 реализована единая платформа интеграции данных с централизованной инфраструктурой метаданных и функциями интеграции в качестве сервисов. PowerCenter обеспечивает доступ к данным реляционных баз, файлов, унаследованных систем на мэйнфреймах, источникам неструктурированных данных и очередей сообщений, поддерживая пакетную доставку данных, доставку в реальном времени и в режиме извлечения только модифицированных данных. Модуль Metadata Exchange Option координирует технические и бизнес-метаданные из инструментария моделирования данных, систем бизнес-анализа, каталогов исходных и целевых баз данных и репозиториев самой системы PowerCenter. Решение Metadata Manager, входящее в состав расширенной версии PowerCenter Advanced Edition, обеспечивает сбор метаданных из различных источников, а также средства анализа метаданных и отчетности по ним.
Для масштабной интеграции данных, при которой требуется обработка большого объема данных, в том числе в реальном времени, PowerCenter включает опцию поддержки корпоративных grid-инфраструктур, построенных их многоузловых кластеров на базе стандартных Intel-серверов или серверов-лезвий. Enterprise Grid Option включает в себя консоль управления grid-средой с возможностью ее конфигурирования, контроля и миграции узлов и сервисов данных, сложный алгоритм адаптивной балансировки нагрузки и средства динамического разбиения данных для оптимальной параллельной интеграции.
Аналитики отмечают, что компания Informatica делает упор на интеграцию данных в процессе межкорпоративного взаимодействия, что пока не свойственно большинству участников рынка.
Все для клиента— и о клиенте
Одним из распротраненных сценариев, требующих эффективной интеграции данных, является интеграция баз знаний о клиентах (Customer Data Integration, CDI) при объединении компаний или слиянии подразделений. Предположим, например, что произошло слияние двух отделов, занимающихся работой с клиентами, и им необходимо оптимизировать работу по организации продаж. Для этого требуется консолидация больших хранилищ имен, адресов, бизнес-историй и иной информации о клиентах, поддерживаемой несовместимыми и, возможно, территориально удаленными системами. При отсутствии платформы интеграции данных велик риск получить несогласованные и «грязные» данные с дублированными или конфликтующими атрибутами клиентов. Платформа интеграции должна обеспечить необходимый доступ к данным в нужных хранилищах, их очистку, преобразование и перемещение на новое место.