多维联机数据分析模型和系统设计方法[转]

1联机分析处理

企业或管理部门每天都会有大量的业务数据进入数据库。这些日常业务数据,如商品的零售价,集装箱所装货品的详细清单等,称为“操作数据”。它们不仅是业务操作的记录,也是进一步进行统计、分析和决策所需要的原始数据,是企业和管理部门的宝贵信息资源。操作数据可以经过适当的抽取、净化、聚合后存入数据仓库。数据仓库存储的是“战术性”的信息,如“第三季度美东航线的总箱量”等等。

联机分析处理(OLAP--OnLine Analysis Processing[1][2][5][6]是从原始数据中分析和挖掘出有价值信息的数据处理技术。即把原始数据转换为管理人员所理解的、反映企业或行业业务实际状况的各种视图,为进一步的分析提供“战略性”的信息。

OLAP使企业的经理和管理人员能通过快速、一致、交互的方式,获得多种多样的、所有可能的信息视图。与建立在关系数据库基础上的数据仓库不同,OLAP建立在多维数据模型的基础上,用聚合数据的多维视图来表示信息。

OLAP中可包含远比简单的求和之类复杂得多的计算,如时间序列和复杂的建模等。OLAP除了回答“谁?”和“什么”以外,它还能回答“如果这样,将会如何?”和“为什麽?”之类问题。OLAP能为将要做的事情进行分析。例如OLAP可回答如下的问题:“如果美国西部港口的使费增加3%,油价降低1.5美元/桶,本公司美西航线的成本开销会有什么变化?”

OLAP可以应用在企业和管理部门的各个分析决策领域。当经理或管理机关要作出有效的决策时,OLAP能提供他们可能会需要的各种各样的信息。OLAP应用成功的标志是它能提供所需要的战略信息----能为有效决策提供恰好所需的信息。这一功能远远超出了一般的“提供详细数据”这样一种基本要求。

虽然OLAP的应用是各不相同的,但它们都要求具有以下关键特征:

数据的多维视图----能提供管理和决策人员各种可能的视图;

强有力的计算能力----可包含各种复杂的计算和建模能力;

时间维的处理能力----能反映时间的序列特性。

多维视图是企业实际业务模型的本质表示,极少有业务模型限于三维以下的。各种分析需要多种计算方法,从简单的聚合,到代数方程的解,到各种复杂关系的建模。时间几乎是所有分析的组成部分。例如业务的好坏总是通过时间来判别的:本月与上月比,本月与上一年同一个月比。时间是一个独特的维,因为它有序列特性(三月总是跟在二月后面)。OLAP系统在分析的时候必须遵循时间的序列本质。

 

2. MOLDA多维联机数据分析模型

MOLDAMulti-dimensional OnLine Data Analysis,意为“多维联机数据分析”)是作者在一些分析和决策支持项目研究开发过程中,根据实际需要而设计的一个OLAP系统模型,称为“MOLDA模型”。建立在MOLDA模型基础上的OLAP系统的设计方法,称为“MOLDA设计方法”。根据这个模型开发的XOLDASExtensible OnLine Data Analysis System)是一个OLAP系统的工作平台,用它可以建立各个应用领域的基于MOLDA模型的OLAP系统。

MOLDA设计和建立的多维联机数据分析系统具有以下主要特点:

n         建立在多维数据模型的基础上。MOLDA的一个重要组成部分是“多维业务空间”。系统设计人员通过对业务主题的调查、分析和设计而得到的业务空间,是系统为用户提供多种业务信息视图的依据。通过聚类和分层可把多维视图信息用二维表格和图形表示出来。

n         除了“计算期”和“对比期”以外,用户数据源中任何时间属性都可在时间维中得到考虑。时间被作为业务空间中的一个特殊的维,其序列特性得到保证。

n         通过专门设计的接口,可以在方法库中加入各种指标计算方法、统计分析方法。

n         数据源可以是任何联机数据。

n         MOLDA设计的OLAP应用系统,可方便的扩充和修改。

MOLDA模型把联机分析处理系统分为“联机数据分析系统”和“联机数据分析定义库”两大部分。联机分析子系统由分析子系统、数据连接子系统,数据源等各个主要部分。左边是联机数据分析的定义库,包括“业务多维空间”的定义,“方法库”,“数据连接、抽取、转换定义”及“数据源的定义”等部分。

当用户提出了各种多维分析要求后,分析子系统即从方法库及多维业务空间定义库中寻找与此多维分析要求相匹配的分析方法。同时它指令数据连接子系统寻找适当的数据源,并按分析方法的要求,连接数据源,以获得必要的分析数据。

MOLDA设计方法指的是多维业务空间的设计和定义,方法库中分析方法的设计及其与多维业务空间的匹配设计,数据连接和数据源的定义等,它们是联机数据分析系统设计的关键。本文将结合纪检监察案件分析等实例,介绍MOLDA系统设计方法。

 

3.MOLDA多维业务空间的设计

文献[1]介绍了MOLDA多维业务空间的概念及其在交通投资方面应用的实例。本节则强调设计的步骤和方法,并以“纪检监察案件分析系统”业务空间设计作为实例。

3.1概念

所谓“多维业务空间”指的是联机数据分析系统所要描述和分析的业务问题的范围和内容。

一个业务问题必定包含若干用户关心的、必须加以研究的因素,称为“业务要素”。例如在进行“企业效益”这样一个业务问题分析时,“时间”,“产品”,“价格”,“销售渠道”等等就是业务要素。

有的业务要素可以再细分;各业务要素之间也可能互相关联。对于所要研究的问题,在诸多业务要素中,那些不可再细分的、互相独立的业务要素,是这个业务主题的“基本业务要素”。它们构成了这个业务问题的业务空间。每一个基本业务要素就是这个业务空间的一个“维”。

每个维的坐标有坐标值。例如电器公司的“产品类别”维坐标有有限个坐标值:空调机,冰箱,微波炉。而“价格”维则可取无限个坐标值。

业务空间中的维有三种类型,即时间维,分类维和指标维。分类维用于对业务要素或维坐标值的细分。指标维用于说明可实现的统计描述内容。

 

 

 

3.2多维业务空间的设计步骤

(1)通过调研和分析,找出这一应用领域,管理和决策人员可能需要的业务主题;

(2)细分这些业务主题,找出构成这些主题的业务要素;

(3)分析和整理这些业务要素,找出互相独立的、不可分的业务要素,即基本业务要素;

(4)用基本业务要素来构造业务空间;

(5)确定哪些维是指标维、分类维或时间维;确定这些维的值域及可能的取值单位;

(6)确认各维的各个坐标值都有数据来源;

(7)反复调整,直到业务空间、各维的特性及互相关系都满足要求,并保持协调一致。

 

4.MOLDA方法库设计

4.1概念

对于所要分析的问题,系统设计者可以选用各种适用的统计分析方法,或另外设计专门的方法来适应特定问题的分析需要。所有可能需要的方法将装入方法库。

MOLDA支持多维数据分析,支持“切片”,“旋转”、“上卷/下钻”等操作。因此,方法设计的另一个关键是确定每一个分析方法与业务空间中各个维的关系。对每一个方法要确定它所适用的业务子空间,即确定这个方法可用于由哪些维构成的空间或子空间。

分析的结果一般用二维表和图来表示。用户可把最感兴趣的两个维显示在二维平面上,以便研究这两个维的业务要素对所研究问题的影响,或这两个要素之间的相互影响。显示在平面上的这两个维称作“主词维”和“宾词维”。

如果研究发展趋势或进行动态分析,时间维可作为主词维。

 

4.2方法库的设计步骤

 

(1)根据分析要求和有关数据的特性,设计足够多的分析方法,以满足管理和决策人员对数据分析的所有可能的要求;

(2)对每一个方法,确定业务空间中哪些维可以用于这一方法,仔细研究这些维之间的关系,确保它们在多维空间中的可操作性;

(3)确认使用这个方法时所需的数据有数据来源。

 

5.数据连接设计

5.1概念

MOLDA联机数据分析系统进行分析所必需的数据可以取自本地,或通过网络存取远程数据。数据源可以是文件、数据库、数据仓库等任何联机电子数据。数据连接设计的目的是使多维业务空间中各个坐标轴的每一个坐标值,在分析的时候,都能够从数据源中找到数据。为此,首先必须有MOLDA的“系统数据源定义”,它包括数据源的结构以及数据源中数据之间的联系。大多数数据源的数据都存储在关系数据库中。在其他情况下,如有可能应把数据转储到关系库中。因为关系数据库有成熟的商品化软件的支持,操作和连接也比较方便。

有了系统数据源的定义后,应定义多维空间各个坐标轴的每一个坐标值的数据来源,这称为“坐标值数据定义”,通常可以用一个对数据库的存取操作来表示。

在多维分析时,各个维的坐标值共同决定了应在数据源中选择哪些数据进行分析。因此当用户选定了一个分析方法以及与这个方法匹配的各个维的坐标值以后,要把这个分析方法所涉及的每个维的“坐标值数据定义”集合在一起,通过分析,得到当前用户选定的多维分析的“数据连接定义”。

5.2实例

纪检监察案件分析的数据源存储在关系数据库中,它由“信访件”,“重复信访件”,“初步核实案件”,“立案案件”,“举报人”,“被举报人”,“主要案情”,“办理记录”,“结案情况表”等关系数据库表组成。图5.1是纪检监察案件分析中数据连接设计的部分摘录,其中只涉及数据源中信访件和重复信访件两张表。

业务空间中的坐标 / 坐标值 数据连接定义 / 坐标值数据定义

S1.1.1.2 信访计算期情况    

计算期信访件 = 信访件[信访日期in计算期]

计算期重复信访件=重复信访件[收到日期in计算期]

 

信访合计                       信访合计数 = count(计算期信访件)

+ count(计算期重复信访件)

初信                           初信数 = count(计算期信访件)

重信重访                       重复信访件数 = count(计算期重复信访件)

越级信访                       越级信访件数 = count(计算期信访件[是否越级=])

……

S1.2.5.2 信访件类别         信访件[信访分类]

申诉                           信访件[信访分类=“申诉”]

检举                           信访件[信访分类=“检举控告”]

建议                           信访件[信访分类=“建议批评”]

其它                           信访件[信访分类=“其它”]

5.1 纪检监察案件分析的数据连接设计摘录

5.3数据连接设计步骤

(1)定义数据源,一般包括关系数据库表,表的属性及各表之间联系的定义等;

(2)对多维业务空间中的各个维,定义其每个坐标值的“坐标值数据定义”,每个这样的定义实际上是对数据源的一个查询语句;

(3)对每个方法,将其各个维的“坐标值数据定义”集合起来,构造方法的“数据连接定义”,即对所有查询语句涉及的数据库表进行分析,进行必要的连接。

 

6.结语

MOLDA联机数据分析系统允许用户选择各种统计分析方法,通过选择维和多维操作来设置分析功能、统计分析内容、统计数据整理、分类主题查询等,从而有可能为用户提供各种业务分析视图。

因此,用MOLDA设计和开发的联机数据分析系统可以应用在企业或管理部门的各种统计分析和决策工作中,包括企业或部门的职能统计,综合统计,决策分析等等。例如系统可用于财务、生产、劳动人事、产品、投资等各方面的统计;支持用户选择各类企业效益综合评价方法,构造各类综合指标,建立指标体系;通过多维分析、查询、再统计等手段,进行经济运行和管理分析。MOLDA还可用于构造各种业务分析和决策支持系统,满足决策者多种多样和随机的分析需求。

设计MOLDA多维联机数据分析系统需要对企业或管理部门的业务和决策要求有详细的了解,掌握已有的数据资源,并按设计步骤进行详细的设计。

XOLDAS是根据MOLDA设计的OLAP开发平台,但MOLDA设计方法也可以用在其他统计分析和决策支持系统的设计中,只要该系统建立在多维模型的基础上,需要进行多种多样的分析,并连接各种数据源。

本文节选自肖昭媛的《多维联机数据分析模型和系统设计方法》

posted @ 2007-03-15 13:17  随风而逝  阅读(986)  评论(0编辑  收藏  举报