在线客服
扫描二维码
下载博学谷APP扫描二维码
关注博学谷微信公众号
数仓模型设计有几种?好的数仓项目应看架构以及所用到的模型,维度建模是专门应用于分析型数据库、数据仓库、数据集市建模的方法。数据集市可以理解为是一种小型数据仓库。
维度模型是数据仓库工程领域最流行的数仓建模经典。维度建模以分析决策的需求出发构建模型,构建的数据模型为分析需求服务,因此它重点解决用户如何更快速完成分析需求,同时还有较好的大规模复杂查询的响应性能。
维度表示要对数据进行分析时所用的一个量,比如你要分析产品销售情况, 你可以选择按类别进行分析,或按区域分析。这样的按..分析就构成一个维度。上图中的用户表、商家表、时间表这些都属于维度表。这些表都有一个唯一的主键,然后在表中存放了详细的数据信息。
事实表发生在现实世界中的操作型事件,其所产生的可度量数值,存储在事实表中。从最低的粒度级别来看,事实表行对应一个度量事件,反之亦然。
数据仓库中不需要严格遵守规范化设计原则。因为数据仓库的主导功能就是面向分析,以查询为主,不涉及数据更新操作。事实表的设计是以能够正确记录历史信息为准则。维度表的设计是以能够以合适的角度来聚合主题内容为准则。
数仓模型设计维度建模三种模式:
1、 星型模型
星形模式(Star Schema)是最常用的维度建模方式。星型模式是以事实表为中心,所有的维度表直接连接在事实表上,像星星一样。
星形模式的维度建模由一个事实表和一组维表成,特点:维表只和事实表关联,维表之间没有关联;每个维表主键为单列,且该主键放置在事实表中,作为两边连接的外键;以事实表为核心,维度表围绕核心呈星形分布
2、雪花模式
雪花模式是对星形模式的扩展。雪花模式的维度表可以拥有其他维度表的,虽然这种模型相比星型更规范一些,但是由于这种模型不太容易理解,维护成本比较高,而且性能方面需要关联多层维表,性能也比星型模型要低。所以一般不是很常用。
3 、星座模式
星座模式是星型模式延伸而来,星型模式是基于一张事实表的,而星座模式是基于多张事实表的,而且共享维度信息。前面介绍的两种维度建模方法都是多维表对应单事实表,但在很多时候维度空间内的事实表不止一个,而一个维表也可能被多个事实表用到。在业务发展后期,绝大部分维度建模都采用的是星座模式。
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
面向文档的数据库系统MongoDB详解
MongoDB是一个面向文档的数据库系统。使用C++编写,不支持SQL,但有自己功能强大的查询语法。MongoDB使用BSON作为数据存储和传输的格式。BSON是一种类似JSON的二进制序列化文档,支持嵌套对象和数组。
8631
2019-07-12 16:18:59
你了解CDA数据分析师吗?CDA数据分析师是做什么的?
在数据时代快速发展的现在,涌现出一批高薪的岗位,像大数据开发工程师、数据挖掘工程师、数据分析师等等。相对开发工程师等类型更偏向于技术的岗位而言,数据分析师对于学习者的要求同样严格。不过,平时我们经常听到CDA数据分析师,它与数据分析师是什么关系?CDA数据分析师是做什么的呢?
8872
2019-09-25 17:49:53
利用Python数据分析可以做什么?
随着大数据时代的来临和Python编程语言的火爆,Python数据分析早已成为现在职场人的必备核心技能。那么利用Python数据分析可以做什么呢?简单来说,可以做到的内容有很多,比如检查数据表、数据表清洗、数据预处理、数据提取和数据筛选汇总等等。下面小编来为大家详细讲解一下这些用处。
6255
2019-12-20 21:47:50
Python数据分析怎么学?要掌握哪些内容?
众所周知,与数据分析相关的Python库很多,利用Python可以生成数据表、检查数据表、数据表清洗、数据预处理、数据提取和数据筛选汇总等等,因此我们常常会使用Python完成数据分析。那么到底Python数据分析怎么学?要掌握哪些内容呢?下面我们来看看Python数据分析的学习路线和具体内容。
5077
2019-12-31 10:25:09
数据分析零基础怎么学?
大数据时代,数据为王。各大企业都建立了数据分析部门,截止目前,数据分析岗位缺口高达150万以上。而且数据分析与其说是一个岗位,更是一个重要技能,因此原来越来越多的小伙伴开始学习数据分析,那么数据分析零基础应该怎么学呢?下面小编将从数据分析的学习周期、学习内容以及职业发展规划三个方面,带大家充分了解数据分析这一行业。
4745
2020-07-27 10:59:07