文章目录

  • 数据仓库、OLAP和数据立方体
    • 1. 数据仓库
      • 1.1. 数据仓库定义
      • 1.2. 关键术语解释
    • 2. 数据仓库和数据库的区别
    • 3. OLAP
      • 3.1. 基本概念
        • 1) 维
        • 2)操作
      • 3.2. OLAP分类
    • 4. 数据立方体
      • 4.1. 维灾难
      • 4.2. 方体的计算

数据仓库、OLAP和数据立方体



1. 数据仓库


1.1. 数据仓库定义

定义:面向主题、集成、时变和非易失的有组织的数据集合

将定义解释一下:面向目标群体或特定目标、将不同数据源的数据集成到一起、可按时间区分数据、一般只是进行只读操作的有组织的数据集合。

1.2. 关键术语解释

  • 面向主题:围绕一些重要的主题(如顾客、供应商或产品),很明确要做什么,需要哪些视图。
  • 集成:将多个不同结构的(异构)数据源的数据集成到一起。

集成操作分为 查询驱动 和 更新驱动 :

方法 含义
查询驱动: 用的时候通过一个集成程序对多个异构数据库进行查询
(note:这儿的查询类似于SQL查询,不过是从多个数据源里查询)
要的时候去拿
查询开销大。
更新驱动: 提前将多个数据源的信息集成起来 先把需要的集成好了
  • 时变:其中数据都包含时间维度的信息(如2015年的数据、2016年的数据。。。)。
  • 非易失:一般只需要数据的初始化装入 和 数据访问(只读),不涉及事务处理。

  • 数据仓库:数据仓库是一个支持管理决策的数据集合。数据是面向主题的、集成的、不易丢失的并且是时间变量。所有操作环境和外部数据源的快照集合。它并不需要非常精确,因为它必须在特定的时间基础上从操作环境中提取出来。数据仓库只限于单个主题的区域,例如顾客、部门、地点等。

  • 数据集市:数据集市在从数据仓库获取数据时可以依赖于数据仓库,或者当它们从操作系统中获取数据时就不依赖于数据仓库。


  • 联机操作数据库系统(Online Transaction Processing)OLTP:联机事务、数据增删改查CRUD

  • 联机分析处理(Online Analytical Processing)OLAP:不同格式的组织和提供数据(各式各样的读)


  • 事实:数据仓库中的信息单元,也是多维空间中的一个单元,受分析单元的限制。事实存储于一张表中(当使用关系数据库时)或者是多维数据库中的一个单元。
    每个事实包括关于事实(收入、价值、满意记录等)的基本信息,并且与维度相关。

  • 维度:绑定由坐标系定义的空间的坐标系的轴线。(node:属性)
    数据仓库中的坐标系定义了数据单元,其中包含事实。坐标系的一个例子就是带有 x 维度和 y 维度的 Cartesian(笛卡尔)坐标系。
    在数据仓库中,时间总是维度之一。

  • 数据立方体:可以以多维对数据建模和观察。由事实和维定义。

  • 分析空间:数据仓库中一定量的数据,用于进行数据挖掘以发现新信息同时支持管理决策。

  • 切片:一种用来在数据仓库中将一个维度中的分析空间限制为数据子集的技术。

  • 切块:一种用来在数据仓库中将多个维度中的分析空间限制为数据子集的技术。


  • 数据模型:E-R图被广泛的用于关系数据库的设计,数据库模式用E-R图表示。而数据仓库模型有星型、雪花、星座。

  • 星型模式:一种使用关系数据库实现多维分析空间的模式,称为星型模式。
    当所有维表都直接连接到“ 事实表”上时,整个图解就像星星一样,故将该模型称为星型模型

  • 雪花模式:不管什么原因,当星型模式的维度需要进行规范化时,星型模式就演进为雪花模式。
    当有一个或多个维表没有直接连接到事实表上,而是通过其他维表连接到事实表上时,其图解就像多个雪花连接在一起,故称雪花模型。

雪花模型是对星型模型的扩展。它对星型模型的维表进一步层次化,原有的各维表可能被扩展为小的事实表,形成一些局部的 " 层次 " 区域,这些被分解的表都连接到主维度表而不是事实表。如上图,将地域维表又分解为国家,省份,城市等维表。

  • 星座模式:星型模式的集合,出现多个事实表。

2. 数据仓库和数据库的区别

联机操作数据库系统(Online Transaction Processing)OLTP
主要任务:联机事务、数据增删改查
联机分析处理(Online Analytical Processing)OLAP
主要任务:不同格式的组织和提供数据(各式各样的读)

特点 OLTP OLAP
特性 操作处理(事务处理) 分析处理
面向 事务 分析
DB设计 E-R图,面向应用 星型/雪花、面向主题
数据 最新的 历史的、跨时间维度的
访问 读、写
操作 索引、散列 大量扫描
数据规模 >GB >TB
访问 读、写

3. OLAP

3.1. 基本概念

1) 维

  1. 维(Dimension):人们观察事物的视角,如时间、地理位置、年龄和性别等,是单一角度概念。
  2. 维的层次(Lever of Dimension):表示维度概念基础上进一步的细分,如时间可以细分为年、季度、月三个层次。
  3. 维成员(Member of Dimension):表示维不可再细分的原子取值,如时间维的成员可以是2019年8月20日。
  4. 度量(Measure):表示在这个维成员上的取值。

除了维的基本概念,还有多维分析的分析操作。

2)操作

  1. 下探(Drill down):维度是有层次的,下探表示进入维度的下一层,将汇总数据拆分到下一层所在细节数据信息,如下图从第二季度下探到看4、5、6月的明细数据。
  2. 上钻(Drill up): 下探的反向操作,回到更高汇聚层的汇总数据。
  3. 切片(Slice):切片可以理解成把立体按某一个维度进行切分,就可以看两维数据,如图中按电子产品切分,看到的是时间和地理位置关系的二维数据。
  4. 切块(Dice):相对于切片是按一个点切分,切块就是按一个范围(区间)来做切分。
  5. 旋转(Pivot):维的行列位置交换,换一个视角分析数据。

3.2. OLAP分类

OLAP按存储器的数据存储格式分为ROLAP、MOLAP和HOLAP。

名称 English 介绍 优点 缺点
MOLAP Multi-dimensional OLAP 以多维数组(Multi-dimensional Array)存储模型的OLAP,是OLAP发源最初的形态,某些方面也等同于OLAP。


它的特点是数据需要预计算(pre-computaion),然后把预计算之后的结果(cube)存在多维数组里。
cube包含所有维度的聚合结果,所以查询速度非常快。


计算结果数据占用的磁盘空间相对关系型数据库更小
空间和时间开销大。update cube的时间跟计算维度(degree)相关,随着维度增加计算时间大幅增加,此外预计算还会造成数据库占用急剧膨胀。查询灵活度比较低。需要提前设计维度模型,查询分析的内容仅限于这些指定维度,增加维度需要重新计算。
ROLAP Relational OLAP 基于关系模型存放数据,一般要求事实表(fact table)和维度表(dimensition table)按一定关系设计,它不需要预计算,使用标准SQL就可以根据需要即时查询不同维度数据。 扩展性强,适用于维度数量多的模型,MOLAP对于维度多的模型预计算慢,空间占用大。


更适合处理non-aggregate事实,例如文本描述


基于row数据更容易做权限管理
因为是即时计算,查询响应时间一般比预计算的MOLAP长。
HOLAP Hybrid OLAP MOLAP和ROLAP类型的混合运用


细节的数据以ROLAP的形式存放,更加方便灵活,而高度聚合的数据以MOLAP的形式展现
更适合于高效的分析处理。公司使用HOLAP的目的是根据不同场景来利用不同OLAP的特性。

4. 数据立方体

4.1. 维灾难

n 维数据立方体有多少个方体?

有无概念分层 方体数目 备注
no 2n2^n2n
yes ∏i=1nLi+1\prod_{i=1}^n L_i+1∏i=1n​Li​+1 LiL_iLi​:与维 i 相关联的层数

概念分层:如时间维度可分为year、mouth、day、hour、minute等层。

n比较小的时候方体数目还不多。但是其数目是随着n的增加而几何增加的,这就是维灾难

note:图片为转载

4.2. 方体的计算

物化方法 特点 其他
不物化 不预先计算任何 ‘非基本’ 方体 查询时候开销大
完全物化 预先计算 所有 方体 物化开销大
部分物化 预先计算 部分 方体 一种折中的方式
冰山立方体 一个数据立方体


只存放聚集值(count,sum等)大于某个最小支持度阈值的立方体单元
一种折中的方式

数据仓库、OLAP和数据立方体相关推荐

  1. 数据挖掘与数据仓库——数据仓库、 OLAP及数据立方体计算

    数据仓库. OLAP及数据立方体计算 什么是数据仓库 有多种但并不严格的定义 与操作数据库相隔离并单独维护的一个用来支持决策过程的数据库. 一个用来对整理过的历史数据进行分析以便支持信息处理的固定平台 ...

  2. OLAP和数据立方体

    文章目录 数据仓库 多维数据模型 事实表和维表 数据立方体和OLAP OLAP的基本操作 维和立方 数据立方体实例 数据立方体物化 数据仓库 数据仓库的目的是构建面向分析的集成化数据环境,为企业提供决 ...

  3. 【数据立方】数据立方体的有效计算、物化materialization,索引OLAP数据

    一.数据立方体的有效计算 多维数据分析的核心是有效计算多个维度合上的聚集.按SQL术语,这些聚集称为group-by. 对于n维的立方体,包括基本立方体总共有(2的n次幂)个方体.(假设每个维没有分层 ...

  4. 【数据挖掘笔记五】数据立方体技术

    5.数据立方体技术 数据仓库系统在各种粒度上为多维数据的交互分析提供OLAP工具,OLAP工具使用数据立方体和多维数据模型对汇总数据提供灵活的访问,因此重点要关注数据立方体的技术.数据立方体技术包括数 ...

  5. 数据仓库 OLAP

    一.数据库 vs. 数据仓库 1. 构建目的不同:数据库主要用于实现企业的日常业务管理,提高业务运营的效率 数据仓库用于将多个数据源的数据进行集成,用于分析,结果辅助决策 2. 管理数据不同:数据库通 ...

  6. 数据立方体(Cube)

    如上图所示,这是由三个维度构成的一个OLAP立方体,立方体中包含了满足条件的cell(子立方块)值,这些cell里面包含了要分析的数据,称之为度量值.显而易见,一组三维坐标唯一确定了一个子立方. 多位 ...

  7. 【读书笔记-数据挖掘概念与技术】数据立方体技术

    基本概念: 基本单元:基本方体的单元 聚集单元:非基本方体的单元 冰山立方体:部分物化的立方体 最小支持度(最小支持度阀值):部分物化的最小阀值(说白了就是限定了一个范围) ∵冰山立方体仍有大量不感兴 ...

  8. 数据立方体计算与数据泛化

    总述:数据在经过预处理和装入数据仓库之后,下一步就是应用具体的算法来处理数据,找出其中有业务意义的部分.这一部分详细的介绍了数据挖掘相关算法的核心思想,常见问题算法的指导方向. 如何根据数据立方体的情 ...

  9. 【DBMS 数据库管理系统】OLAP 核心技术 : 数据方体 ( 数据方体 | 数据方体格结构 | 数据单元 )

    文章目录 一.数据方体 二.数据方体 格结构 ( 参考 ) 三.数据单元 一.数据方体 数据方体 简介 : "数据方体" 概念 : 多维数据模型 构成的 多维数据空间 称为 &qu ...

最新文章

  1. Python生产环境部署(fastcgi,uwsgi)
  2. 《庆余年》,腾讯视频、爱奇艺为“互联网黑产”背锅的一出戏
  3. 【Qt】modbus之TCP模式读操作
  4. 一个例子学懂搜索引擎(lucene)
  5. mongoDB中的数据类型
  6. 邮箱无权访问 上的 jira是怎么回事_蚂蚁庄园答案2020年11月6日汇总 小鸡宝宝考考你每日答案为你呈上|蚂蚁|庄园-360GAME...
  7. 商城左侧菜单栏网页模板
  8. vSAN一次人肉工程师踩过的坑
  9. 图书管理系统(微信、后台、网页端)总结
  10. 同时装有py2 和3,运行scrapy如何区分
  11. [PyTorch] 保存模型和恢复模型
  12. 史上最全ActiveX控件下载大全
  13. 大数据在保险应用场景
  14. 北京央企住房公积金查询网址
  15. ubuntu更新软件包
  16. 计算机领域前沿技术总结
  17. 个人考研写的英语作文,仅支持参考
  18. 我与Saturn有个约会
  19. CSS 背景色 背景图片 渐变背景 - 径向渐变 background-image:radial-gradient()
  20. 基于(springmvc+tomcat+JavaScript)的化妆品商城系统

热门文章

  1. Android Studio出现Execution failed for task ‘:app:processDebugMainManifest
  2. C++设计模式——建造者模式(高屋建瓴)
  3. 我叫mt4最新服务器,我叫MT4手游开服表_我叫MT4手游开服时间表_新服新区预告_第一手游网...
  4. 最详细最简单:最大公因数求法、辗转相除法、更相减损法,入门ACM,杭电水题,算法递归,初级算法题一看就懂
  5. 如何在智星云主机配置 conda 和 pip 源
  6. 举个栗子!Tableau 技巧(95):如何插入漂亮的动图背景
  7. 基于GeForce GT 730显卡的Pytorch-GPU环境及Spyder配置
  8. linux下无法访问硬盘
  9. 加快推进农粮产业链变革,中粮业绩创历史新高
  10. bq4050读固件_BQ4050 + STM32 MCU 虚拟IIC读取SMBUS数据