OLAP & Dataware house & MDX

 

联机分析处理OLAPOn-Line Analytical

Processing

Wisdom Guo

什么是OLAP?

联机分析处理OLAPOn-Line Analytical Processing)是数据仓库系统的主要应用,支持复杂的分析操作,侧重决策支持,并且提供直观易懂的查询结果。典型的应用就是复杂的动态的报表系统。OLAP的特点一般有: 1.实时性要求不是很高,很多应用的顶多是每天更新一下数据; 2.数据量大,因为OLAP支持的是动态查询,所以用户也许要通过将很多数据的统计后才能得到想要知道的信息,例如时间序列分析等等,所以处理的数据量很大; 3.因为重点在于决策支持,所以查询一般是动态的,也就是说允许用户随时提出查询的要求。所以在OLAP中通过一个重要概念“维”来搭建一个动态查询的平台(或技术),供用户自己去决定需要知道什么信息。

OLTPOLAP的区别 OLAP简介

联机分析处理 (OLAP) 概念最早是由关系数据库之父E.F.Codd1993年提出的,他同时提出了关于OLAP12条准则。OLAP的提出引起了很大的反响,OLAP作为一类产品同联机事务处理 (OLTP) 明显区分开来。

当今的数据处理大致可以分成两大类:联机事务处理OLTPon-line transaction processing)、联机分析处理OLAPOn-Line Analytical Processing)。OLTP是传统的关系型数据库的主要应用,主要是基本的、日常的事务处理,例如银行交易。OLAP是数据仓库系统的主要应用,支持复杂的分析操作,侧重决策支持,并且提供直观易懂的查询结果。下表列出了OLTPOLAP之间的比较。

OLTPOLAP用户操作人员,低层
管理人员决策人员,高级管理人员功能日常操作处理分析决策DB 设计面向应用面向主题数据当前的, 最新的细节的, 二维的分立的历史的, 聚集的, 多维的集成的, 统一的存取读/写数十条记录读上百万条记录工作单位简单的事务复杂的查询用户数上千个上百个DB 大小100MB-GB100GB-TB
OLAP
是使分析人员、管理人员或执行人员能够从多角度对信息进行快速、一致、交互地存取,从而获得对数据的更深入了解的一类软件技术。OLAP的目标是满足决策支持或者满足在多维环境下特定的查询和报表需求,它的技术核心是""这个概念。

是人们观察客观世界的角度,是一种高层次的类型划分。一般包含着层次关系,这种层次关系有时会相当复杂。通过把一个实体的多项重要的属性定义为多个维(dimension),使用户能对不同维上的数据进行比较。因此OLAP也可以说是多维数据分析工具的集合。

OLAP的基本多维分析操作有钻取(roll updrill down)、切片(slice)和切块(dice)、以及旋转(pivot)、drill acrossdrill through等。

·钻取是改变维的层次,变换分析的粒度。它包括向上钻取(roll up)和向下钻取(drill down)。roll up是在某一维上将低层次的细节数据概括到高层次的汇总数据,或者减少维数;而drill down则相反,它从汇总数据深入到细节数据进行观察或增加新维。
·切片和切块是在一部分维上选定值后,关心度量数据在剩余维上的分布。如果剩余的维只有两个,则是切片;如果有三个,则是切块。
·旋转是变换维的方向,即在表格中重新安排维的放置(例如行列互换)。
OLAP有多种实现方法,根据存储数据的方式不同可以分为ROLAPMOLAPHOLAP

ROLAP表示基于关系数据库的OLAP实现(Relational OLAP)。以关系数据库为核心,以关系型结构进行多维数据的表示和存储。ROLAP将多维数据库的多维结构划分为两类表:一类是事实表,用来存储数据和维关键字;另一类是维表,即对每个维至少使用一个表来存放维的层次、成员类别等维的描述信息。维表和事实表通过主关键字和外关键字联系在一起,形成了"星型模式"。对于层次复杂的维,为避免冗余数据占用过大的存储
空间,可以使用多个表来描述,这种星型模式的扩展称为"雪花模式"

MOLAP表示基于多维数据组织的OLAP实现(Multidimensional OLAP)。以多维数据组织方式为核心,也就是说,MOLAP使用多维数组存储数据。多维数据在存储中将形成"立方块(Cube"的结构,MOLAP中对"立方块""旋转""切块""切片"是产生多维数据报表的主要技术。

HOLAP表示基于混合数据组织的OLAP实现(Hybrid OLAP)。如低层是关系型的,高层是多维矩阵型的。这种方式具有更好的灵活性。

还有其他的一些实现OLAP的方法,如提供一个专用的
SQL Server,对某些存储模式(如星型、雪片型)提供对SQL查询的特殊支持。

OLAP工具是针对特定问题的联机数据访问与分析。它通过多维的方式对数据进行分析、查询和报表。维是人们观察数据的特定角度。例如,一个企业在考虑产品的销售情况时,通常从时间、地区和产品的不同角度来深入观察产品的销售情况。这里的时间、地区和产品就是维。而这些维的不同组合和所考察的度量指标构成的多维数组则是OLAP分析的
基础,可形式化表示为(维1,维2……,维n,度量指标),如(地区、时间、产品、销售额)。多维分析是指对以多维形式组织起来的数据采取切片(Slice)、切块(Dice)、钻取(Drill-downRoll-up)、旋转(Pivot)等各种分析动作,以求剖析数据,使用户能从多个角度、多侧面地观察数据库中的数据,从而深入理解包含在数据中的信息。

根据综合性数据的组织方式的不同,目前常见的OLAP主要有基于多维数据库的MOLAP及基于关系数据库的ROLAP两种。MOLAP是以多维的方式组织和存储数据,ROLAP则利用现有的关系数据库技术来模拟多维数据。在数据仓库应用中,OLAP应用一般是数据仓库应用的前端工具,同时OLAP工具还可以同数据挖掘工具、统计分析工具配合使用,增强决策分析功能。

 

Note:

数据仓库中的数据进行组织是为了支持分析,而不象在联机事务处理系统 (OLTP) 中那样是为处理实时事务

一些概念

什么是OLTP

联机事务处理系统(OLTP),也称为面向交易的处理系统,其基本特征是顾客的原始数据可以立即传送到计算中心进行处理,并在很短的时间内给出处理结果。也称为实时系统(Real time System)。衡量联机事务处理系统的一个重要性能指标是系统性能,具体体现为实时响应时间。我们通常讲的业务系统都是基于OLTP的,主要的关系数据库代表为Oracle,Sybase,DB2,SQLServer,MySQL等等。

OLTP系统的主要特点
b-z^cG"?/SZ0D01
、事务处理
1[/%e8L/Jr e T*D|%U-d02
、面向应用ITPUB个人空间ri,?3U(v(@4{
3
、反映当前情况

什么是数据仓库?

数据仓库就是面向主题的、集成的、稳定的、不同时间的数据集合,用以支持经营管理中的决策制定过程。目的是解决在信息技术(IT) 发展中存在的拥有大量数据、然而有用信息贫乏(Data rich-Information poor)的问题。数据仓库就其本质仍然是基于关系数据库的,其与OLTP系统最大的不同是系统的目的的不同。主要的关系数据库代表为Oracle,Sybase,DB2,SQLServer,SybaseIQ,Terradat,MySQL等等。

数据仓库的特点
:E


n2h-Ssp2m?01 、面向主题
'd A s I7fe
V
tYB­m0
2
、集成性 企业数据框架
:d j
n+M5d7UW0
3
、历史性、稳定性

什么是OLAP

OLAP是使分析人员、管理人员能够从多种角度对从原始数据中转化出来的、能够真正为用户所理解的、并真实反映数据维特性的信息,进行快速、一致、交互地访问,从而获得对数据的更深入了解的一类软件技术。OLAP采用了新的数据处理引擎大大加强了对海量数据的聚合和访问要求,同时满足了不同层次数据的访问。主要的OLAP代表为SybaseIQ,MSOLAP,ESSbase等。
~ a+l"o$O0z-^u0
核心——维也称多维视图,数据立方(Data Cube)
1LR­q^)[0
目标——多维分析

OLAP的特点
;YyW4E K wHv01
、灵活、动态ITPUB个人空间P5u;b4C3l­q
2
、多角度、多层次的视角ITPUB个人空间!bm‑l/w


bG0{n!}
3
、快速

OLTP系统和数据仓库系统的区别?

虽然OLTP系统和数据仓库系统都存储于关系数据库中,但两者的主要区别是使用目的的不同,数据仓库系统的建设只是为了隔离业务系统、整合各个不同的数据源、形成一个统一的数据中心、以提供决策支持。究其实质,数据库对于两者的处理并无太大的区别,只是对数据仓库部分增加了一些优化措施或者没有。如Oracle新增的各种分区支持、位图索引、平行操作、物化视图等等;Sybase公司为数据仓库的SybaseIQ产品,提供了类似位图索引的方式极大的优化了查询速度;SQLServer2000对于数据仓库和OLTP系统的处理区别不大。OLTP系统和数据仓库系统的差别很大程度上取决为了不同需要而进行的系统设计。总的说来两者实质物理结构是一致的,但目的是不同的。

数据仓库和OLAP的区别?

虽然数据仓库和联机分析处理 (OLAP) 这两个术语有时可互换使用,但它们却适用于通常称为决策支持系统或业务智能系统的不同组件。这些类型的系统的组件包括一些数据库和应用程序,用于为分析人员提供支持组织机构决策制定所需的工具。ITPUB个人空间5j,c$IiV OL


O
数据仓库本质上仍然是一个关系数据库,包含那些通常表示某个组织机构业务历史的数据。通过分析这些历史数据,可以支持对分散的组织单元进行从策略计划到性能评估的多级业务决策。对数据仓库中的数据进行组织是为了支持分析,而不象在联机事务处理系统 (OLTP) 中那样是为处理实时事务。
5YZ0`&Q3A(BGx/V0OLAP
技术使数据仓库能够快速响应重复而复杂的分析查询,从而使数据仓库能有效地用于联机分析。 OLAP 的多维数据模型和数据聚合技术可以组织并汇总大量的数据,以便能够利用联机分析和图形工具迅速对数据进行评估。当分析人员搜寻答案或试探可能性时,在得到对历史数据查询的回答后,经常需要进行进一步查询。 OLAP 系统可以快速灵活地为分析人员提供实时支持。

初步MDX

MDXMulti Dimensional Expression)多维表达式是支持SQL SERVER 2005 Analysis ServicesSSAS)的脚本语言。要学习MDX,首先应该了解SSAS中多维数据集的一些基本概念,下面我就主要给大家介绍一下MDX的一些基础概念。

维度(dimension

我们平时看到的一个平面有2个坐标轴,一个是行,一个是列,维度就类似于这个坐标轴。而多维就是指有多个维度,也就是说有多个坐标轴。常用的有维度有:时间维度、部门维度等。

层次结构(hierarchy

层次结构主要用来表示一个维度中的层次或结构情况,时间维度的层次结构可以是"年、月、日""年、半年、季、月"等。层次结构不是多维数据集中通用的概念,而是MicrosoftSQL SERVER 2005才推出的。在传统多维数据集中,一个维度只有一个默认的层次结构,所以就没有把这个概念专门提出来。而在SQL SERVER 2005中,因为要实现一个维度支持多种层次结构的功能,所以才引入了这个概念。

级别(level

层次结构中的某一层,例如时间维度的层次结构是"年、月、日",那么""""""都是该层次结构下的一个级别。

成员(member

一个级别下具体的成员数据,例如""级别下的成员是"1""2""3"……

    维度、层次结构、级别、成员的图示:  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值