数据仓库的OLAP多维展现技术的研究与应用

2012-03-28 01:52王淑蓉赵颖
电子设计工程 2012年14期
关键词:数据仓库数据源视图

王淑蓉,赵颖

(西安工业大学计算机科学与工程学院,陕西西安710032)

为实现对在校销售中产生海量数据的多维分析,想要利用数据仓库的信息资源,必须有强大的工具对数据仓库中的信息进行分析决策。而OLAP具有灵活的分析功能、直观的数据操作和分析结果可视化表示等突出优点,从而使用户对大量复杂数据的分析变得轻松而高效,以利于迅速作出正确的判断,辅助决策。由此OLAP分析结果的可视化过尽可能多的形式将数据信息展现出,以达到是决策者通过直观的表现方式迅速获得信息中蕴含的知识。

1 多维分析展现方法

服务器,即第1层建立数据仓库实现与关系数据库的数据交换,第2层为OLAP服务器,它利用数据仓库存储的数据创建多维数据模型,第三层通过Web浏览器向OLAP服务器提出数据请求,OLAP服务器将请求结果返回给Web浏览器实现前端OLAP查询分析和数据展现。文章应用第2种方式进行多维分析的展现。

本系统基于在线销售,在企业的日常销售中,存在着大量的销售记录,通过建立数据仓库,针对企业销售中的“在线销售”主题—Internet Sales,通过多维分析展现技术,对企业的在线销售提供辅助支持。

随着市场对数据仓库需求量增大,数据仓库的产品也越来越成熟。联机分析处理技术以数据仓库提供的海量数据做为复杂分析处理的基础,它可以提供不同维度、不同层次,高效灵活地复杂查询处理,为决策人员进行多维分析提供决策依据,并将多维度的查询分析处理结果通过灵活直观的形式展现。现如今单纯实现一个多维分析展现系统有3种方式[1]:

1)利用OLAP分析软件直接与底层数据库直接交互,通过OLAP软件实现数据的查询分析;2)通过建立数据仓库与底层关系数据库交互,通过OLAP软件完成多维数据分析展现;3)方式是在客户端与服务器之间增加一个多维数据分析

2 建立数据源、数据源视图以及多维数据集

为了实施OLAP,使用统一维度模型(UDM)设计,以及由下至上的方法添加OLAP的功能。UDM设计能够通过统一的结构直接访问多个异类数据源,并对查询、数据和元数据统一使用传输方法。在由下至上方法中,以数据源开始,然后根据数据源构架创建数据源视图,接着再创建基于数据源视图的Analysis Services维度和多维数据集。为Analysis Services数据库指定一个或多个数据源,可以为维度、多维数据集、挖掘模型和其他Analysis Services对象提供数据[2-3]。

创建数据源时,可以通过两种方式新建数据源。一种是“基于现有连接或新连接创建数据源”,可以通过选择现有数据源从现有数据源中复制连接字符串;另一种是“基于另一个对象创建数据源”可以引用现有数据源或Analysis Services项目。本系统应用“基于现有连接或新连接创建数据源”。

数据源视图是描述基础数据源架构的对象,它提供一组已命名的、可浏览的、持久化数据库对象。通过描述数据源中的表或视图的子集,数据源视图可以提供多维数据集或维度所需的表。数据源视图处理表的布局、筛选器、SQL表达式、关系以及架构的其他复杂性。因此,数据源视图通过Analysis Services多维数据集、维度和挖掘模型,可以对数据源视图中的表和列进行简单绑定。可以在一个数据源中生成多个数据源视图,并可以分别构建每个数据源视图,以满足不同的多维数据集、维度或其他对象的要求。一个简单数据源视图支持多个关系图,这些关系图显示该数据源视图的不同子集。有时,还可以使用单独的关系图来处理属于特定对象的数据源视图的各个部分。与不同的数据源视图不同,不同的关系图引用相同的架构。因此,在关系图中所做的任何更改都会应用到数据源视图中的所有其他关系图中。为本系统创建的数据源视图如图1所示。

图1 在线销售系统的数据源视图Fig.1 Data source view of the online sales system

多维数据集是包含维度和度量值的多维结构。维度定义多维数据集的结构,而度量值提供最终用户感兴趣的数值。创建多维数据集同样有两种方式,一种是“使用数据源生成多维数据集”,一种是“不使用数据源生成多维数据集”。使用“数据源生成多维数据集”时将遵循步骤:选择数据源视图→标识事实数据表和维度表→定义时间段→选择维度→选择度量值,之后将完成多维数据集的创建。而“不使用数据源生成多维数据集”时将遵循步骤:选择维度→定义新度量值→定义新的维度→定义时间段→定义维度用法,则完成多维数据集的创建。本系统应用“使用数据源生成多维数据集”。

“在线销售”主题主要有一个事实表,4个维度表构成。事实表用来存储事实的度量值,维度表用来保存该维的元数据,即维的表述信息,包括维的层析及成员类别等。事实表通过每一个维的值和维表联系在一起的。本系统中事实表InternetSales包括销售序列号、销售产品类别号、客户关键字以及地域关键字等;Customer维度表包括客户关键字、地域关键字、客户姓名以及客户出生日期等的客户信息;Geography维度表、Time维度表和Product维度表。在线销售系统的事实表和维度表如图2所示。

图2 在线销售系统的事实表和维度表Fig.2 Fact table and dimension table of Online sales

3 OLAP多维数据分析

在在线销售数据分析过程中,用户希望从多个角度观察某一指标或多个指标的值,并且找出这些指标之间的关系,比如用户想知道“同一产品在三月份和六月份销售额的情况对比”,这就需要对该类产品在“时间”维度上分析,通过比较统一产品不同销售时间的销售额情况,及时掌握市场的销售信息,做出对企业有利的产品销售预测以及指定正确的销售方案[4]。

利用Analysis Manager,用户不仅在图形界面下建立多维数据集,还可以直接用它的浏览功能查看分析数据。进行分析展现时,Analysis Services工具以树型结构显示选定Cube的元数据。每个Cube都有一个特殊的惟—Measure,这个维的成员都是度量值,提供最终用户感兴趣的数据。用户可以选定元数据并拖到数据汇总区域,实现数据的多维显示。本系统中度量值包括折销售总额、扣销售总额、货物存储量、纳税额以及订购数量等等。

在树型结构的元数据中,除存储着可以进行汇总数据的所有的度量值以外,其余的则是表示可以从不同的维度对需要汇总的数据进行度量的相关属性。显示从不同的角度对数据进行度量包括客户维度、产品维度以及时间维度,尽管在据库级别只创建了4个维度,但在Analysis Services Tutorial多维数据集中却有6个多维数据集维度。该多维数据集包含的维度比数据库多,其原因是,根据事实数据表中与时间相关的不同事实数据,“时间”数据库维度被用作3个与时间相关的单独多维数据集维度的基础。这些与时间相关的维度也称为“角色扮演维度”。使用3个与时间相关的多维数据集维度,用户可以按照下列3个与每个产品销售相关的单独事实数据在多维数据集中组织维度:产品订单日期、履行订单的到期日期和订单发货日期。

为了具体了解多维数据集中的详细数据,方便用户的分析,用户可以提交对数据的各种多维的分析请求,如上卷、下钻、切片、切块、旋转等操作[5-6]。比如,在现有现有所有产品各地区销售的情况下,用户需要了解各类产品的销售情况,此时需要采取在“产品”维度上的下钻操作,反之逆操作则为上卷操作。如图3中的第一列表示需要对哪些地区的数据进行操作,此数据来自Dim Customer的相关属性中;第二列显示所要获得的数据—度量值,来自Measures的Fact Internet Sales的相关属性中。

图3 法国各地区在线销售总额Fig.3 Total sales of the French

图4所示是对所有的各类产品的销售额进行汇总,也可以根据需要只显示部分类别的产品销售记录,只需在“product Line”中选择需要展示的类别。

图4 法国地区各类产品在线销售额Fig.4 Total online sales of various products of the French

4 结束语

通过在线销售系统中在线销售数据的分析,结合实际的在线销售业务,建立以在线销售为主题的事实表和相关的维度表,利用SQL Server 2005提供的商业智能工具SSIS(SQL Server Integration Services)对数据源中的数据进行数据抽取、转换病装载到多维分析数据仓库中。利用SSAS(SQL Server Analysis Services)建立数据源、数据源视图以及多维数据集,并利用分析展现工具将分析数据以灵活的形式展现,直观清晰地实现对企业销售状况的查询分析。

[1] 于秀梅.数据仓库的多位分析展现技术[D].北京:北方工业大学,2012.

[2] Mundy J,Thornthwaite W,Kimball R.数据仓库工具箱[M].北京:清华大学出版社,2007.

[3] 徐俊刚,裴莹.数据ETL研究综述[J].计算机科学,2011(4):15-18.XU Jun-gang,PEI Ying.Overview of data extraction,transformation and loading[J].Computer Science,2001(4):15-18.

[4] 李雅莉.决策支持系统中OLAP的设计与实现[J].宝鸡文理学院学报:自然科学版,2009(6):67-71.LI Ya-li.OLAP design and realization in decision support system[J].Journal of Baoji University of Arts and Sciences:Natural Science,2009(6):67-71.

[5] 王武习.基于数据仓库的高校就业信息管理OLAP系统设计[J].软件导刊,2010(1):157-158.WANG Wu-xi.Employment information management system design of colleges and universities based on data warehouse OLAP[J].Software Guide,2010(1):157-158.

[6] 郑丹青.基于OLAP技术的医疗信息多维数据设计与分析[J].吉林师范大学学报:自然科学版,2011(8):56-58.ZHENGDan-qing.OLAP-based designand analysisofmultidimensional medical information data sets[J].Journal of Jilin Normal University:Natural Science Edition,2011(8):56-58.

猜你喜欢
数据仓库数据源视图
基于数据仓库的住房城乡建设信息系统整合研究
Web 大数据系统数据源选择*
5.3 视图与投影
视图
Y—20重型运输机多视图
SA2型76毫米车载高炮多视图
基于不同网络数据源的期刊评价研究
分布式存储系统在液晶面板制造数据仓库中的设计
探析电力系统调度中数据仓库技术的应用
基于数据仓库的数据分析探索与实践