本文简述使用OWB创建数据仓库的一般过程。Oracle的OWB是目前最好的三大ETL产品之一。OWB不但可以可以完成数据的抽取、转换和加载,还能帮助用户在Oracle数据库中创建ROLAP(Relational Online Analysis Process)和MOLAP(Multidimensional Online Analysis Process)数据仓库对象,数据质量管理,商务智能定义等。
建议直接安装Oracle 11g(如Oracle 11.2.0.1.0),其安装包中直接包含了OWB和依赖的组件。若使用Oracle 10g(如Oracle 10.2.0.1)则需要下载Oracle数据库安装包和Oracle Database 10g Companion CD Release 2 (10.2.0.1.0),后者包含OWB所必须的Oracle Workflow Server和Oracle HTTP Server。
注意:不要通过执行companion目录下的setup.exe文件来安装,而是通过选择你本机上已经安装好的oracle 10g R2的Universal Installer来安装,在Oracle Universal Installer: 指定源位置界面中,点击“浏览”按钮,定位companion\stage\products.xml文件,然后点击“下一步”按钮,选择“Oracle Database 10g Products 10.2.0.1.0”即可正常安装这些组件。步骤如下:
安装了oracle10g,在D:\oracle\product\10.2.0下。
安装了OWB10g2,在D:\oracle\product\10.2.0\OWB下。
下载了Oracle Workflow 2.6.4。安装时候,指定主目录详细信息如下:
名称:OraDb10g_home1
路径:D:\oracle\product\10.2.0\db_1
安装Oracle Workflow 2.6.4的过程,在“选择要安装的产品”窗口,选择了第二项,即“Oracle Database 10g Products 10.2.0.1.0”。此时已包括了HTTP Server的安装。
Oracle Workflow 2.6.4安装后,配置 Workflow Configuration Assistant。
最后,你需要赋予owf_mgr “EXECUTE ANY PROCEDURE” 的权限,用sys 账号连到SQL Plus,并赋予owf_mgr 如下权限.
grant execute any procedure to owf_mgr;
(*)若要单独安装Oracle Workflow,则选择Oracle Database10g Companion Product;若要安装HTTP Server则选择Oracle HTML DB 10.2.0.1.0。
使用OWB进行ETL设计和部署前,需要先通过Repository Assistant的向导创建资料库和用户(包括资料库所有者和资料库使用者)。
(1)进入“Design Center”
(2)在Design Center中创建Control Center,并且将其配置为缺省的Control Center
(3)打开“控制中心管理器(Control Center Manager)”
Design Center负责设计工作,这些设计工作都会自动地存储到OWB资料库中。
开始->程序->Oracle - OWBHOME名称->Warehouse Builder->Design Center
数据源位置名称为:HR_LOCATION
用户名(User Name):连接数据源的表的数据库用户名称
口令(Password):连接数据源的表的数据库用户的密码
主机(Host):作为数据源的表所在的数据库服务器的IP地址(注意,要与数据库服务器.../network/admin目录下的listener.ora中的IP一致)
端口(Port):作为数据源的表所在的数据库服务器的端口
服务名(Service Name):作为数据源的表所在的数据库的Service Name
注意:版本(Version)选择10.2,若登录Design Center的用户不具有访问上述用户表的权限,则需要执行赋权语句:
select 'grant select on user2.'||t.table_name||' to user1;' from dba_tables t where t.owner='user2';
'或者赋给所有表的select权限
'grant select any table to user2
一种方式是“新建”模块后,选中“完成后导入”复选框,自动进入“导入”向导;另一种方式是选择刚才建立的数据源模块,单击右键“导入”
通过这个步骤将上面两个步骤中创建的工作流和计划进行关联,即“工作流”将按“计划”执行。
至此,我们完成了Design Center中的设计工作,下面进入Control Center中部署和运行刚才所作的设计,完成整个ETL流程。
4.2 将创建的Control Center设置为缺省
在Design Center中,选择菜单“工具”-“控制中心管理器(Control Center Manager)”,输入OWB资料库所有者口令,即可进入控制中心窗口
在控制中心窗口左侧列出了项目下的所有位置。
在本文的例子中,由于实际的目标数据库和设计时的目标数据库是同一个,并且在Design Center设计ETL过程时,我们编辑了所有的位置,因此不必在控制中心管理器注册位置。但在实际应用中,一般地,开发设计时的目标数据库、数据源、进程流、计划所在的数据库和实际使用的不同,因此在部署上线时需要重新注册位置。这是OWB设计一次、部署多次的特性。
常见错误:
(1)RPE-02072: 在 Oracle Workflow 资料档案库中尚未启用 Oracle Workflow NLS 语言 ZHS。请使用 Oracle Workflow wfnlena.sql 服务器端脚本启用该语言。
C:\oracle\product\10.2.0\db_1\wf\admin\sql>sqlplus owf_mgr/owf_mgr @wfnlena.sql ZHS Y
注意路径。
(2)RPE-02260: Database User OWF_MGR must be a Control Center User. Please use the OWB Design Client against the Control Center repository to grant the Control Center User role.
您需要授予 Oracle Workflow (OWF) 用户 owf_mgr 特定角色,使其具有在 Control Center 中执行进程流的权限。
您不必将 Control Center 的口令嵌入 OWF 用户所拥有的数据库链接中。Control Center 用户具有高特权,其口令受到严格控制。
要注册 OWF 用户,可以从 Global Explorer 面板中的 Security > Users 节点使用 Register Warehouse Builder Users 向导。要访问 Security 节点,请确保以信息库所有者的身份登录到 Design Center。
1)
如果尚未登录,以用户名/口令 rep_owner/rep_owner 登录 Design Center。
在 Global Explorer 面板中展开 Security 节点。右键单击 Users 节点并选择 New。
注:在创建新用户之前,您必须先保存或恢复您的更改。要保存以前的更改,请从 Design 菜单中选择 Save All,或者单击工具栏中的。
此时出现 Create User 对话框。
2)
在 Create User 对话框中,您可以从可用数据库用户列表中进行选择,也可以创建一个新用户,该用户将自动注册为 Warehouse Builder 用户。
在本教程前面的部分中,我们说明了如何安装 Oracle Workflow Server,如何使用 Oracle Workflow Configuration Assistant,以及如何将 owf_mgr 指定为工作流帐户。其结果是将 owf_mgr 创建为数据库用户。从 Available DB Users 列表中选择 owf_mgr,单击 > 将其移至 Selected Users 列表。单击 OK。
注意,owf_mgr 用户已添加到 Global Explorer 面板的 Security > Users 节点中。
查看“目标用户”下的目标表T_JQ_CJJL,是否记录了从数据源表映射过来的数据。
Oracle Corporation 2006.Oracle BI Warehouse Builder 10g Release 2自学教程
http://www.oracle.com/ocom/groups/public/@otn/documents/webcontent/229051_zhs.htm
http://doc.chinaunix.net/oracle/200802/159388_7.shtml