Разработка IT Архитектуры: Интеграционные системы
Понятие интеграционной системы
Интеграционная система представляет собой набор компонентов, которые управляются как единое целое и нацелены на интеграцию данных и процессов. Интеграционная система отделена от других прикладных систем в рамках предприятия и является поставщиком сервисов для них. Эти сервисы могут включать в себя, для примера: миграцию данных, консолидацию данных, синхронизацию данных, обеспечение качества данных и управление процессами.
Подход интеграционной системы отличается от традиционного подхода к компонентам интеграции, которые управляются в рамках бизнес-приложений. Напротив, интеграционная система рассматривает компоненты интеграции с глобальной точки зрения. Система определяет четкие границы каждого бизнес-приложения и явно определяет все составляющие, которые в совокупности представляют систему интеграции и её функции независимо от того, насколько распределенными эти компоненты. Основной причиной управления компонентами интеграции как системой является то, что данный подход дает возможность поддерживать интеграцию данных в приложениях после завершения изначального проекта (проектов).
Интеграционные Системы характеризуются:
а) классификацией компонентов;
б) их функциями;
в) интерфейсами приложения.
Систематика интеграционных систем
Бизнес системы обеспечивают возможность поддержки бизнес-функций, таких как бухгалтерский учет, маркетинг, производство, продажи и т.п. Системы интеграции обеспечивают возможность для интеграции отдельных бизнес-систем в единое целое при помощи консолидации, адаптации, очистки и преобразования данных. Интеграционные системы также контролируют и осуществляют мониторинг бизнес-процессов, предоставляют комплексный отчет для пользователей либо для руководства. Иными словами, интеграция приложений рассматривается комплексно, как система, а не как дополнительные приспособления для взаимодействия бизнес-приложений друг с другом в отношении 1 к 1.
Основные рекомендации к сервису интеграции системы управления данными:
- высокая степень интеграции с другими сервисами системы управления данными;
- повторное использование уже разработанных процессов, так же при необходимости в других сервисах системы управления данными (использование процедур на уровне БД, формирование мапплетов);
- возможность работать с большим количеством типов источников и приемников данных (oracle, ms sql, my sql, файлами и т.д.);
- поддержка различных интеграционных решений (различные корпоративные интеграционные шины, менеджеры очередей и т.д.);
- наличие возможности реализации логики преобразования данных, их профилирования, очистки.
При реализации систем управления данными часто требуется репликация в режиме реального времени или в режиме близком к реальному времени. Однако большие объемы информации приводят к увеличению нагрузки на базы данных при использовании стандартных средств ETL, что делает процесс репликации зависимым от регламента работы системы, а следовательно режим близкий к реальному времени становится недостижим.
Решением данной проблемы служит использование специализированных систем репликации данных, позволяющих снизить нагрузку на базу данных. Данные системы предназначены для репликации изменений в режиме реального времени. Они используют принцип захвата изменений на основе журналов (логов) для минимизации воздействия на базы данных систем-источников, при этом не оказывая воздействия на производительность базы данных.
Мои статьи:
1. Принципы построения модели данных
Семантика данных
Поддержание производительности