1 前言
ETL,是英文 Extract-Transform-Load 的缩写,用来描述将数据从来源端经过抽取(extract)、转换(transform)、加载(load)至目的端的过程。ETL是构建数据仓库的重要一环,用户从数据源抽取出所需的数据,经过数据清洗,最终按照预先定义好的数据仓库模型,将数据加载到数据仓库中去。本文档讲述的就是抽取的过程。
木匠要建造房屋首先要做的事情就是将森林里的树木砍伐下来,运载到自己的仓库中以备使用,这一过程实际上就是我们所说的数据抽取。伐木、运输只是一个过程,具体用什么工具和方案就由我们自己决定,数据抽取也是一样,可以用不同的方法来完成这一过程,比如dblink、kettle……当然不同的方法也有不同的优势和劣势,并不能说什么方法更好,要根据具体的业务情况来决定用什么方法。下文主要讲述了dblink和kettle。
2 DBlink
2.1 DBlink是什么
dblink(Database Link)数据库链接顾名思义就是数据库的链接 ,就像电话线一样,是一个通道,当我们要跨本地数据库,访问另外一个数据库表中的数据时,本地数据库中就必须要创建远程数据库的dblink,通过dblink本地数据库可以像访问本地数据库一样访问远程数据库表中的数据。
2.2 创建dblink
2.2.1 方法一:通过PL/SQL创建
找到对象窗口的【database links】->右键【新建】
按照如图所示设置:
设置完成点击应用
2.2.2 方法二:用sql语句
新建sql窗口,执行一下语句
create public database link dblinkNAME
connect to userName identified by password
using 'IP:1521/orcl';
<