数据仓库ETL工具箱——ETL的两条线
程序员文章站
2022-03-26 14:35:12
上文书我们说到,大英雄ETL手持两把钢鞭,一条上刻着:需求/现状 -> 架构 -> 实现 -> 测试/发布;另一条隐约闪现着:抽取 -> 清洗 -> 规格化 -> 提交 的字样。大英雄闷闷不乐,因为这俩家伙事儿不一样长。。。。。。为什么是两条线?为什么ETL设计时是这两条线并存。其一我们从名字上就能看出,“E”(抽取)、“T”(转换)、“L”(加载),说的就是数据流的处理,这条线也是ETL的功能主线;而ETL的设计使用是要针对不同企业的不同场景,因此没有一种ETL...
上文书我们说到,大英雄ETL手持两把钢鞭,一条上刻着:需求/现状 -> 架构 -> 实现 -> 测试/发布;另一条隐约闪现着:抽取 -> 清洗 -> 规格化 -> 提交 的字样。大英雄闷闷不乐,因为这俩家伙事儿不一样长。。。。。。
为什么是两条线?
为什么ETL设计时是这两条线并存。其一我们从名字上就能看出,“E”(抽取)、“T”(转换)、“L”(加载),说的就是数据流的处理,这条线也是ETL的功能主线;而ETL的设计使用是要针对不同企业的不同场景,因此没有一种ETL工具集能完全100%的符合两家不同的企业使用,因此规划和设计主线就显得至关重要。好比一个企业没有确定业务运营模式就架上各种复杂的IT技术,最终的结果也只能是“知识的诅咒”,无法实现企业的价值。为了形象数据流主线和规划与设计主线,书中给了两幅图,便于形象化理解两条主线的内容:
图一 数据流主线
图二 规划与设计主线
由于数据流主线是大家耳熟能详的,因此我们先从数据流主线说起
抽取
抽取的步骤包括:
- 读取数据模型
- 连接并访问数据
- 调度源系统,截取通知和后台程序
- 捕获变化数据
- 将抽取的数据集结到磁盘
清洗
清洗的步骤包括:
- 强制列属性
- 强制结构
- 强制数据和数值规则
- 强制复杂业务规则
- 创建元数据来描述数据质量
- 将清洗后的数据集结到磁盘
规格化
规格化的步骤包括:
- 业务标志(在维表中)的规格化
- 业务度量和绩效指标(在事实表中)的规格化
- 复制
- 家庭关联信息的规格化(Householding)
- 国际化
- 将规格化的数据集结到磁盘
加载
ETL的加载包括:
- 加载平面型和雪花型维度
- 生成时间维
- 加载退化维
- 加载子维
- 加载缓慢变化维(包括类型 1、 2、 3)
- 规格化维和规格化事实
- 处理迟到维和迟到事实
- 加载多值维
- 加载 ragged 层次维
- 加载维中的文本型事实
- 为事实表运行代理健 pipeline
- 加载三种基础事实表粒度
- 加载和更新聚合表
- 将提交数据集结到磁盘
由于篇幅限制,以上详情我们下回分解!
本文地址:https://blog.csdn.net/will001449/article/details/107330358