首页 > 数据库 > 数据库开发技术 > 数据仓库|数据模型该如何设计
数据仓库数据模型设计是构建数据仓库的核心过程之一。其目的是将多个数据源中的数据整合到一个统一的数据模型中,以支持业务分析和决策。然而,在数仓建设的过程中,由于未能完全按照规范操作, 从而导致数据仓库建设比较混乱,常见以下问题:
本文主要探讨关于数仓数据模型建设的一些方法论和经验,通过此篇文章你可以收获:
ODS :操作型数据(Operational Data Store),指结构与源系统基本保持一致的增量或者全量数据。作为DW数据的一个数据准备区,同时又承担基础数据记录历史变化,之所以保留原始数据和线上原始数据保持一致,方便后期数据核对需要
CDM :通用数据模型,又称为数
据中间层(Common Data Model),包含DWD、DWS、DIM层。
ADS :面向应用的数据服务层(Application Data Service)。整合汇总成分析某一个主题域的服务数据,面向应用逻辑的数据加工。该层主要存放数据产品个性化的统计指标数据,这一层的数据直接对接数据的消费者,是产品、运营等角色可以直接感知理解的一层,大多数这一层的表都可以直接在BI上通过图表的形式直接透出。
模型设计基本原则
一个逻辑和物理模型由哪些记录和字段组成,应该遵循最基本的软件设计方法论的高内聚和低耦合原则。主要从数据业务特性和访问特性两个角度来考虑:
将高概率同时访问的数据放一起,将低概率同时访问的数据分开存储。
越是底层公用的处理逻辑更应该在数据调度依赖的底层进行封装与实现,不要让公共的处理逻辑暴露给应用层实现,不要让公共逻辑在多处同时存在。
适当的数据冗余换取查询和刷新性能,不宜过度冗余与数据复制。
处理逻辑不变,在不同时间多次运行数据结果确定不变。
关于ODS层的处理很简单,基本上是将业务系统数据原封不动的回流即可,一般采用增全量的方式。
一般情况下,一个比较好的公共层遵循一下几个原则:
减少直接引用ODS表,降低源系统变更带来的改造成本,架构合理上考虑,公共层针对复用性的场景进行模型沉淀,当源系统变更时,通过公共层适应性改造屏蔽下游变更。
参考资料:
http://blog.itpub.net/70027827/viewspace-2958020/
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69949806/viewspace-2958801/ ,如需转载,请注明出处,否则将追究法律责任。