数据提取与ETL方法全解析
1. 数据仓库基础原则
在数据仓库中,聚合是常用的操作,它意味着在更高层次上汇总数据。同时,我们希望存入数据仓库的数据是干净且高质量的。例如,不能有无效的电话号码、不含“@”字符的电子邮件地址、不存在的产品代码、容量为54GB的DVD、城市为阿姆斯特丹但州为加利福尼亚的地址,或者某有声读物单价为0美元的情况。为了确保数据质量,在将数据存入仓库之前,需要进行各种检查。
另外两个重要原则是数据泄漏和可恢复性。数据泄漏指的是ETL过程认为已从源系统完整下载了所有数据,但实际上遗漏了一些记录。一个优秀的ETL过程不应出现数据泄漏。可恢复性意味着ETL过程应具有鲁棒性,在发生故障时能够恢复且不会造成数据丢失或损坏。
2. ETL方法与架构
2.1 ETL实现方法
有几种实现ETL的方法:
- 传统ETL方法 :从源系统提取数据,放入暂存区,然后进行转换并加载到仓库,如图7 - 1的上半部分所示。暂存区可以是物理数据库或文件,将数据放入暂存区即意味着将其插入数据库或写入文件。
- 内存转换方法 :ETL服务器直接在内存中进行转换,然后直接更新数据仓库(无暂存),如图7 - 1的下半部分所示。在内存中转换数据比先将其存储在磁盘上更快。如果数据量足够小,可以在内存中进行转换;但如果数据量很大,则需要先将其存储在磁盘上。能否将数据放入内存取决于ETL服务器的内存大小。
- ELT方法 :先从源系统提取数据,加载到数据仓库,然后通过更新仓库中的数据来应用转换,如图7 - 2的下半部分
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



