Антон Шмаков, Консалтинговая группа "БОРЛАС
Oracle Data Integrator (ODI) - "чистое" Java-приложение, полностью платформенно-независимое, работающее на любой базе данных, поддерживающей стандарт SQL92.
Oracle Warehouse Builder (OWB) также является Java-приложением, однако для полноценного функционирования ему необходима база данных Oracle.
ODI работает в полностью гетерогенной среде, поддерживает очень большой список источников, включая различные базы данных, бизнес-приложения, плоские файлы, XML-файлы, JMS-очереди, многомерные базы данных и многое другое. Появление этого продукта объясняет стремление Oracle построить общую интеграционную платформу для работы с данными. Эта тенденция проявляется как в построение хранилищ - появление ODI, так в BI - появление Oracle BI EE (бывший Siebel Analytics).
OWB также поддерживает достаточно большой список источников, однако он ограничен возможностями базы данных Oracle. Так отсутствует полноценная поддержка интеграции на основе событий и сервисов. Бывший Sunposis Data Conductor являлся основой для унифицированной платформы интеграции Sunopsis Active Integration Platform. Причем следует отметить, что любые бизнес-правила, работающие в рамках Data Conductor легко переносились в другие компоненты Active Integration Platform. В данном контексте пока не ясны планы Oracle о будущем Active Integration Platform, поскольку эта платформа является аналогом Oracle Enterprise Service Bus, которая уже является частью Fusion Middleware.
ODI построен на ELT (Execute, Load, Transform) архитектуре, генерирует оптимизированный код под любые источники. ODI не использует промежуточного слоя, где осуществляется преобразование данных, т.е. область обработки данных (Staging Area) может находится абсолютно в любой базе данных.
Для полноценной работы OWB необходима база данных Oracle.
ODI располагает оригинальным инструментарием мэппинга данных. Он основан на разделении правил трансформации данных и интеграции, т.е. четко разделяет бизнес-правила (что делать) и саму имплементацию (как делать). Очень удобно хранить и использовать преобразования данных и правила трансформации отдельно от их конкретной имплементации. Это означает что бизнес-правила могут быть одними и теми же для разных баз данных, где будет отличаться только их имплементации. То есть, конкретные особенности базы данных появляются на более поздних этапах разработки и в какой-то степени они отвязаны от бизнес-логики.
В ODI очень быстро и удобно осуществляется процесс разработки, когда создается и потом применяется набор правил . В других системах есть аналоги такого подхода в виде создания шаблонов преобразований, создания составных операторов преобразования.
В ODI существует "тонкий" клиент для управления метаданными и ведения проекта, осуществления аудит, контроля и администрирования самого процесса загрузок данных.
В OWB нет тонкого клиента для ведения и разработки, но есть средства для runtime-управления.
ODI - инструмент дополняющий и усиливающий функционал Fusion Middleware.
OWB - инструмент, который занимает скорее нишу инструментов построения хранилища данных, нежели интеграции систем. Он поставляется вместе с базой данных Oracle и по сути является мощной ее утилитой. Представить себе проект на OWB без базы данных Oracle достаточно трудно. Следует отметить, что новая ценовая и лицензионная политика Oracle явно отражает его отношение к OWB в силу его "бесплатной" поставки вместе с базой данных (Standard Edition One, Standard Edition, Enterprise Edition), то есть купить OWB без базы данных невозможно.
По субъективным ощущениям ODI работает быстрее и "удобнее", чем OWB. Его мощный графический интерфейс помогает создавать любые преобразования, осуществлять контроль качества данных на гетерогенных системах, выполнять сложные и нестандартные вычисления, агрегирования. Однако, как и следовало ожидать,
OWB обладает большим функционалом по части базы данных Oracle, он может формировать более сложный и "мудреный" код.
Также следует отметить, что с выходом версии OWB10gR2 под кодовым названием ' Paris ', этот продукт в целом сделал очень большой шаг вперед как в отношении удобства разработки, скорости, так и в отношении функционала. Он явился, по сути, кардинально новым продуктом. Но время, которое потребовалось на его разработку, было, мягко говоря, чрезмерно большим, поэтому, как мне кажется, он немного запоздал с выходом на рынок.
Появление ODI логично "ложится" в современную тенденцию всеобщей интеграции "всех и всего". На примере Oracle BI EE и ODI становится ясно, что Oracle стремится объединить различные системы, включая бизнес-приложения недавно купленных компаний (PeopleSoft, JD Edwars, Siebel, SPL, Retek и др.) в единую информационную среду. Для этого он предлагает различные подходы:
можно строить аналитику с помощью Oracle BI EE, который может работать в любой гетерогенной среде,
можно использовать ODI для интеграции всех данных,
можно строить хранилище на СУБД Oracle и для этого подойдет OWB.
Остается еще один не понятный вопрос, сможет ли Oracle также успешно развивать свой новый актив ODI, как это делал Sunopsis. Этот вопрос касается всех новых продуктов, которые появляются под брендом Oraсle от сторонних фирм. Не возникнет ли в самом Oracle негативных течений в отношении ODI со стороны конкурирующего OWB или возникнет хорошая конкуренция между разработчиками. Хочется надеяться, что, скорее всего, в ODI появится более серьезная и глубокая поддержка базы данных Oracle, так например, появится поддержка OLAP-опции, которой пока нет, и много других возможностей.
Если надо строить хранилище в среде, в которой преобладает Oracle или просто широко известные базы данных (IBM DB2, MS SQL Server, Sybase, IBM Informix), то надо точно использовать
OWB.
Если среда сильно разрозненная, в которой есть различные источники, включая очереди сообщений, web-сервисы и т.д., то есть по сути дела преобладает составляющая
middleware , то надо использовать
ODI.
Ссылки по теме