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

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

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

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

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

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

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

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

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

时间: 2024-08-14 06:37:57

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

转:BI中事实表和维度表的定义

  bi数据仓库产品数据库存储    一个典型的例子是,把逻辑业务比作一个立方体,产品维.时间维.地点维分别作为不同的坐标轴,而坐标轴的交点就是一个具体的事实.也就是说事实表是多个维度表的一个交点.而维度表是分析事实的一个窗口.         首先介绍下数据库结构中的星型结构,该结构在位于结构中心的单个事实数据表中维护数据,其它维度数据存储在维度表中.每个维度表与事实数据表直接相关,且通常通过一个键联接到事实数据表中.星型架构是数据仓库比较流向的一种架构.         事实表是数据仓库结构

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

一个典型的例子是,把逻辑业务比作一个立方体,产品维.时间维.地点维分别作为不同的坐标轴,而坐标轴的交点就是一个具体的事实.也就是说事实表是多个维度表的一个交点.而维度表是分析事实的一个窗口. 首先介绍下数据库结构中的星型结构,该结构在位于结构中心的单个事实数据表中维护数据,其它维度数据存储在维度表中.每个维度表与事实数据表直接相关,且通常通过一个键联接到事实数据表中.星型架构是数据仓库比较流向的一种架构. 事实表是数据仓库结构中的中央表,它包含联系事实与维度表的数字度量值和键.事实数据表包含描述

mysql中生成时间维度表

利用mysql常用日期函数生成时间维度表,效率最高,最简单,无需其他的一些工具支持.生成结果示例如下图: # time span SET @d0 = "2012-01-01"; SET @d1 = "2012-12-31"; SET @date = date_sub(@d0, interval 1 day); # set up the time dimension table DROP TABLE IF EXISTS time_dimension; CREATE T

《BI那点儿事—数据的艺术》理解维度数据仓库——事实表、维度表、聚合表

事实表 在多维数据仓库中,保存度量值的详细值或事实的表称为“事实表”.一个按照州.产品和月份划分的销售量和销售额存储的事实表有5个列,概念上与下面的示例类似. Sate Product Mouth Units Dollars WA Mountain-100 January 3 7.95 WA Cable Lock January 4 7.32 OR Mountain-100 January 3 7.95 OR Cable Lock January 4 7.32 WA Mountain-100 F

【转载】维度表和事实表的区别

免责声明:     本文转自网络文章,转载此文章仅为个人收藏,分享知识,如有侵权,请联系博主进行删除.     原文作者:知识点滴      原文地址: 维度表, 事实表, 数据仓库, BI...   以前一直对维度表, 事实表, 数据分析, BI等概念等有一些模糊. 这几天的学习终于让这些有了一些眉目了: 维度表示你要对数据进行分析时所用的一个量, 比如你要分析产品销售情况, 你可以选择按类别来进行分析,或按区域来分析. 这样的按..分析就构成一个维度.前面的示例就可以有两个维度:类型和区域.

BI事实上的和维表定义

一个典型的例子是,逻辑业务相比立方体,产品尺寸.时间维度.位置尺寸,分别作为不同的轴.轴的交点是一个详细的事实.这一事实表是多维度的交叉点的一个表.维表是事实的分析的一种形式. 首先介绍下数据库结构中的星型结构,该结构在位于结构中心的单个事实数据表中维护数据,其他维度数据存储在维度表中.每一个维度表与事实数据表直接相关,且通常通过一个键联接到事实数据表中. 星型架构是数据仓库比較流向的一种架构. 事实表是数据仓库结构中的中央表,它包括联系事实与维度表的数字度量值和键.事实数据表包括描写叙述业务(

什么是码表,什么是维度表?

整理业务库的库表字段和字段含义的时候,遇到了码表的概念,码表是什么,和维度表又是什么关系呢? 首先,码表没有明确的定义. 百度搜索码表,可以看到和数据处理相关的解释是:码表是 编码表(或代码表)的简称. 编码表: 是一种代码说明表格. 用来帮助用户明确无解释数据和字符 代码的含义. 例如:性别码表的值为男和女.类似于数据字典. 以性别代码表为例: sex value 1 男 2 女 我想获得一个性别为男的值只需要设置sex.id='1'就可以了. 以上就是关于码表的介绍. 我们不禁想到这和数据仓

维度表, 事实表, 数据仓库, BI...

以前一直对维度表, 事实表, 数据分析, BI等概念等有一些模糊. 这几天的学习终于让这些有了一些眉目了: 维度表示你要对数据进行分析时所用的一个量, 比如你要分析产品销售情况, 你可以选择按类别来进行分析,或按区域来分析. 这样的按..分析就构成一个维度.前面的示例就可以有两个维度:类型和区域.另外每个维度还可以有子维度(称为属性),例如类别可以有子类型,产品名等属性.下面是两个常见的维度表结构: 产品维度表:Prod_id, Product_Name, Category, Color, Si

【BIEE】04_当维度表中的维不存在事实表中,需要展示所有维度并且数据类展示为0

有时候,我们往往会存在这样的需求 例如:事实表的数据如下 EMP_FACT表示事实表,DIM_LEVEL是维度表 预期效果:(根据员工信息,分析各等级员工工资与员工个数) 我们在BIEE报表中新建报表,然后展示报表,展示结果如下: 图1 那么这个效果跟我们的预期效果可是差别比较大的!我们如何来改变这种差别呢? 首先我们分析上面2个表,我们需要解决2个问题,分别是: ①优秀.良好.一般按照顺序排列 ②当事实表不存在[一般]级别数据记录时,展示该维度,并且对应值为0 环境准备 首先在数据库建立事实表