到目前为止,Oracle的ETL工具包括两种,分别是Oracle Warehouse Builder(OWB)和Oracle Data Integrator(ODI)。前者是Oracle自己开发的工具,将在以后介绍。本章先介绍ODI,这个产品的前身是Sunopsis Active Integration Platform,Oracle在2006年收购Sunopsis后,这个产品被重新命名成ODI(Oracle Data Integrator)。主要定位在数据集成和ETL场景里使用,并被整合进Fusion中间件套件中,不过,今年Oracle又收购了 Goldengate,相信不久的将来我们又能多了一个选择。
OWB和ODI并不是两个完全相同的产品 。 和OWB比较起来,ODI有几个明显的特点。首先,它具有平台无关性特点,因为这个工具是用Java开发的,这也正符合Oracle长期秉承的政策:建设 一个系统武官和硬件无关的工具。Oracle数据库本身也具有这个特点。
其次,这个产品更强化定位于一个EAI工具,而不仅是ETL工具。它不仅能够支持几乎所有的RDBMS数据库,当然也包括Oracle,并且还能支持非常 多的客户应用系统,从PeopleSoft到Sieble、SAP等等。而这一点正是OWB致命缺陷,因为长期以来,OWB只能用于基于Oracle数据 库的环境中,虽然Oracle一直探求增强OWB在数据集成领域的方法,试图让OWB能够面对非Oracle的系统平台。但在现实的多样化企业环境 中,OWB的市场占有率并不高,而Sunopsis已经拥有这个领域比较完善成熟的技术,并且拥有全球约500客户。Oracle也非常清醒地认识到,无 论Oracle能为客户多么强壮的产品,客户的IT环境总是多样的。所以,从Oracle的产品路线图可以看到两个产品的发展方向,OWB将继续作为数据 仓库的ETL产品增强,而ODI则是定位与数据库无关的数据集成策略,二者之间不会相互替代,因为他们通过数据库系统和Fusion中间件分别发展。
ODI提供了call web service的机制,并且ODI的接口也可以暴露为web service,从而可以和SOA环境进行交互。ODI能够检测事件,一个事件可以触发ODI的一个接口流程,从而完成近乎实时的数据集成。
ODI的主要功能特点有:
a.使用CDC作为变更数据捕获的捕获方式。
b.代理支持并行处理和负载均衡。
c.完善的权限控制、版本管理功能。
d.支持数据质量检查,清洗和回收脏数据。
e.支持与JMS消息中间件集成。
f.支持Web Service。