【维度建模】【第二章】Kimball维度建模-事实表

2.1基本概念

2.1.2维度建模研讨

维度模型应该由业务、模型设计者通过充分的讨论得到。

2.1.3四步骤维度设计过程

维度设计期间主要设计一下四个主要的决策:

  • 选择业务过程
  • 声明粒度
  • 确认维度
  • 确认事实

2.1.4业务过程

表示一次业务的行为。例如获得订单、学生课程注册,

2.1.5粒度

粒度是确定事实表中一行代表什么,原子粒度是最低级别的粒度,通常建议使用原子级别粒度,这样的数据可以承受无法预测的用户查询。

轻度汇总的粒度对性能调整来说非常重要,但这样的粒度往往需要考虑业务的公共问题是什么,

2.1.6维度

维度表包含BI应用所需要的用于过滤及分类事实的描述性属性。

 

2.2事实表技术基础

2.2.1事实表结构

发生在现实生活中的操作型事件,其产生的可度量的值存储在事实表中。因此事实表的结构完全依赖于物理活动。除了数字类型的度量外通常还包含外键用于与维度表进行关联。

查询请求的主要目标是基于事实表开展计算和聚合操作。

2.2.2可加、半可加、不可加事实

事实表中的数字度量可以分为三种类型:

  • 完全可加:可以按照事实表关联的任意维度进行汇总,例如:消费金额,一次地理位置上报。
  • 部分可加:仅能对某些维度进行汇总,例如:订单差额。
  • 不可加:例如,比率。

    对与不可加事实,尽量存储组成这些不可加事实的完全可加分量。比如比率,就存储构成结果比率的分子与分母。

2.2.4一致性事实

如果某些度量出现在不同的事实表,需要注意,如果需要比较或计算不同事实表中的事实,应该保证对这些度量的技术定义是相同。

如果不同事实表的定义是一致的,则这些事实表应该具有相同的命名,反之应该拥有不同的命名用以区分。

2.2.6周期性快照事实表

周期性快照事实表中,每一行汇总了发生在某一周期(天、周、月)的多个度量事件。

粒度是周期的,不是个体的事务。

2.2.7累积快照事实表

累积事实表的行汇总了发生在过程开始和结束之间可预测步骤内的度量事件。

2.2.8无事实的事实表

尽管多数度量事件获取的结果是数字化的,但也存在某些事件仅仅记录某一时刻一系列多维信息。例如某天,某人,在某地,参加了某人的xxx活动。

2.2.9聚合事实表

对一个或多个原子粒度的事实表进行轻度聚合得到的事实表。目的是为了提高查询性能。

2.2.10合并事实表

将来自多个过程的,以相同粒度表示的事实合并为一个单一的事实表。

类似于我们理解的宽表,例如将用户表+产品表+购买记录表合并为一个具有更多字段的宽表,这样做能够带来方便。

 

posted @ 2024-06-05 15:13  fanrucong  阅读(1)  评论(0编辑  收藏  举报