数据仓库-数据模型

Posted 大数据与算法

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据仓库-数据模型相关的知识,希望对你有一定的参考价值。

数据模型

什么是数据模型

数据模型是抽象描述现实世界的一种工具和方法,是通过抽象的实体及实体之间联系的形式,来表示现实世界中事务的相互关系的一种映射

为什么需要数据模型

只有数据模型将数据有效的组织和存储起来之后,大数据才能得到高性能、低成本、高效率、高质量的使用

通过数据模型,直观了解业务,能帮助梳理整体业务,改进业务流程


建模要点

主要建模流程

常见于三层模型设计:概念模型-->概念模型-->物理模型

概念模型:通过分析和归纳,划分成主题,并确定主题之间的关系

逻辑模型:基于概念模型的基础,定义数仓实体,属性,关系,指导数据存储,组织和应用开发

物理模型:就是通过数仓制定的一些命名,存储,压缩规范等实例化逻辑模型并落地执行

数据模型的三要素

 数据模型所描述的内容有3个部分,分别是数据结构、数据操作和数据约束。


 (1)数据结构

 数据结构用于描述系统的静态特征,包括数据的类型、内容、性质及数据之间的联系等。它是数据模型的基础,也是刻画一个数据模型性质最重要的方面。在数据库系统中,人们通常按照其数据结构的类型来命名数据模型。例如,层次模型和关系模型的数据结构就分别是层次结构和关系结构。


 (2)数据操作

 数据操作用于描述系统的动态特征,包括数据的插入、修改、删除和查询等。数据模型必须定义这些操作的确切含义、操作符号、操作规则及实现操作的语言。


 (3)数据约束

 数据的约束条件实际上是一组完整性规则的集合。完整性规则是指给定数据模型中的数据及其联系所具有的制约和存储规则,用以限定符合数据模型的数据库及其状态的变化,以保证数据的正确性、有效性和相容性。例如,限制一个表中学号不能重复,或者年龄的取值不能为负,都属于完整性规则。



常见建模方法


INMON- 3NF规范化建模

全企业范围数据的3NF,用实体-关系结构表述企业数据架构

全企业范围数据主题-关系抽象

更多表现在数据整合和一致性数据处理


KIMBALL-维度建模

维度建模以分析决策需求出发建模型,快速提供数据分析服务和高性能的查询请求


常见维度的模型

  • 星型建模

星型模型由一个事实表和一组维表组成,每个维表有一个主键在事实表有一个外键形成关联,组织形成事实宽表

  • 雪花建模

雪花模型是维表与维表联系,再多个维表与事实表关联。维表之间传递层级维度,此模型关系表过于多,不便于分析理解和业务性能

  • 星座建模

星座模型就是多位维度表围绕在2个以上的事实表,事实表与事实表连接的结构


ali建模流程

此处借鉴阿里的onedata模型


建模方法比较

实际仓库建模中,以星型维度建模为主结合主题域思路建设模型

属性

维度建模

3NF规范化建模

可读

性能

易用

模型数量

数据冗余程度

扩展性

实施难易程度

适用场景

大数据,分析人员多

关系型数据库,研发人员


建模注意事项

深刻理解业务主题域以及范围

梳理清晰实体-关系逻辑

数据质量标准的推进



以上是关于数据仓库-数据模型的主要内容,如果未能解决你的问题,请参考以下文章

数据仓库的多维数据模型定义

数据仓库之仓库模型设计

Greenplum 实时数据仓库实践——数据仓库设计基础

Greenplum 实时数据仓库实践——数据仓库设计基础

数据仓库多维数据模型设计

商务智能数据仓库 ( 多维数据模型 | 多维数据分析 )