「这是我参与2022首次更文挑战的第7天,活动详情查看:2022首次更文挑战」。
维度建模是展现分析数据的首选技术,它同时需要满足两大需求:
1、发布的信息数据可以被接受认可和理解
2、快速有效的查询性能
维度建模设计者需要认真仔细的倾听来自业务方的需求,并作出分析,从业务人员的描述中提取关键词,或者更准确的说是关键维度,这是制表的核心。比如一个业务说到:“我们设计各种各样的营销活动来销售产品,不断对结果进行总结。”从这段话中可以提取出核心关键词是“营销活动、时间、产品”。将这些描述出来的抽象的事情,通过数据集的方式展现出来,就是一种理解能力。抽象成越是简单的模型,就越成功。
今天我介绍两种实现的维度模型:星型模型和OLAP多维模型,这是两种非常经典的维度模型。
星型模型因为其结构类似五角星形而得名,其应用如下图所示。
维度模型中很重要的表就是事实表,这是存储业务过程事件的度量结果。我们知道作为大数据的模型结构,需要处理的是巨大的数据量,但是为了满足层层业务多个组织的需求这些数据必须是放在一个集中仓库,有利于企业级使用的时候数据的一致性,便于用户访问的时候不用费心思,而且也需要快速准确的查找。
既然上面提到了事实这个词汇,那么我们就先来解释一下这是什么意思。学术性的解释就是这表示某个业务度量,乍一听根本不知道是怎么回事。其实非常简单,以销售事件为例,我们每一次产品销售,即一次度量事件,其中包含了各种维度,包括时间、产品、金额等等,而对应到事实表就是一行的数据,这是一对一的关系。而这样的产品数据称为粒度,即达到特定级别的细节数据。事实表中的所有行均具有相同的粒度,这是维度建模的核心原则。