数据仓库的模型设计 (转)

数据仓库的模型设计

A. 数据建模方法论

数据仓库模型设计遵循“自顶向下、逐步求精”的设计原则。

模型设计分为三个阶段:

1,概念模型

对业务的范围和使用,从高度上进行抽象概括,也就是划分主题域。

一般划分为8个主题域:

客户、服务、服务使用、账务、结算、资源、客服、营销

为什么要划分主题域?

划分主题域,是根据业务的应用和需要来划分的,是用来达到数据与业务紧耦合的目的。

2,逻辑模型

对概念模型中的主题进行细化,定义实体与实体之间的关系,和实体的属性。

即定义具体表的作用,表与表的约束,表的字段。形成ER图。

这些实体的设计都是基于业务规则,可以说,这一阶段主要面对的是业务。也就是“业务驱动建模

3,物理模型

依照逻辑模型,在数据库中进行建表、索引等。数据仓库,为了满足高性能的需求,可以增加冗余、隐藏表之间的约束等反第三范式操作

这一阶段,主要针对的是数据库、硬件、性能。

范式

第一范式:数据库表的字段都是单一属性,不可再分。

第二范式:数据库表中不存在非关键字段对任一候选关键字段的部分函数依赖。

(部分函数依赖指的是存在组合关键字中的某些字段决定非关键字段的情况)。即要求所有属性都依赖于主键。

第三范式:数据库表中不存在非关键字段对任一候选关键字段的传递函数依赖

范式是向下兼容的。

例如:


学生ID


学生名称


学生部门


课程ID


课程名称


成绩


60100


张三


教育学院,心理系,1班


English_1


英语1


80

1)违反第一范式。因为:学生部门可以分解为:学院,系,班级

2)违反第二范式。因为:关键字段是学生ID和课程ID, 但存在“课程ID”决定课程名称和课程学分。

3)违反第三范式。因为:关键字段是学生ID,但存在可能名称和学分依赖“课程ID”。

星型模型和雪花模型

首先,他们都是由一个事实表和一组维度表组成。

星型模型,也被称为维度建模

区别在于:

星型模型:维度表直接跟事实表连接,图型像星星。

如区县和地市做为同一维度都在地市表中。

*维度预处理,维度会预先进行分类,排序等预处理。

雪花模型:一些维度表不是直接与事实表连接,而是通过维度表中转,图形像雪花。

例如:

图1:星型模型

图2 雪花模型

从性能来看,星型模型查询性能好。

为了提高性能,可以允许违反第三范式,适当的冗余、隐藏表之间的约束。

维度建模

将商业维度融合到数据模型中,由此得名维度建模。

或者说,为了分析方便(商业应用要求),将同一维度的不同层次的维度(如地市ID,区县ID)都融合到事实表中(如用户宽表)。

维度模型也是星型模型。

它 强调的是先对维度进行预处理,将多个维度集合到一个事实表,形成一个宽表,如上面的用户统一视图。包含了20多个维度。这样可以组合各维度,形成灵活的报表查询。

B. 分层设计原则

电信行业的数据仓库都采用了分层设计原则。

总的来说,分三层:接口层、中间汇总层和应用层。


应用层


数据集市


地市数据集市、数据挖掘


应用层


KPI报表、cagnos、主题分析、指标库


中间层


深度汇总层


信息聚合:用户统一视图、3G用户统一视图、固话用户统一视图


业务拓展:用户行为、增值业务、集团业务、国际业务


轻度汇总层


清单汇总、用户属性聚合、费用汇总、集团客户汇总等


接口层


存储层


接口备份、增量转全量、减少I/O(分常用数据和历史数据)


接口层


日接口、月接口、增量接口、全量接口

特别强调的是:

中间层是数据仓库最重要的一层。直接决定了数据仓库的性能。

一般的做法是:

1)数据汇总。将底层数据按维度进行小颗粒度汇总

2)信息聚合。将多张表的信息聚合在一个表中。这样的好处,是避免使用表关联,提高查询性能。

C. 主题域设计方法

如果说分层设计,是横向的设计原则,那么主题分域是纵向的处理方法。

具体做法就是从业务上,高度的抽象和归纳,将数据划分为不同的主题域。

分域后的好处:业务紧耦合、便于数据拓展、便于使用。

域是要具有明显的表命名规则,如:

用户信息域—— user

通信行为—— call

数据业务—— gprs

账务 —— bill

客户服务—— serv

xx经分系统的数据架构图:

时间: 2024-11-05 12:29:08

数据仓库的模型设计 (转)的相关文章

数据仓库的模型设计

分类: 数据仓库与数据挖掘 Technorati 标签: 数据仓库,模型设计 数据仓库的模型设计 A. 数据建模方法论 数据仓库模型设计遵循“自顶向下.逐步求精”的设计原则. 模型设计分为三个阶段: 1,概念模型 对业务的范围和使用,从高度上进行抽象概括,也就是划分主题域. 一般划分为8个主题域: 客户.服务.服务使用.账务.结算.资源.客服.营销 为什么要划分主题域? 划分主题域,是根据业务的应用和需要来划分的,是用来达到数据与业务紧耦合的目的. 2,逻辑模型 对概念模型中的主题进行细化,定义

数据仓库模型设计

数据仓库的模型设计 A. 数据建模方法论 数据仓库模型设计遵循“自顶向下.逐步求精”的设计原则. 模型设计分为三个阶段: 1,概念模型 对业务的范围和使用,从高度上进行抽象概括,也就是划分主题域. 一般划分为8个主题域: 客户.服务.服务使用.账务.结算.资源.客服.营销 为什么要划分主题域? 划分主题域,是根据业务的应用和需要来划分的,是用来达到数据与业务紧耦合的目的 2,逻辑模型 对概念模型中的主题进行细化,定义实体与实体之间的关系,和实体的属性. 即定义具体表的作用,表与表的约束,表的字段

数据仓库建设中的数据建模方法(转)

简介: 本文的主要内容不是介绍现有的比较流行的主要行业的一些数据模型,而是将笔者在数据仓库建设项目中的一些经验,在这里分享给大家.希望帮助大家在数据仓库项目建设中总结出一套能够合乎目前业界规范的,满足大部分行业数据仓库建设标准的一种方法. 所谓水无定势,兵无常法.不同的行业,有不同行业的特点,因此,从业务角度看,其相应的数据模型是千差万别的.目前业界较为主流的是数据仓库厂商主要是 IBM 和 NCR,这两家公司的除了能够提供较为强大的数据仓库平台之外,也有各自的针对某个行业的数据模型. 例如,在

浅谈数据仓库建设中的数据建模方法

所谓水无定势,兵无常法.不同的行业,有不同行业的特点,因此,从业务角度看,其相应的数据模型是千差万别的.目前业界较为主流的是数据仓库厂商主要是 IBM 和 NCR,这两家公司的除了能够提供较为强大的数据仓库平台之外,也有各自的针对某个行业的数据模型.       例如,在银行业,IBM 有自己的 BDWM(Banking data warehouse model),而 NCR 有自己的 FS-LDM 模型.在电信业,IBM 有 TDWM(Telecom Data warehouse model)

数据仓库建模方法初步

一.前言 数据仓库得建模方法同样也有很多种,每一种建模方法其实代表了哲学上的一个观点,代表了一种归 纳,概括世界的一种方法.目前业界较为流行的数据仓库的建模方法非常多,这里主要介绍范式建模法,维度建模法,实体建模法等几种方法,每种方法其实从本质 上讲就是从不同的角度看我们业务中的问题,不管从技术层面还是业务层面,其实代表的是哲学上的一种世界观.我们下面给大家详细介绍一下这些建模方法. 二.3NF范式建模方法 范式建模法其实是我们在构建数据模型常用的一个方法,该方法的主要由 Inmon 所提倡,主

大数据数据仓库-基于大数据体系构建数据仓库(Hive,Flume,Kafka,Azkaban,Oozie,SparkSQL)

背景 接着上个文章数据仓库简述,想写一篇数据仓库常用模型的文章,但是自己对数据仓库模型的理解程度和建设架构并没有下面这个技术专家理解的深刻,并且自己去组织语言,可能会有不准确的地方,怕影响大家对数据仓库建模的理解,数据仓库属于一个工程学科,在设计上要体验出工程严谨性,所以这次向大家推荐这篇文章,毕竟IBM在数据仓库和数据集市方面已经做得很成熟了,已经有成型的商业数据仓库组件,这篇文章写的很好,可以让大家很好的理解数据仓库. 版权 作者 周三保([email protected]) IBM 软件部

大数据数据仓库-独一无二的数据仓库建模指

简介: 本文的主要内容不是介绍现有的比较流行的主要行业的一些数据模型,而是将笔者在数据仓库建设项目中的一些经验,在这里分享给大家.希望帮助大家在数据仓库项目建设中总结出一套能够合乎目前业界规范的,满足大部分行业数据仓库建设标准的一种方法. 所谓水无定势,兵无常法.不同的行业,有不同行业的特点,因此,从业务角度看,其相应的数据模型是千差万别的.目前业界较为主流的是数据仓库厂商主要是 IBM 和 NCR,这两家公司的除了能够提供较为强大的数据仓库平台之外,也有各自的针对某个行业的数据模型. 例如,在

马蜂窝数据仓库与数据中台

一.马蜂窝数据仓库与数据中台 最近几年,数据中台概念的热度一直不减.2018 年起,马蜂窝也开始了自己的数据中台探索之路. 数据中台到底是什么?要不要建?和数据仓库有什么本质的区别?相信很多企业都在关注这些问题. 我认为数据中台的概念非常接近传统数据仓库+大数据平台的结合体.它是在企业的数据建设经历了数据中心.数据仓库等积累之后,借助平台化的思路,将数据更好地进行整合与统一,以组件化的方式实现灵活的数据加工与应用,以更清晰的数据职能组织应对业务的快速变化,以服务的方式更好地释放数据价值的一种方式

马蜂窝数据仓库架构实践

http://km.ciozj.com/Detail.Aspx?AI=98315&CI=2 数据中台的概念非常接近传统数据仓库+大数据平台的结合体.它是在企业的数据建设经历了数据中心.数据仓库等积累之后,借助平台化的思路,将数据更好地进行整合与统一,以组件化的方式实现灵活 Part.1 马蜂窝数据仓库与数据中台 最近几年,数据中台概念的热度一直不减.2018 年起,马蜂窝也开始了自己的数据中台探索之路. 数据中台到底是什么?要不要建?和数据仓库有什么本质的区别?相信很多企业都在关注这些问题. 我