数据仓库的演变与目的
数据仓库的最初目的是为了数据分析,将企业各系统的数据汇总到一个离线仓库中,以便进行大规模的查询和分析,从而获得业务指标,辅助决策。
随着信息化和数字化的发展,数据仓库逐渐演变为数据湖,汇聚了企业的所有数据,其应用场景也不再局限于数据分析。
数据仓库的分层理论
在数据仓库的实践中,我们通常遵循以下分层理论:
ODS(操作数据存储):作为采集数据层,保持数据原貌,基本不进行加工。
CDM(公共数据模型):作为整合数据层,使用数仓建模方法整合数据,便于查找和使用。
ADS(应用数据模型):面向具体应用场景,按需加工结果数据。
数仓建模主要集中在后两层,随着经验的积累,衍生出多种建模理论,其中维度建模和实体关系建模最为常见。
维度建模因其适用于大多数分析场景而广受欢迎。
信息整合的逻辑
在业务系统中,信息通常以实体关系模型的形式组织,符合范式标准,但由于技术限制,往往呈现为复杂的雪花状结构。
业务系统依赖数据中间件或框架来辅助查询。
而在数据仓库中,由于设计的不同,这些约束和封装被去除,导致多级分散的数据对SQL查询分析不友好,因此需要数据整合。
整合的目的是构建一个结构清晰的数据集合,既保持信息的完整性,又便于维护。这就是所谓的整合数据层建模,也称为中间层数据模型。
维度建模的方法
维度建模的详细介绍和实践方法可以通过内网搜索获得。
其核心是围绕数据分析的指标进行设计。维度表代表分析的视角,事实表代表计算的对象。
然而,将这种模型应用于信息整合场景时,我们发现并非所有信息都能归为维度,也非所有计算对象都能归为事实。
这种定义上的转换并不唯一,导致理解和使用上的困难。
实体建模的方法
实体关系模型(ER模型)在业务系统中的应用更为广泛,它包括实体对象、业务单据和关系,形成对企业信息的全面覆盖。
ER模型在数据仓库中的应用更接近业务系统模型,适合进行全局信息整合,但对数据研发人员的能力要求较高。
结语
以上是我对数据仓库建模的一些思考。由于个人水平和表达能力有限,这些观点仅供参考,希望对大家有所启发。

数据体系构建👇
数仓解惑:什么是 OneData 体系?
数仓实践:OLAP数仓总结
更多精彩
508

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



