什么是数据仓库中的维度建模?了解类型

维度建模

维度建模 (DM) 是一种数据结构技术,用于优化数据仓库中的数据存储。维度建模的目的是优化数据库以更快地检索数据。维度建模的概念由 Ralph Kimball 开发,包含“事实”表和“维度”表。

数据仓库中的维度模型旨在读取、汇总、分析数据仓库中的数字信息,如数值、余额、计数、权重等。相比之下,关系模型则针对实时在线事务系统中的数据添加、更新和删除进行了优化。

这些维度模型和关系模型有其独特的数据存储方式,并具有特定的优势。

例如,在关系模型中,规范化和 ER 模型可以减少数据冗余。相反,数据仓库中的维度模型以一种更容易检索信息和生成报告的方式组织数据。

因此,维度模型用于数据仓库系统,不适合关系系统。

维度数据模型元素

事实

事实是业务流程中的测量/指标或事实。对于销售业务流程,测量值将是季度销售额。

维度

维度提供了业务流程事件的上下文。简单来说,它们说明了事实的“谁、什么、在哪里”。在销售业务流程中,对于季度销售额这一事实,维度将是

  • 谁 – 客户姓名
  • 在哪里 – 地点
  • 什么 – 产品名称

换句话说,维度是查看事实信息的一个窗口。

属性

在维度数据建模中,属性是维度的各种特征。

在地点维度中,属性可以是

  • 状态
  • 国家
  • 邮政编码等。

属性用于搜索、过滤或分类事实。维度表包含属性。

事实表

事实表是维度建模中的主表。

事实表包含

  1. 测量/事实
  2. 指向维度表的外键

维度表

  • 维度表包含事实的维度。
  • 它们通过外键连接到事实表。
  • 维度表是反规范化表。
  • 维度属性是维度表中的各种列。
  • 维度通过其属性提供事实的描述性特征。
  • 对维度数量没有设定限制。
  • 维度还可以包含一个或多个层次结构关系。

数据仓库中维度的类型

以下是数据仓库中的维度类型

  • 一致性维度
  • 外延维度
  • 缩减维度
  • 角色扮演维度
  • 维度到维度表
  • 杂项维度
  • 退化维度
  • 可交换维度
  • 步骤维度

维度建模的步骤

创建维度建模的准确性决定了数据仓库实施的成功。以下是创建维度模型的步骤:

  1. 识别业务流程
  2. 确定粒度(详细程度)
  3. 识别维度
  4. 识别事实
  5. 构建星型模型

模型应描述业务流程的“为什么”、“多少”、“何时/何地/谁”和“什么”。

Steps of Dimensional Modelling

第一步)识别业务流程

识别数据仓库应涵盖的实际业务流程。根据组织的数据分析需求,这可以是营销、销售、人力资源等。业务流程的选择也取决于该流程可用数据的质量。这是数据建模过程中最重要的一步,如果在此失败,将导致级联且无法弥补的缺陷。

要描述业务流程,您可以使用纯文本,或使用基本的业务流程建模符号(BPMN)或统一建模语言(UML)。

第二步)确定粒度

粒度描述了业务问题/解决方案的详细程度。它是确定数据仓库中任何表的最低信息级别的过程。如果一个表包含每天的销售数据,那么它的粒度就是每日。如果一个表包含每个月的总销售数据,那么它的粒度就是每月。

在此阶段,您需要回答以下问题:

  1. 我们需要存储所有可用的产品还是只存储几种类型的产品?这个决定基于为数据仓库选择的业务流程。
  2. 我们是按月、周、日还是小时存储产品销售信息?这个决定取决于高管请求的报告的性质。
  3. 以上两个选择如何影响数据库大小?

粒度示例

一家跨国公司的 CEO 希望按天查找不同地点的特定产品的销售情况。

因此,粒度是“按地点按天划分的产品销售信息”。

第三步)识别维度

维度是名词,如日期、商店、库存等。所有数据都应存储在这些维度中。例如,日期维度可能包含年份、月份和星期几等数据。

维度示例

一家跨国公司的 CEO 希望按天查找不同地点的特定产品的销售情况。

维度:产品、地点和时间

属性:对于产品:产品键(外键)、名称、类型、规格

层次结构:对于地点:国家、州、城市、街道地址、名称

第四步)识别事实

此步骤与系统的业务用户相关,因为这是他们访问数据仓库中存储的数据的地方。大多数事实表行是数值,如每单位价格或成本等。

事实示例

一家跨国公司的 CEO 希望按天查找不同地点的特定产品的销售情况。

这里的事实是按产品、按地点、按时间计算的总销售额。

第五步)构建模式

在此步骤中,您实现维度模型。模式不过是数据库结构(表的排列)。有两个流行的模式:

  1. 星型模式

星型模式架构易于设计。之所以称为星型模式,是因为其图示类似于星星,带有从中心辐射的点。星星的中心是事实表,星星的点是维度表。

星型模式中的事实表是第三范式,而维度表是非规范化的。

  1. 雪花模式

雪花模式是星型模式的扩展。在雪花模式中,每个维度都被规范化,并连接到更多的维度表。

另请查看:数据仓库中的星型和雪花模式及模型示例

维度建模规则

维度建模的规则和原则如下:

  • 将原子数据加载到维度结构中。
  • 围绕业务流程构建维度模型。
  • 需要确保每个事实表都有一个关联的日期维度表。
  • 确保单个事实表中的所有事实都具有相同的粒度或详细程度。
  • 在维度表中存储报告标签和过滤域值至关重要。
  • 需要确保维度表使用代理键。
  • 持续平衡需求和现实,以交付支持其决策制定的业务解决方案。

维度建模的优势

  • 维度标准化允许跨业务区域进行轻松报告。
  • 维度表存储维度信息的历史记录。
  • 它允许在不严重影响使用这些表的现有商业智能应用程序的情况下引入全新的维度。
  • 维度建模还可以将数据存储得更容易从数据库中检索信息。
  • 与规范化模型相比,维度表更容易理解。
  • 信息按清晰简单的业务类别分组。
  • 维度模型对业务非常易于理解。该模型基于业务术语,以便业务部门了解每个事实、维度或属性的含义。
  • 维度模型是非规范化的,并针对快速数据查询进行了优化。许多关系数据库平台都认识到这种模型,并优化查询执行计划以提高性能。
  • 维度建模在数据仓库中创建一个针对高性能优化的模式。这意味着更少的连接,并有助于最小化数据冗余。
  • 维度模型还有助于提高查询性能。它更加非规范化,因此针对查询进行了优化。
  • 维度模型可以很好地适应变化。维度表可以添加更多列,而不会影响使用这些表的现有商业智能应用程序。

什么是数据仓库中的多维数据模型?

数据仓库中的多维数据模型是一种以数据立方体形式表示数据的模型。它允许以多个维度对数据进行建模和查看,并由维度和事实定义。多维数据模型通常围绕一个中心主题进行分类,并由事实表表示。

摘要

  • 维度模型是一种针对数据仓库工具进行了优化的数据结构技术。
  • 事实是业务流程中的测量/指标或事实。
  • 维度提供了业务流程事件的上下文。
  • 属性是维度建模的各种特征。
  • 事实表是维度模型中的主表。
  • 维度表包含事实的维度。
  • 事实有三种类型:1. 可加性 2. 不可加性 3. 半可加性。
  • 维度的类型包括一致性、外延、缩减、角色扮演、维度到维度表、杂项、退化、可交换和步骤维度。
  • 维度建模的五个步骤是:1. 识别业务流程 2. 识别粒度(详细程度) 3. 识别维度 4. 识别事实 5. 构建星型模型
  • 对于数据仓库中的维度建模,需要确保每个事实表都有一个关联的日期维度表。