数据仓库模型建设规范1.概述数据仓库不同于日常的信息系统开发, 除了遵循其他系统开发的需求、分析、设计、测试等通常的软件生命周期之外,它还涉及到企业信息数据的集成, 大容量数据的阶段处理和分层存储, 数据仓库的模式选择等等, 因此数据仓库的模型设计异常重要, 这也是关系到数据仓库项目成败的关键。物理模型就像大厦的基础架构, 就是通用的业界标准, 无论是一座摩天大厦也好, 还是茅草房也好, 在架构师的眼里, 他只是一所建筑, 地基—层层建筑—封顶, 这样的工序一样也不能少 , 关系到住户的安全, 房屋的建筑质量也必须得以保证, 唯一的区别是建筑的材料 , 地基是采用钢筋水泥还是石头, 墙壁采用木质还是钢筋水泥或是砖头; 当然材料和建筑细节还是会有区别的, 视用户给出的成本而定; 还有不可忽视的一点是, 数据仓库的数据从几百GB到几十 TB不等 , 即使支撑这些数据的RDBMS无论有多么强大 , 仍不可避免地要考虑数据库的物理设计。数据仓库建模的设计目标是模型的稳定性、自适应性和可扩展性。为了做到这一点,必须坚持建模的相对独立性、业界先进性原则。2.数聚模型架构在数聚项目实施过程,我们一般将数据仓库系统的数据划分为如下图所示几个层次。2.1.数据架构图2.2.架构工作方法规范数据类型抽取方式转换方式加载方式表类型变化类型加载过程1. 有时间戳2. 数据量巨大3. 交易事务表4. 周期数据处理增量变化抽取落地 TMP区清洗转换标识增删改落地 DCI 区增量变化加载维表新增新增代理键。插入记录修改如果须保留历史,新增代理键。插入记录如果无须保留历史,根据代理键修改记录。删除若为逻辑删除,可等同修改,或在抽取时过滤。若为物理删除,则增量抽取无法判断被删除。事实表新增根据流水号删除目标表数据,查找代理键,然后再加载增量变化数据. 修改删除一般来说,事实表数据不物理删除,如果物理删除,增量抽取方式无法判断出来。1. 无时间戳2. 数据量小的表3. 代码表4. 主数据表5. 初始数据加载全量抽取落地 TMP区清洗转换落地 DCI 区全量加载维表只适合系统初始化数据加载,不区分增删改事实表查找对应代理键,全部加载,适合数据量小的场合,ETL 简单快捷。清洗转换获取增量标识增删改添加时间戳落地 DCI 区增量变化加载维表新增新增代理键。插入记录修改如果须保留历史,新增代理键。插入记录如果无须保留历史,根据代理键修改记录删除维表不处理被删除的维度记录。事实表新增根...