Data Mining:(14)其他知识

  • 该博客为数据挖掘系列博客的第十四部分:相关知识
  • 该博客主要介绍数据挖掘的一些其他的相关知识,包括但不限于数据库、数据仓库、OLAP模型等。

数据仓库

由何而来

  • 随着数据库技术和计算机网络的发展成熟,以数据处理为基础的相关技术得到巨大的发展。
  • 20世纪80年代中期,“数据仓库”(Data Warehouse,DW)这个名词首先出现在被称为“数据仓库之父”W.H.Inmon的 Building Data Warehouse 一书中。

怎么定义

W.H.Inmon把数据仓库定义为“一个面向主题的、集成的、稳定的、随时间变化的数据的集合,以用于支持管理决策过程”。

  • 面向主题(Subject Oriented)
    主题是指用户使用数据仓库进行决策时所关心的重点领域,也就是在一个较高的管理层次上对信息系统的数据按照某一具体的管理对象进行综合、归类所形成的分析对象。
  • 集成性(Integrate)
    数据仓库中存储的数据一般从企业原来已建立的数据库系统中提取出来,但并不是原有数据的简单拷贝,而是经过了抽取、筛选、清理、转换、综合等工作得到的数据。
  • 稳定性(Non-Volatile)
    相比于操作型数据库系统一般只存储短期数据且随时可以被插入、更新、删除和访问所带来的不稳定性,数据仓库中的数据大多表示过去某一时刻的数据,主要用于查询分析,稳定性较好。
  • 随时间而变化(Change Over Time)
    数据仓库大多关注的是历史数据,其中数据是批量载入的,即定期从操作型应用系统中接收新的数据内容,这使得数据仓库中的数据总是拥有时间维度。

从数据库到数据仓库

  • 传统的数据库技术是以单一的数据资源,即数据库为中心,进行OLTP(联机事务处理)、批处理、决策分析等各种数据处理工作主要划分为两大类:操作型处理和分析型处理。
  • 操作型处理又称事务处理,是指对操作型数据库的日常操作,通常是对一个或一组记录的查询和修改,主要是为企业的特定应用服务的,注重响应时间、数据的安全性和完整性。
  • 分析型处理则用于管理人员的决策分析,经常要访问大量的分析型历史数据。
  • 正所谓一心难以二用,为了提高两个系统的性能,操作型处理和分析型处理的分离称为必然。
数据仓库 操作型数据库
面向主题 面向应用
容量巨大 容量较小
数据是综合提炼的 数据是详细的
保存历史的数据 保存当前的数据
数据一般不可更新 数据可更新
操作需求是临时决定的 操作需求是事先可知的
一个操作存取一个数据集合 一个操作存取一个记录

系统组成

数据仓库系统通常指一个数据库环境,而不是指一件产品。数据仓库系统的一般体系结构如图所示。整个数据仓库系统分文源数据层、数据存储与管理层、OLAP(联机分析处理)服务器层和前端分析工具层
在这里插入图片描述

  • 抽取工具(ETL)
    • ETL是Extract、Transform、Load三个单词的首字母缩写,即抽取、转换和装载。
    • 用于把数据从各种各样的存储环境中提取出来,进行必要的转化、整理,再存放到数据仓库内。在这里插入图片描述
  • 数据集市
    • 数据集市面向企业中的某个部门(或某个主题),是从数据仓库中划分出来的,可以是逻辑上的,也可以是物理上的。
    • 数据集市只存放某个主题所需的信息,其目的是减少数据处理量,使信息的利用更加快捷和灵活。
  • 元数据
    • 元数据是关于数据的数据,在数据仓库中元数据位于数据仓库的上层,是描述数据仓库内数据的结构、位置和建立方法的数据。
    • 通过元数据进行数据仓库的管理和通过元数据来使用数据仓库。
    • 按照用途对元数据进行分类是最常见的分类方法,可将其分成两类:管理元数据和用户元数据。

发展历程

批处理\rightarrow即席查询\rightarrow分析建模\rightarrow持续更新和流程互动\rightarrow基于事件的触发

用武之地

  • 决策支持
  • 客户分类与评价
  • 市场自动化
  • \cdots\cdots

OLAP

如何定义

  • OLAP(OnLine Analytical Processing,联机分析处理)是使用多维结构为分析提供对数据的快速访问的一种最新技术。OLAP的源数据通常存储在关系数据库的数据仓库中。
  • OLAP委员会的定义)OLAP是使分析人员、管理人员或执行人员能够从多角度对信息进行快速、一致、交互的存取,从而获得对数据的更深入了解的一类软件技术。

有何作用

OLAP的目的旨在处理发现企业趋势和影响企业发展的关键因素而提供进行数据组织和查询的工具。

特性在哪

  • 多维性:OLAP是面向主题的多维数据分析技术。
  • 可理解性或可分析性:为OLAP分析设计的数据仓库或数据集市可以处理与应用程序和开发人员相关的任何业务逻辑和统计分析,同时使它对于目标用户而言足够简单。
  • 交互性:用户可以在分析中定义新的专用计算,并可以以任何希望的方式报告数据。
  • 快速性:指OLAP系统应当通过使用各种技术,尽量提高对用户的反应速度。

OLAP和OLTP的区别

比较项 OLAP OLTP
特性 信息处理 操作处理
用户 高层管理人员 操作人员
功能 支持决策需要 支持日常操作
面向 数据分析 事务处理
驱动 分析驱动 事务驱动
数据量 一次处理的数据量大 一次处理的数据量小
数据 历史数据 当前数据
汇总 综合提炼性数据 细节性数据
视图 导出数据 原始数据

数据仓库与OLAP的关系

  • 数据仓库是一个包含企业历史数据的大规模数据库,这些历史数据主要用于对企业的经营决策提供分析和支持。
  • OLAP服务工具利用多维数据集和数据聚集技术对数据仓库中的数据进行处理和汇总,用联机分析和可视化工具对这些数据进行评价,将复杂的分析查找结果快速地返回用户。
  • 两者关系如下图所示
    在这里插入图片描述

多维数据模型

如何定义

多维数据模型是将数据看作数据立方体形式,满足用户从多角度多层次进行数据查询和分析的需要而建立起来的基于事实和维的数据库模型。

相关概念

  • 粒度(Granularity)
    • 指多维数据集中数据的详细程度和级别。
    • 数据越详细,粒度越小,级别就越低;数据综合度越高,粒度越大,级别就越高。
  • 维和维表
    • 维(Dimension)是人们观察数据的特定角度,是考虑问题的一类属性。此类属性的集合构成一个维度(或维),如时间维,地理维等。
    • 维表是存放维数据的表。维表中的数据具有维层次结构,包含维属性和维成员。
  • 维层次、维属性和维成员
    • 人们从一个维的角度观察数据,还可以根据细节程度的不同形成多个描述层次,这个描述层次称为维层次。
    • 一个维是通过一组属性来描述的。
    • 维的每一个取值称为该维的一个维成员。
  • 度量或事实
    • 度量(Measure)是多维数据集中的信息单元,即多维空间中的一个单元,用以存放数据,也称为事实(Fact)。
    • 度量通常是数值型数据并具有可加性。
    • 度量所在的表称为事实表,事实表中存放的事实数据通常包含大量的数据行。
    • 度量是所分析的多维数据集的核心,它是最终用户浏览多维数据集时重点查看的数值型数据。
  • 多维数据集
    • 多维数据集可以用一个多维数组来表示,它是维和度量列表的组合表示。
    • 一个多维数组可以表示为:
      (维1,维2,\cdots,维n,度量列表)

基本操作

  • 切片
    • 定义一:在多维数据集的某一维上选定一个维成员的操作称为切片(Slice)。
    • 定义二: 选定多维数据集的一个两维子集的方法称为切片。
  • 切块
    • 定义一:在多维数据集(维1,维2,\cdots,维n,度量列表)中通过对两个或多个维执行选择得到子集的操作称为切块(Dice)。
    • 定义二:选定多维数据集的一个三维子集的方法称为切块。
  • 旋转
    旋转(又称转轴,Pivot)是一种视图操作,即改变一个报告或页面显示的维方向,可以得到不同视角的数据,即转动数据的视角以提供数据的替代表示。
  • 上卷
    上卷操作通过维的概念分层向上攀升或者通过维归约在数据立方体上进行聚集。
  • 下钻
    下钻是上卷的逆操作,它由不太详细的数据到更详细的数据,使用户在多层数据中能通过导航信息而获得更多的细节数据。
    下钻可以沿维的概念分层向下或引入新的维或维的层次来实现。

实现途径

  • 多维数据模型的物理实现有多种途径,主要有采用多维数据库(Multi-Dimension DataBase,MDDB)、关系数据库以及两种相结合的方法。
  • 针对不同的数据组织方式,对应的OLAP系统分别称为ROLAP(Relational OLAP,基于关系型数据库的OLAP),MOLAP(Multi-dimensional OLAP,基于多维数据库的OLAP)和HOLAP(Hybrid OLAP,基于关系型数据库与多维数据库的混合OLAP)。

数据仓库的维度建模

建模流程

  1. 数据仓库的建模首先要将现实的决策分析环境抽象成一个概念数据模型。
  2. 然后将概念模型逻辑化,建立逻辑数据模型。
  3. 最后,将逻辑数据模型向数据仓库的物理模型转化。

建模方法

构建数据仓库概念模型主要有E-R(实体-关系)建模和多维建模两种方法。

  • E-R建模:E-R建模方法产生E-R图,也称为实体建模法。其基本策略是将问题领域的对象分成由一个个实体,以及实体与实体之间的关系组成。它是数据库设计的基本方法。
  • 多维建模:多维建模方法产生E-R图,也称为维度建模法。

多维数据模型

常用的基于关系数据库的多维数据模型有星形模型、雪花模型和事实星座模型。

星形模型

  • 星形模型(Star Schema)由一个事实表和一组维表组成,每个维表都有一个维主键,所有,所有这些维组合成事实表的主键,换言之,事实表主键的每个元素都是维表的外键。
  • 星形模型的特点:
    • 维度表只与事实表关联,维度表彼此之间没有任何联系
    • 每个维度表中的主码都只能是单列的,同时该主码被放置在事实数据表中,作为事实数据表与维表连接的外码
    • 星形模式是以事实表为核心,其他的维度表围绕这个核心表呈星形分布。
      星形模型示意图

雪花模型

  • 雪花模型(Snowflake Schema)是对星形模型的扩展,每一个维表都可以向外连接多个详细类别表。
  • 星形模型虽然是一个关系模型,但是它不是一个规范化的模型,在星形模型中,维表被故意地非规范化了,雪花模型对星形模型的维表进一步标准化,对星形模型中的维表进行了规范化处理。
  • 雪花模型的特点:
    • 某个维表不与事实表直接关联,而是与另一个维表关联
    • 可以进一步细化查看数据的粒度
    • 维表和与其相关联的其他维表是靠外码关联的
    • 以事实表为核心
比较项目 星形模型 雪花模型
行数
可读性
表数量
搜索维的时间

雪花模型示意图

事实星座模型

在一个多主题的复杂数据仓库中可能存放多个事实表,此时就会出现多个事实表共享某一个或多个维表的情况,这既是事实星座模型(Fact Constellations Schema)。

三者关系

三种模型的关系

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章