在电信行业经营分析系统设计中,数据仓库维度建模设计至关重要。并将作为企业经营分析中最为关心的主题之一。本文将以客户流失分析为例,研究在实施电信行业经营分析系统时,如何构建数据仓库的维度模型。
一、建模步骤
a) 面向经营分析系统的数据仓库与面向事务处理的数据库应用需求不同,所采用的建模方法也不同。数据仓库建模的两个重要特点是面向主题和集成性。面向主题与传统数据库面向应用相对应。主题是一个在较高层次将数据归类的标准,是用户使用数据仓库进行决策分析时所关心的重点方面。每一个主题对应一个分析领域,通常与多个操作型信息系统相关。集成性是指在来源复杂的数据进入数据仓库之前,必须经过数据加工和集成,消除源数据中的不一致性,以保证数据仓库内的信息是关于整个电信行业的一致的全局信息。
1. 模型关键数据结构的设计
数据仓库的建模分为物理建模和逻辑建模。物理建模侧重于对物理存储介质的访问存取性能优化。逻辑建模针对于具体应用。
1.1 模式选择
逻辑建模是数据仓库实施中的重要一环,因为它能直接反映出业务部门的需求,同时对系统的物理实施有着重要的指导作用。目前较常用的两种建模方法是所谓的第三范式(3NF,即ThirdNormalForm)和星型模式(Star-Schema)。
1.1.1 第三范式
范式是数据库逻辑模型设计的基本理论,一个关系模型可以从第一范式到第五范式进行无损分解,这个过程也称为规范化(Normalize)。在数据仓库的模型设计中目前一般采用第三范式,它有非常严格的数学定义。如果从其表达的含义来看,一个符合第三范式的关系必须具有以下三个条件:
(1) 每个属性的值唯一,不具有多义性;
(2) 每个非主属性必须完全依赖于整个主键,而非主键的一部分;
(3) 每个非主属性不能依赖于其他关系中的属性,因为这样的话,这种属性应该归到其他关系中去。
第三范式的定义基本上是围绕主键与非主属性之间的关系而做出的。如果只满足第一个条件,则称为第一范式;如果满足前面两个条件,则称为第二范式,依此类推。因此,各级范式是向下兼容的。
1.1.2 星型模式
星型模式是一种多维的数据关系,它由一个事实表(FactTable)和一组维表(DimensionTable)组成。每个维表都有一个维作为主键,所有这些维组合成事实表的主键,换言之,事实表主键的每个元素都是维表的外键。事实表的非主属性称为事实(Fact),它们一般都是数值或其他可以进行计算的数据,而维大都是时间、地域等类型的数据。
由于电信行业数据量非常大(达到TB级),在进行数据仓库设计时,多表连接、表的累计、数据排序、大量数据的扫描等操作是面临的主要问题。要解决这些问题,在设计模型时,就需要采取如对表进行预连接(Pre-Join)、在模型中增加有关小计数据(SummarizedData)的项、对数据事先排序、通过使用大量的索引来等措施。
基于系统的响应速度、系统的复杂度、系统的维护工作量等方面考虑,我们在实施某电信行业数据仓库系统的建设时,采用星型模式。星型模式之所以速度快,在于针对各个维作了大量的预处理,如按照维进行预先的统计、分类、排序等。
1.2 基础架构的建立
建立模型的关键是维度的选取、维度的分割、维度属性的选取、实事数据项的选取。在电信行业,经营分析的目的是发现数据中的趋势,这种发现数据中的趋势的能力在很大程度上受数据质量的影响。
在电信行业经营分析系统需求分析的基础上,首先确定数据仓库分析主题域,以次作为数据聚类重组的依据。经营分析系统设计主要包括以下几个方面:
i. 确定分析的主题。
ii. 确定分析的主要指标。
iii. 确定分析的角度。
iv. 设计分析主题的角度、指标的对应关系。
以客户流失分析为例。客户流失分析从消费层次、产品类型、欠费时间等角度分析网上流失客户的客户属性构成、业务使用构成、业务使用量构成,分析在某一时段网上流失客户构成、流失客户数及发展趋势;分析影响客户流失的主要因素,以便制定合理的客户保留的营销策略;监控流失客户的情况,对流失进行预警;通过对流失客户的分析,掌握客户流失的规律,进行既定条件下客户流失的仿真模拟,为制定科学合理的营销策略提供依据。
根据分析的需求定义客户流失资料所包含的信息,主要包括:
(1) 时间类信息:流失日期,在网月份数等;
(2) 客户类信息:客户标识、所属地区、年龄、性别、职业、所属行业等;
(3) 账务类信息:缴费类型、服务类型等。
其次,设计客户流失分析的角度、指标,及其对应关系。
1.3 数据仓库中的关键对象
在数据仓库的对象层次中的关键对象是多维数据集、度量值、维度、级别和成员属性。其中,多维数据集包含度量值和维度,维度从属于多维数据集,级别从属于维度,成员属性从属于级别。
(1) 多维数据集 多维数据集是包含维度和度量值的多维结构,其结构形式有星型模型、雪花模型和混合模型。维度定义多维数据集的结构,而度量值提供最终用户感兴趣的数值。多维数据集内的单元位置由各维度成员的交集确定,通过对度量值进行聚合得到单元中的值。
(2) 度量值 度量值是所分析的多维数据集的中心值,是基于多维数据集的实事数据表中的一列,是进行分析计算的基础数据。由于电信行业经营分析系统的数据来源多,数据量大,因此度量值的确定必须经过预处理,主要包括数据一致性处理和初步计算。
(3) 维度 维度是分类的有组织的层次结构,它描述数据仓库实事数据表中的数据。维度在多维数据集中对度量值进行分类,以便进行分析。每个维度表的主键都与多维数据集的事实数据表或另一个维度表中的外键联接。
在电信行业经营分析系统的数据仓库建模中,当完成基本框架的建立后,就可以进行维度体系的设计。在维度体系设计中,要详细定义维度类型、维度名称、维度成员及维度说明。整个电信行业经营分析系统的维度类型主要分为自然属性维、用户属性维、行为方式维、业务属性维和计费属性维。针对“客户流失分析”多维数据库,我们建立的维度对象主要有在网月份、职业、性别、行业类别、服务类别、缴费类型、地区标志、日期等。
(4) 级别 级别在维度内定义,描述维度层次的内容和结构,确定层次结构中包含的成员以及它们在层次结构中的相互位置。维度对象对应于表,而级别对象则对应于相应维度表中的列。级别层次的划分应采取合适的顺序,符合电信应用领域的规定、惯例和经营分析的需求。
(5) 成员属性 成员属性是与成员相关的特性,成员是维度级别中的项目。成员属性描述维度成员的特性,成员属性从属于级别,用于加强维度的定义。成员属性与包含这些成员的维度级别存储在同一表中。在维度中创建成员属性的目的是提供有关成员的附加信息。
2 实例分析
基于以上维度模型构建的经营分析系统在某电信公司得到了良好的应用,并在企业经营中发挥了主要的作用。下面以行业类别为金融保险业的客户流失分析为例,予以说明。
(1) 分析目标:分析金融保险业客户的流失情况。
(2) 分析方法:查看某市7月份帐期中的金融保险行业的长话业务量流失客户数,设定7月份帐期的长话费如果小于前六个月的长话消费额的平均值的50%,且用户的平均消费水平在200元以上的,则认为该客户可能流失。
(3) 分析结果:首先根据以上规则对该市区金融保险行业的客户进行分析,结果如表1所示。
其次,可以查看流失客户的详细信息以及客户近12个月的消费情况,结果如图1所示。
图1客户12个月消费趋势图
|