个人学习笔记记录,不做他用
一、ETL 系统
从源系统抽取数据,执行数据质量和一致性标准,然后规格化数据,从而使分散的源数据可以集中在一起使用,最终再以可以展现的格式提交数据,以便应用开发者可以创建应用系统,也使最终用户可以制定决策
消除数据错误并纠正缺失数据
提供对于数据可信度的文档化衡量
为保护数据获取相互作用的数据流程
把多个源数据整合到一起
将数据进行结构化供最终用户使用
二、设计流程
2.1 规划与设计:需求/现状->架构 ->实现-> 测试/发布
需求/现状:
业务需求
数据评估和数据源现状
监察需求
安全需求
数据集成
数据延迟
归档和沿袭
最终用户提交界面
可用的开发技能
可用的管理技能
已有的许可证
架构:
手工编码还是使用ETL 工具
批处理还是流数据处理
水平任务依赖还是垂直任务依赖
自动调度
异常处理
质量控制
恢复与重启
元数据
安全
实现(系统实施):
硬件
软件
编码
文档
特定质量检查
测试/发布:
开发系统
测试系统
生产系统
提交过程
升级方案
系统快照和回滚过程
性能调优
2.2 数据流:抽取->清洗 ->规格化-> 提交
抽取
读取源数据模型
连接并访问数据
调度源系统,截取通知和后台程序
捕获变化数据
将抽取的数据集结到磁盘
清洗
强制列属性
强制结构
强制数据和数值规则
强制复杂业务规则
创建元数据来描述数据质量
将清洗后的数据集结到磁盘
规范化:
业务标志(在维表中)的规格化
业务度量和绩效指标(在事实表中)的规格化
复制
家庭关联信息的规格化(Householding)
国际化
将规格化的数据集结到磁盘
提交:
加载平面型和雪花型维度
生成时间维
加载退化维
加载子维
加载缓慢变化维(包括类型1、2、3)
规格化维和规格化事实
处理迟到维和迟到事实
加载多值维
加载ragged层次维
加载维中的文本型事实
为事实表运行代理健pipeline
加载三种基础事实表粒度
加载和更新聚合表
将提交数据集结到磁盘