充值信息

赞助信息

推荐给好友 上一篇 | 下一篇

一个通用的OLAP体系结构



0 引 言

    随着市场竞争的日趋激烈,近年来企业更加强调决策的及时性和准确性,这使得以支持决策管理分析为主要目的的应用迅速崛起,这类应用被称为联机分析处理(On-Line Analytical Processing)。联机分析处理的主要特点,是直接仿照用户的多角度思考模式,预先为用户组建多维的数据模型,在这里,维指的是用户的分析角度。例如对销售数据的分析,时间周期是一个维度,产品类别、分销渠道、地理分布、客户群类也分别是一个维度。一旦多维数据模型建立完成,用户可以快速地从各个分析角度获取数据,也能动态地在各个角度之间切换或者进行多角度综合分析,具有极大的分析灵活性。

    一个好的OLAP系统不仅在功能上能为用户提供快速一致的分析服务,而且在体系结构设计上也要达到足够的通用性和兼容性,后台能够与大多数大型数据仓库系统集成,前端可以方便地与不同的前端工具结合。目前很多OLAP服务系统在这一点上做得不够好,例如DB2的OLAP服务系统,只能对系统指定的DB2 UDB数据库中的数据进行分析,而且只能用于DB2本身自带的多维分析工具,存在一定的局限性,通用性不够好。本文提出的体系结构中,OLAP服务器可以方便地与多种大型数据仓库进行集成,并通过语义层屏蔽了各种数据源物理模式的差异,对前端用户透明,使得此体系结构更加方便通用。

1 OLAP运行环境

    一般的OLAP分析系统都是建立在OLAP立方体上,而本文提到OLAP系统不仅可以建立在OLAP立方体上,而且可以建立在数据仓库和OLTP数据库上,达到了一定的通用性和集成性。其中如何集成这几种运行环境,对用户屏蔽这几种环境的差异,实现本系统的灵活通用性,关键在于OLAP服务器的构建与实现。下面详细介绍OLAP服务器的具体结构。

    整个OLAP框架如图1所示。

图1
图1


2 OLAP应用服务器结构

    OLAP应用服务器的设计是整个OLAP体系结构的关键,目前的OLAP产品,根据存储方式的不同,分为ROLAP和MOLAP及HOLAP等,但它们的分析数据都来自多维数据库,而本系统的分析数据源不仅有多维数据库还包括数据仓库和OLTP数据库,这几种数据源的存储方式各异,一般的数据仓库和OLTP数据库都采用关系数据库存储,而多维数据既可以采用多维数组也可以采用关系数据库存储。为此,本系统增加了一个新的层次:语义层,来对用户屏蔽这几种数据源的差异,而且增加了一个新的查询语言生成模块来处理客户端请求,并生成不同数据源的查询语句。这些结构的定义都增加了本系统的通用性。本服务器具体结构如图2所示。

图2
图2


    2.1 语义对象的定义

    为了实现系统的通用性,在OLAP服务器中定义了一个语义层,并定义了一个新的对象:语义对象,在本系统中,OLAP分析的数据源分为普通关系数据库数据源(DB)、数据仓库数据源(DW)和OLAP立方体(CUBE)数据源。语义对象是在这三种数据源的物理模式上定义的一种统一的语义模型,它既包含有物理信息,又包含有逻辑信息。语义对象简单来讲,是对数据表字段的封装(在OLAP立方体中是对维下面的层次和度量的封装),将数据表中的一个或多个字段封装成用户能方便理解和操作的语义对象。语义对象的物理信息由普通数据库数据源(DB)的物理模式、数据仓库数据源Datahouse (DW)的物理模式或者OLAP分析立方体(CUBE)的物理模式得到,并在物理信息上增加了一层逻辑概念。引入语义层的目的就是为了对用户屏蔽物理模式的信息而向最终用户展现统一的逻辑上的概念,它对OLAP前端用户屏蔽了DB、DW和OLAP立方体三种数据源的差异,使系统能够面向一般的非专业用户,使他们以熟悉的行业术语进行数据分析及交流,同时也屏蔽了保密数据,加强了对于数据库的安全维护。

21/212>


 

评分:0

我来说两句