搭建数据仓库第06篇:逻辑建模–3–维度建模核心之总线架构

目录

  • 前言
  • 维度建模
  • 星型模型
  • 小结

  • 前言

维度建模是Kimball提出来的经典的数据仓库建模思想。维度建模提倡针对某一主题,通过建设维度和事实来快速建设数据仓库。与维度建模相对应的自然是Inmon的范式建模。在上篇也提到范式建模非常适合应用于中间明细层的建设,那么在DW/DM层为什么选择使用维度建模呢?这是第一个问题。维度建模的核心是总线架构,一致性维度,一致性事实。本篇的主题是总线架构,那为什么说维度模型是总线式架构?本篇通过维度建模和星型模型的讲解来分别解释这两个问题。

  • 维度建模

维度模型之所以被选择在DW/DM层上来实现,是因为维度建模的如下特点:

  • 易用性。数据仓库的目的是DSS,即决策支持系统(Decision Support System ,简称DSS),既然面向的的是分析用户,那么数据越容易理解,越能受用户欢迎,而维度建模包含具有描述特性的维度表可以让用户很容易理解数据,而不像范式建模,由于太过规范化而导致用户对数据的理解有一定的难度,需要对业务的很深很细的了解。
  • 性能高。通过数据的处理,排序和整合,构建出来的维度表,不仅能够让用户很方便的理解数据,使用数据,而且在计算所需要的数据的时候,不需要关联太多的表,从而使得计算的性能很高。
  • 扩展性。具有非常好的可扩展性,以便容纳不可预知的新数据源和新的设计决策。可以很方便在不改变模型粒度情况下,增加新的分析维度和事实,不需要重载数据,也不需要为了适应新的改变而重新编码。
  • 星型模型

提起维度建模就不得不提星型模型和雪花模型之争,具体两种模型是什么,之前已经讨论过了http://www.cnblogs.com/benchen/p/6011721.html,而且网上也很容易找到,这里就不再赘述。在Kimball的理论中,星型模型备受推崇。原因有以下几点吧。

  • 星型模型更具有易理解性,毕竟维度模型都是直接挂在事实表,没有额外的关联,所有的维度信息都汇集在维表中了。
  • 星型模型性能更高。只需要一次的关联就能获取这一维度的所有描述信息。
  • 冗余程度要更高,所有有层次关系的维度,都被设计成扁平化,有一定的冗余。但是维度表的冗余相比事实表毕竟不是一个数量级的。鉴于上面的两点,更多的偏爱于星型模型。

星型模型是针对的单一事实表的情形,当有多个事实表通过维度关联在了一起就形成了星座模型。星座模型可以是同一主题单不同粒度的事实表之间的关联,也可以是不同主题的事实表共用同一维表。毕竟是有全局的一致性维度。

  • 小结

维度建模适合于DW/DM层建模,通过使用维度建模,用户可以得到很好的效果,只有用户满意了,数据仓库才能实现更大的价值。可以说维度建模的核心是星型模型,星型模型所拥有的特点正是用户方便使用的根源。

当然维度模型也有着一些缺点,比如数据的一致性很难保证,数据的冗余,大量的维度信息处理等,但这些相对于有点来讲都是可接受的,而且也可以通过其他方式避免和简化的。

以维表为总线,事实表以维表为基础的总线矩阵,意味着建设出来的架构正是总线式架构。

时间: 2024-10-07 04:21:56

搭建数据仓库第06篇:逻辑建模–3–维度建模核心之总线架构的相关文章

搭建数据仓库第04篇:逻辑建模–1–概要

目录 前言 原则 内容 小结 前言 上一篇讲述了数据仓库模型设计中的业务建模和领域概念建模,接下来就自然而然的来到了逻辑数据建模LDM(Logical Data Model)的阶段,这个阶段可以说是建模最重要的一环(也就是维度建模).逻辑建模涉及到了整个数据仓库所有层次的模型设计,从DW到DM甚至到了OLAP.当然重点的设计还是在DW和DM层当中. 有些地方逻辑建模的范畴更加宽泛,包含了前面的业务主题和领域概念模型的设计(看下图). 本篇只是涉及了狭隘的部分(红色框住的部分). 内容 了解了逻辑

搭建数据仓库第05篇:逻辑建模–2–范式建模

目录 前言 使用情景 如何来范式建模 使用的效果 小结 前言 上篇讲述了一些抽象的概念模型和逻辑模型设计的东西,接下来就该讲述如何来一步一步的利用Inmon和Kimball数据仓库的理论来建设数据仓库的模型,主要分几块吧,一个是范式建模,然后是维度建模(分几篇总结),最后是因地制宜,按照自己的平台来考虑如何综合的考虑Inmon和Kimball数据仓库的理论的应用. 本篇将会讲述范式建模部分.当然3范式的概念也不再赘述,度娘全都有. 使用情景 提起数据仓库建模,谁都会知道Inmon的以范式建模为理

搭建数据仓库第01篇:数据仓库开发的生命周期

生命周期方法为我们在数据仓库开发过程中提供了路标的作用,生命周期方法的总体结构和步骤有 定义业务需求 技术路径 技术架构设计 产品的选择和安装 数据路径 维度建模 物理设计 ETL设计和开发 BI应用路径 BI应用设计 BI应用开发 后续会按照这个顺序依次做些总结和思考.

搭建数据仓库第08篇:逻辑建模–5–维度建模核心之一致性维度2

目录 前言 维度表的类型 维度表的使用场景 维度表的键和属性 小结 前言 前面从宏观的角度,讲述了7何问题.那么从微观的角度,具体的改怎样的来建设一致性维表呢? 本篇从表的类型和使用场景,以及建设过程中键的设置和属性的设置做一些总结. 维度表的类型 总体上讲,一般分为两类 TYPEI(不变) 和TYPEII表(变化). TYPEI 维度属性值持久不变,只有新增和删除. 属性能够在一定周期(比如一天)内不会变化. TYPEII 缓慢变化维.部分维度属性可变化,但是变化的频次很低. 快速变化维.部分

【转帖】Mysql多维数据仓库指南 第一篇 第1章

 Mysql多维数据仓库指南 第一篇基本原理 章节列表: 第1章:基本组成 第2章:维度历史 第3章:维度可加性 第4章:维度查询 本篇概述 你将运用关系数据库来实施一个维度数据仓库.事实表和维表这两种类型的关系表构成了一个数据仓库模式的基本部分,在本书的第一部分,你将用mysql数据库建立这些基本部分. 第1章:基本组成   概述        本章将了解两个重要的主题:星型模式和代理键.星型模式是一种维度数据仓库的数据结构.代理键是在数据仓库中添加到事实表以作为主键的字段. 在本章你将开始一

数据仓库系列之维度建模

上一篇文章我已经简单介绍了数据分析中为啥要建立数据仓库,从本周开始我们开始一起学习数据仓库.学习数据仓库,你一定会了解到两个人:数据仓库之父比尔·恩门(Bill Inmon)和数据仓库权威专家Ralph Kimball.Inmon和Kimball两种DW架构支撑了数据仓库以及商业智能近二十年的发展,其中Inmon主张自上而下的架构,不同的OLTP数据集中到面向主题.集成的.不易失的和时间变化的结构中,用于以后的分析;且数据可以通过下钻到最细层,或者上卷到汇总层;数据集市应该是数据仓库的子集;每个

手把手教你搭建LyncServer2013之准备篇(一)

这次实验的拓扑结构如下: 首先准备AD域,把DC这台服务器提升为域服务器,在这里,域服务器的安装就不上图了,DNS会随域控制器的安装一起安装,这次安装的Lync版本为Lync Server 2013,规划的Lync内部WEB地址和外部WEB地址一样,都为pool01.iSusan.cn,而两台Lync前端做为DNS轮询负载,所以在DNS下需要加入如下A记录: 192.168.137.12 pool01.iSusan.cn 192.168.137.13 pool01.iSusan.cn 192.1

数据仓库专题(2)-Kimball维度建模四步骤

一.前言 四步过程维度建模由Kimball提出,可以做为业务梳理.数据梳理后进行多维数据模型设计的指导流程,但是不能作为数据仓库系统建设的指导流程.本文就相关流程及核心问题进行解读. 二.数据仓库建设流程 以下流程是根据业务系统.组织结构.团队结构现状设定的数据仓库系统建设流程,适合系统结构复杂,团队协作复杂,人员结构复杂的情况,并且数据仓库建设团队和业务系统建设团队不同的情况.具体流程如下图所示: 图1 数据仓库系统建设流程 三.四步维度建模 Kimball四步建模流程适合上述数据仓库系统建设

数据仓库专题(22):总线架构和维度建模优势-杂项

一.总线架构 维度建模的数据仓库中,有一个概念叫Bus Architecture,中文一般翻译为“总线架构”.总线架构是Kimball的多维体系结构(MD)中的三个关键性概念之一,另两个是一致性维度(Conformed Dimension)和一致性事实(Conformed Fact). 在多维体系结构(MD) 的数据仓库架构中,主导思想是分步建立数据仓库,由数据集市组合成企业的数据仓库.但是,在建立第一个数据集市前,架构师首先要做的就是设计出在整个企业 内具有统一解释的标准化的维度和事实,即一致