OWB即Oracle Warehouse Builder,是oracle实现数据仓库的一个工具,实现数据仓库说白了就是把数据从其他很多个数据库经过清洗、转换加载到数据仓库中,故owb所完成的也就是这个功能。
既然是从源数据库把数据加载到数据仓库中,那么就必须连接到源数据库和目标数据库,所以owb提供了“位置(LOCATION)”的概念,其实就是数据库连接信息,包括数据库服务器地址、用户名密码等信息。
建好位置,下一步就是建数据库模块,owb号称支持大部分数据库而且还包括平面文件,所以在菜单上数据库下面列举了常见的数据库,我们选择相应的数据库,点击新建,如新建oracle模块,这个数据库模块分两个概念,一个是源数据,对于此,我们只需要把源数据库中我们需要的对象导入进来即可,如表或视图。另外一个是目标数据库模块。数据库模块包括表、映射、纬度、立方体等信息。我们在目标数据库模块下面建表,之后把表部署到目标数据库中(即在目标数据库中自动新建了这个表结构),之后建一个这这个表对应的映射文件,映射文件既是描述该表如何从源数据库加载到这个表中的。至此,数据怎么从源数据库中到目标数据库中我们已经清楚了,需要提两点,一是源数据库可以是各种不同的数据库,而目标数据库必须是oracle数据库,而且该oracle数据库必须装有owb相关的功能,而且目标数据库的用户必须具有owb相应的角色。
前面这些做完后数据怎么从源数据库到目标数据库我们已经清楚了,但作为一个完整的系统,这些完全是不够了,有时候两个表加载的之间是有顺序的,如必须先加载A表,之后根据A表加载B表的数据,所以owb客户端提供了一个owf的功能,即oracle workflow,进程流,这个功能类似于我们常画的流程图,我们按照owb提供的界面画好这个图,那么映射文件就会按照我们想要的顺序一下子执行完了。还有一点,有时候这些映射文件是需要定时执行的,我们不可能专门指派几个人天天手动执行,所以owb也提供了定时执行的功能,而且设置起来也非常灵活和方便。
总结一下:owb的流程既是先建表,之后建表对应的映射,n张表及其对应的映射建完后建对应的进程流,之后建计划,最后部署上去让这些映射按照计划及其进程流执行即可。之后强调一点,owb客户端可以单独装到一个机器上,启动的时候只需把这个客户端连接到装有owb服务端的服务器上即可。这样可以有多个客户端连接到一个服务器上进行工作。owb的核心其实是映射这个功能,它能让数据从源数据库按照自己的思路加载到目标数据库。
: