Изобразите организацию с множеством отделов и систем, многие из которых должны обмениваться данными. Например, один модуль/система отвечает за обновление данных клиента, но многие отделы/системы должны иметь возможность читать и связывать данные клиента с собственными данными. В такой ситуации, как вы оцениваете использование веб-сервисов для совместного использования этих основных бизнес-данных в нескольких системах?Услуги по обмену данными?
Кажется, есть несколько моделей использования, чтобы рассмотреть:
- Применение для поиска одной записи - не реальные проблемы здесь. При переключении с других механизмов (например, дублировании данных по нескольким базам данных и затем использовании запросов базы данных для извлечения) на веб-службы может быть небольшое ухудшение производительности, но это может быть приемлемо во многих случаях.
- Приложение, отображающее таблицу данных, в которой источник данных для столбцов охватывает несколько баз данных. Например, показывая список имен клиентов вместе с их заказами. Если оба находятся в одном источнике данных, это легко развить, а производительность будет быстрой. Если имена клиентов вытаскиваются из базы данных CRM, а информация о заказе вытягивается с использованием веб-службы системы заказов, то разработка сложнее, потому что данные должны быть объединены, а выполнение замедляется, потому что средний уровень имеет две (или более) операции поиска данных, а затем должен пересекать более одного набора данных.
- Приложение для поиска данных, в которых критерии поиска охватывают несколько систем. Если система не может присоединиться к элементам данных и указать все предикаты и порядок сортировки в одном запросе, это становится очень трудным для разработки и очень медленным для выполнения.
Обратите внимание, что каждая из этих моделей использования пытается использовать веб-службы для извлечения данных в рамках одной организации/сети. Могут ли быть созданы веб-службы в соответствии с каждой из этих моделей использования?
Хорошие мысли. Спасибо, Адриан. Как одна транзакционная система делится своими данными с другими транзакционными системами, где вы работаете? – jlpp
В основном через ETL-процессы. MS SSIS широко используется. Мы делаем копию некоторых данных мэйнфрейма в Oracle Data Mart каждые 2 дня (я думаю), это плоский файл. Продукт Hyperion от Oracles используется для корпоративных отчетов - я считаю, что у него есть некоторые рабочие места для перемещения данных. Поэтому нет единой системы для всего. –