维度表(dimension)存放着一些维度属性,例如时间维度:年月日时;地域维度:省份,城市;年龄维度:老年,中年,青年;职称维度:高,中,低。它定义了可以从哪些角度分析事实表。

事实表(fact)存放着一些业务产生的数据,例如:商品订购产生的订单信息,银行的流水信息,erp系统的办公信息。但它不仅存放着上述事实信息,而且存放在事实信息与维度信息关联的键值,例如订单信息里面有日期字段可以和时间维度关联,可以通过银行中的个税流水与收入维度关联量化各个收入群体,erp流水中的员工号可以同职称维度表关联统计公司运行状态。

其实,在设计事实表与维度表的关联关系时,要引入两个模型结构:星型表(star)和雪花表(snow)。

顾名思义,星型表模型是事实表与每个维度表分别关联,事实表位于中央,维度表围绕事实表周围。这种模型结构是一种反范式的设计方式。优点是设计简单,减少了关联事实表和维度表的关联层级,查询效率会高一些,缺点是数据的冗余。例如:事实表student(学号,年龄,姓名,国家,省份,地市,专业。。。),维度表:country(国家编码,国家名称),province(省份编码,省份名称),city(国家编码,省份编码,城市编码,城市名称);则在存储来自同一省份不同地市的学生时,国家和省份就重复存放了。

雪花表模型则是一种规范的范式结构,它的数据组织方式是消除冗余的,能有效减少数据量;优点是减少了冗余并且在关联查询中不容易出现数据重复计算的情况,因为它引入了数据完整性,缺点是维护复杂,增加了关联层级,执行效率较低。例如:事实表student(学号,年龄,姓名,地域,专业。。。),维度表:area(地域编码,国家编码,省份编码,城市编码)country(国家编码,国家名称),province(省份编码,省份名称),city(国家编码,省份编码,城市编码,城市名称)。

接着,有上述星型表和雪花表组成的数据集合就是一个数据集市(datamart),其面向于部门级应用,存放少量的历史数据,数据来源于数据仓库。

在数据集市的底层则为数据仓库(data warehouse),它的数据来源于ODS,存放着大量历史数据,它是ods数据的视图反映。数据存储符合第三范式,面向企业级应用。

另外,ODS(Operational Data Store):是业务产生的数据,是不断变化的数据,例如业务产生的流水数据。

BI中事实表,维度表和数据集市,数据仓库的理解相关推荐

  1. BI中事实表和维度表的定义+具体SQL操作(转载+自己添加实验)

    1个典型的例子是,把逻辑业务比作1个立方体,产品维.时间维.地点维分别作为不同的坐标轴,而坐标轴的交点就是1个具体的事实.也就是说事实表是多个维度表的1个交点.而维度表是分析事实的1个窗口. 首先介绍 ...

  2. BI中事实表和维度表的定义

    一个典型的例子是,把逻辑业务比作一个立方体,产品维.时间维.地点维分别作为不同的坐标轴,而坐标轴的交点就是一个具体的事实.也就是说事实表是多个维度表的一个交点.而维度表是分析事实的一个窗口. 首先介绍 ...

  3. 数据仓库建模方法/范式建模法/维度建模法/事实表/维度表/优缺点/建模流程/概念建模/逻辑建模/物理建模

    常见的有 范式建模法.维度建模法.实体建模法等,每种方法从本质上将是从不同的角度看待业务中的问题,不管是从技术层面还是从业务层面,都代表了哲学上的一种世界观. 1 范式建模法(Third Normal ...

  4. 【HBZ分享】数仓里面的概念-宽表-维度表-事实表概念讲解

    数仓概念 1. 度量值: 可被统计的,比如:次数,销量,营销额,订单表中的下单金额等可以统计的值叫度量值2. 维度表:(1). 对事实描述的信息,每一张表都对应现实世界中的一个对象或概念,比如:用户, ...

  5. mysql日期纬度表_mysql中生成时间维度表

    mysql中生成时间维度表 利用mysql常用日期函数生成时间维度表,效率最高,最简单,无需其他的一些工具支持.生成结果示例如下图: # time span SET @d0 = "2012- ...

  6. 宽表, 窄表, 维度表, 事实表的区别

    在数据开发里, 会涉及到一些概念: 宽表, 窄表, 维度表, 事实表 宽表: 把多个维度的字段都放在一张表存储, 增加数据冗余是为了减少关联, 便于查询. 查询一张表就可以查出不同维度的多个字段 窄表 ...

  7. mysql 事实表 维度表_数据库的事实表与维度表

    维度表示你要对数据进行分析时所用的一个量,比如你要分析产品销售情况,你可以选择按类别来进行分析,或按区域来分析,这样的按照什么分析就构成一个维度.前面的实例就可以有两个维度:类型和区域.另外每个维度还 ...

  8. mysql 事实表 维度表_数据仓库展示模型 - 维度表与事实表的理解

    一.事实表 特点: 1. 由一组表示维度的键和一组数字形式的度量值构成. 2. 维度外键通常是一些数字或字符代码,因为通常事实表会包含极大的数据量,如果直接使用维度描述的话,会对存储性能照成影响. 3 ...

  9. BI中的事实表和维度表

    事实表: 每个数据仓库都包含一个或者多个事实数据表.事实数据表可能包含业务销售数据,如现金登记事务. 所产生的数据,事实数据表通常包含大量的行.事实数据表的主要特点是包含数字数据(事实),并且这些数字 ...

最新文章

  1. pyradiomics的yaml文件参数设置解读、Li‘s have a solution and plan.
  2. eclipse在网页进入时显示重定向过多_使用eclipse快速开发jsp以及编码问题、jsp页面元素、request对象学习的粗略记录...
  3. 读书笔记-《大话数据结构》第二章算法
  4. Python 入门之格式化输出
  5. STL之红黑树容器:set,hash_set,multiset,hash_map,multimap
  6. python中log1p用法_python中logging模块的基本用法
  7. MySQL之命令mysql -- MySQL服务器的客户端工具
  8. Linux shell的标准输入、输出和错误
  9. html的排版标题的是,HTML 5结构排版布局
  10. 芯片破壁者:硅谷“摩西”肖克利和他的半导体实验室
  11. chromium笔记目录
  12. tcp keeplive
  13. 成都盛铭轩:商家怎么装修设计
  14. 游戏开发人员需要了解的5种ASO技术,苹果游戏aso优化
  15. 操作系统之文件管理思维导图
  16. 中国“钱”途最光明10所大学
  17. 出入库管理系统php,php销售供应链管理系统
  18. 分布式消息队列kafka
  19. springboot监听器
  20. PTA 7-2 简化的插入排序 (15 分)本题要求编写程序,将一个给定的整数插到原本有序的整数序列中,使结果序列仍然有序。

热门文章

  1. C#链接mysql 新手容易出错的问题
  2. Flex AIR 文件对象操作
  3. python的collection系列-默认字典(defaultdict)
  4. 对cookie和子cookie操作的封装
  5. 网站程序安全分析器 VB源码
  6. [Java]==和equals()的区别(按照数据类型区分)
  7. [Leedcode][JAVA][第394题][字符串解码][栈][类型转换]
  8. centos 源码安装mysql5.6_CentOS 7下源码安装MySQL 5.6
  9. 车牌识别数据集_行人再识别数据集
  10. Python画板画图之美