Архитектура и этапы проекта
Апробацией интеграционного проекта может послужить пилотный проект, который включает в себя интеграцию двух функциональных систем с пересекающимися данными. Уже на этом полностью прорабатывается архитектура комплексного решения и закладываются принципы построения системы.
Срок реализации пилотного проекта – 3-4 месяца (в зависимости от объема и качества данных в функциональных системах).
Сервисно-ориентированная архитектура (SOA)
Наиболее оптимальным способом интеграции большого количества разнородных и гетерогенных приложений является использование SOA – сервисно-ориентиированной архитектуры. Существующие приложения модернизируются и настраиваются на публикацию данных по стандартному протоколу WSDL обмена данными между веб-сервисами. Такой подход позволяет параллельно модернизировать несколько приложений и при этом не требует, чтобы сходные по смыслу данные были обязательно представлены для обмена в одинаковом формате.
Интеграция систем через сервисы не требует разработки коннекторов, как в случае стандартного метода последовательной интеграции (точка-точка), что становится дополнительным архитектурным преимуществом и снижает объем работ, а значит, и стоимость проекта.
ETL
Серверы, занимающиеся извлечением и преобразованием данных, обозначены общим термином ETL (Extract Tramsform Load). В качестве рабочего приложения рекомендуется использовать ETL-инструмент Pentaho Data Integration (Kettle) из состава пакета Pentaho BI Suite (если нужно строить портал бизнес-аналитики), либо отдельный инструмент Talend Integration Suite (если требуется обработка значительных объёмов данных).
Хранилище данных
Централизованный сбор и хранение данных осуществляется на специально выделенном для этого сервере БД. В качестве программного обеспечения такого сервера подойдёт любая промышленная БД, такая как MS SQL Server, Oracle и др. Основной задачей хранилища является хранение данных в форме измерений и фактов (организация таблиц по типу «звезда» или «снежинка»), наиболее удобной для быстрых аналитических выборок данных с целью построения отчётности. Также внутри хранилища производится массированная обработка данных, если это требуется.
Мастер-данные
Повышение компактности хранения данных в хранилище и обеспечение единой справочной информацией всех потребителей осуществляется в блоке управления мастер-данными. Здесь производится определение пересекающихся данных, предоставленных и используемых различными приложениями, и публикация этих данных в сведённой для общего использования форме в виде веб-сервисов. Подключение приложений к опубликованным мастер-данным обеспечивает их более тесную интеграцию без значительных затрат на модернизацию приложений.
Очистка данных
Блок очистки данных применяется, если необходимо провести выверку текстовой информации, которую пользователь вводит в функциональные приложения со слуха или без возможности выбрать из списка заранее определённых вариантов. Как правило, это контактные данные, адреса, телефоны и т.д. Очистка данных позволяет привести такую информацию к определённой заранее единой форме, что позволяет эффективно использовать полученные данные в различного рода аналитике и значительно увеличивает ценность хранимой информации.
Нами разработаны специальные модули очистки данных, которые можно использовать с любым из перечисленных выше ETL-инструментов. Они позволяют удалить из хранилища дублирующие записи, выправить опечатки в названиях организаций и именах физических лиц, проверить корректность адреса (его соответствие КЛАДР), найти все записи с неполными данными.
Централизованная отчётность
Создание отчётов с использованием данных хранилища гарантирует, что все пользователи и заказчики отчетности получат единую и выверенную информацию. Таким образом можно высвободить значительное количество времени, которое обычно тратится на согласование и сведение информации из различных отчётов подразделений. Блок отчётности также можно реализовать в виде корпоративного бизнес-аналитического портала, где пользователи получаются доступ к разрешённому специально для каждого из них блоку данных и могут легко обмениваться этими данными без специального форматирования документов. Корпоративный портал отчётности значительно снижает влияние человеческого фактора при работе с информацией.