oracle 加载数据戽_走进大数据丨 ETL - Load(数据加载)

6a74a6a993b66bc26c6a54571526b208.png

LOAD 加载经转换和汇总的数据到目标数据仓库中,可实现SQL或批量加载数据加载(Load) 经过数据转换生成的文件的结构与数据仓库数据表的结构完全一致,可以直接通过数据加载工具,以Bulk Load的方式加载到数据仓库中。数据加载工作以oracle数据库为例大致可以分为3步进行。

加载准备

在真正进行数据加载之前还可能需要完成以下准备工作。

删除数据仓库中数据表的索引,提高加载效率。主要是针对detail及fact大表,可以直接调用DBA所创建的索引维护脚本。DBA调试过数据仓库后,必须更新相应的索引维护脚本,以保证ETL能够正确删除和建立索引。

加载

Load主要完成将转换后文件的数据加载到数据仓库的表中。需要用到的加载方式有三种

Insert:只需要将转换后文件所有数据完全Insert到目标表中。UpdAdd(Update Add):需要对目标表同时做Update及Insert操作,根据primary key,对于已有的记录进行Update操作;对于不存在的记录做Insert的操作;对于数据量大的表,由于此操作的效率非常低可以采用先将转换后文件分割为Delet文件及Insert文件,然后先将Delete文件中的记录根据 primay key对应从数据仓库中删除,然后再从Insert文件中将所有记录全部Insert到目标表中。Refresh:即将目标表的数据完全更新,一般的做法是先Truncate目标表的数据,然后再完全 Insert要加载的记录。加载过程中数据仓库关闭数据RI(Referential Integrity)管理功能,数据库的RI检查由ETL应用程序完成。

加载后

  • 重新生成索引,在加载后阶段删除的索引需在此重建。该过程也是调用DBA维护的索引维护脚本。
  • 文件清理:删除不需要的临时文件及临时表。

使用装载工具或数据查询语言(SQL)时注意点:效率问题、避免违反约束条件,注意装载顺序。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值