2016-05-26 4 views
1

Я работаю над проектом, который собирает данные из разных источников и сторонних источников данных в наши хранилища данных (DI). Для этого мы использовали Pentaho.В чем разница между программным обеспечением для интеграции данных и ESB?

Я хочу знать, можно ли это сделать с помощью ESB (Camel или Mule)? И какие еще функции ESB приносит, какой DI не предлагает?

Я прочитал много статей на ESB и DI, но ни один из них не смог разрешить этот запрос. Я также прочитал о разъемах данных мула для сторонних источников данных.

ответ

4

DI (интеграция данных не «зависимо-впрыскивание») или подходы ETL, как правило, являются длинными работами в стиле пакетной обработки, чтобы приближаться к решению движущихся данных из системы A в систему B. ESB или легкий интеграционный подход обычно разбить задачу на более мелкие куски (блоки данных или отдельные события на элемент данных) и разрешить другим системам подписываться на поток данных - обычно через корпоративную систему обмена сообщениями - без воздействия на систему A, систему B или существующий проект кода. Это также означает, что в плане проекта не требуется требование зависимости от человека. Если система C приходит, они не обязательно требуют ресурсов от команды System B для доступа к потоку данных.

Существуют подходящие варианты использования, которые должны быть как в любой заданной среде. Тем не менее, по моему опыту (как правило, рекомендуют использовать лучшие данные/МДМ), если у вас есть исходный поток данных, какая-то другая система захочет также получить доступ к потоку данных в какой-то момент. Если возможность доступа к потоку данных без необходимости менять существующий код, системы или другие команды в вашей организации звучит полезно в вашем случае использования, то было бы неплохо спроектировать это для начала и идти с использованием подхода ESB. Это позволяет новым заинтересованным потребителям войти и не переписывать процесс, используемый существующими системами. ESB/облегченные системы интеграции, как правило, позволяют использовать этот шаблон более эффективно, чем инструменты DI/ETL.

Некоторые случайные мысли:

  • поддержки ESB, что «одна плохая запись проблема», позволяя вам маршрут, что в очередь ошибок, чтобы иметь человека взглянуть на него, а затем переиздать
  • ETL/DI, как правило, чтобы иметь прямолинейное преимущество скорости ускоренного пути
  • ETL/DI начинает усложняться, как только вы пройдете мимо простого случая использования точки с точкой
  • IMHO: ESB лучше поддерживают поддержку версий наборов данных, сервисов и модели данных.
  • ETL/DI, как правило, имеет более зрелый UI для нетехнических пользователей для выполнения задач отображения данных
  • ESB является действительно сильны в поддержке времени выполнения развязки систем. Если система B не работает, данные просто находятся в очереди до тех пор, пока она не вернется. Не долго не работает блокируя поток или риск того, чтобы перезапустить работу
  • ESB имеет немного более высокую нарастанию кривую
  • ETL/DI, как правило, приводит к ESB в конечном счете (большинство производителей предлагают как продукт DI и ESB)
+0

Мэтт, ваш ответ более чем достаточно, но я хочу получить больше ответов здесь! – user34567