移动通信业是典型的数据密集型行业,随着通信体制改革的深化,移动通信业的竞争也日趋激烈。与其他行业相比,移动通信行业拥有更多的有关用户的数据。谁能正确地分析这些数据所得到有用的信息,谁就能更好地向用户提供服务,也就能够发现更多的商机,从而在竞争中获胜。数据仓库可以将移动通信企业的这些数据变为有用的信息来支持决策,因此,数据仓库在移动通信业中有重要的应用价值。
现在绝大多数的企业都在走经营分析信息化这条路,但光有综合业务自动化系统或者决策支持系统却没有完善的数据支持都属于粗放型经营分析,只算是达到了企业经营分析的自动化,还不能算是经营分析信息化。可以通过移动通信业逻辑数据模型,建立一个集中的、一致的和可扩展的数据仓库系统,以保证移动通信企业运用先进的经营分析系统建立战略性的竞争优势。
1 数据仓库的概念及技术
1.1 数据仓库的概念
数据仓库之父Bill Inmon对数据仓库所下的定义是:数据仓库是面向主题的、集成的、稳定的、随时间变化的数据集合,用以支持管理决策的过程。这个定义概括了数据仓库的实质。从存储方式和技术方面,数据库领域著名的学者韩家炜教授给出另外一个描述:数据仓库是一种多个异种数据源在单个站点以统一的模式组织的存储,以支持管理决策。可见,数据仓库是一个支持决策的过程,它有这样一些特性:面向主题的、集成的、稳定的、随时间变化的,多个异种数据源在单个站点以统一的模式组织存储的。
1.2 数据仓库技术
1.2.1 数据处理
数据仓库的数据处理(ETL)包括数据的抽取、清理、转换与加载。把数据从操作型环境转换到数据仓库环境的数据抽取要实现技术上的变化。这种变化不仅指的是一种DBMS的变化,还包含源于操作系统的变化、硬件的变化、数据结构的变化。
把数据从操作型环境载入到数据仓库环境时,如果数据以一种非集成状态到达数据仓库,它就不能被用来支持数据的企业视图。数据的企业视图是体系结构设计环境的本质之一。
数据并非只是注入数据仓库,它在数据仓库中也有自己的生命周期。到了一定时候,数据将从仓库中清除。数据清理问题是数据仓库设计人员无法回避的基本设计问题之一。从某种意义上讲,数据根本不是从数据仓库中清除,而仅是上升到更高的综合级。
1.2.2 数据仓库的数据模型
一个企业数据模型建造时不考虑现存的操作型系统与数据仓库之间的差别,企业数据模型只包含原始数据。要建造一个单独的现存数据模型,需要从企业数据模型开始。当企业数据模型用于操作型系统时,几乎不用做什么改动。但是,企业数据模型用到数据仓库中要做相当多的改动。首先要做的是除去纯粹用于操作型环境的数据;然后在企业数据模型的键码结构中增加时间元素;导出数据加到企业数据模型中,在那里导出数据作为公用并只计算一次,而不重复计算;最后,操作型系统中的数据关系在数据仓库中就转变为“人工关系”。
有3个层次的数据建模:高层建模(ERD,实体关系层),中间层建模(DIS,数据项集),底层建模(物理层)。
1.2.3 数据仓库的性能特性
确定性能特性是设计的重要一步,在数据仓库的情况下,意味着决定数据的粒度与分割。
粒度 粒度是指数据仓库的数据单位中保存数据的细化或综合程度的级别。在早期建立的操作型系统中,粒度是用于访问授权的。当详细的数据被更新时,几乎总是把它存放在最低粒度级上。但在数据仓库环境中,对粒度不作假设。在数据仓库环境中粒度之所以是主要的设计问题,是因为它深深影响存放在数据仓库中的数据量的大小,以及数据仓库所能回答的查询类型。在数据仓库中的数据量大小与查询的详细程度之间要作出权衡。
分割 人们常说,如果粒度和分割都做得很好的话,数据仓库设计和实现的几乎所有其他问题都容易解决。但是,假如粒度处理不当并且分割也没有认真地设计与实现,这将使其他方面的设计难以真正实现。对当前细节数据进行分割的总体目的是把数据划分成小的物理单元。数据分割的重要性在于小的物理单元能为操作者和设计者在管理数据时提供比对大的物理单元更大的灵活性。
物理I/O 物理设计因素的中心在于物理I/O(输入/输出)。对性能来说I/O事件如此重要是因为存储器和计算机之间的数据传输速度比计算机运算速度要慢大约2~3个数量级。计算机内部运算速度以毫微秒计,而数据的传输速度是以毫秒计。因此,物理I/O是主要影响性能的因素。为了提升性能,应在系统中尽量减少物理I/O。
1.2.4 样本数据库
样本数据库是数据仓库的一种有趣的、混杂的形式,它只是真实档案数据或轻度综合数据的子集。术语“样本”源于它是更大数据库的子集(即样本)这一事实,并需要进行定期刷新。
1.2.5 数据仓库中的数据组织
数据仓库中最简单最常用的数据组织形式也许是简单堆积结构,从操作型环境中取出每天的事务处理,然后综合成数据仓库记录,这个综合可根据顾客、帐户或者任何组织到数据仓库的主题领域来进行。这里的事务处理是以天来进行综合。数据通过与前面相同的处理方法从操作型环境输入到数据仓库环境中。只是在轮转综合文件中的数据才被输入到不同的结构形式中。第一周的7天中的活动被逐一综合到7个每日相应的位置,到第八天,将7个每日位置的数据加到一起,并放人第一周的数据位置中。然后,第八天的每日总计加到第一个每日数据位置。
1.2.6 元数据
数据仓库环境中一个重要方面是元数据。元数据是关于数据的数据。只要有程序和数据,元数据就是信息处理环境的一部分。但是在数据仓库中,元数据扮演一个新的重要角色。也正因为有了元数据,可以最有效地利用数据仓库。元数据使得最终用户/DSS分析员能够探索各种可能性。元数据在数据仓库的上层,并且记录数据仓库中对象的位置。
1.2.7 数据索引与监视
数据仓库的灵魂就在于灵活性和对数据的不可预测的访问。数据仓库中的数据如果不能方便和有效地检索,那么建立数据仓库这项工作就不成功。当然,设计者可以利用许多方法来使数据尽可能的灵活,例如利用双重粒度级和数据分割。但这些技术一定要支持方便的索引,如二级索引、稀疏索引、动态索引、临时索引等。而且建立和应用索引的费用不能太高。同时数据仓库中的数据也应能随意地被监视,监视数据的费用也不能太高,过程不能太复杂,监视程序在需要时应能随时运行。
1.2.8 数据周期
所谓数据周期是指从操作型环境数据发生改变起,到这个变化反映到数据仓库中所用的时间。原则上从操作型环境知道数据的改变到这个变化反映到数据仓库中至少应该经历24 h。没有必要急于把这个变化转入信息仓库中去,原因在于如果操作型环境与数据仓库相互之间结合得越紧密,那么所需的费用就越昂贵,技术也越复杂。24 h的时间间隔以现有技术来说将很容易被实现。更有说服力的一个原因是,时间间隔给环境附加了一个特殊的限制。间隔24 h,使得在数据仓库中不必做操作型处理;在操作型环境中不必做数据仓库处理。时间间隔的另一个好处是在转入数据仓库之前,数据能达到稳定。
1.2.9 数据分析
数据分析技术是指一种能够应用在数据仓库基础之上,进行业务应用分析的数学方法。在现阶段主要包括OLAP技术、数据挖掘技术、统计分析技术、联机挖掘等内容。
OLAP技术也叫联机分析处理。是使分析人员、管理人员或执行人员能够从多种角度对从原始数据中转化出来的、能够真正为用户所理解、并真实反映企业维特性的信息进行快速、一致、交互地存取,从而获得对数据的更加深入了解的一类软件技术。
OLAP技术的技术核心就是维。如地理维、时间维等。维也可以分层次的。例如时间维可以向下分成日期、月份、季节、年等不同的层次;地理维可以向下划分为区、省、市、县、乡等层次。
2 数据处理方案的选择
对于移动通信企业而言,数据仓库的实施是对移动经营分析管理的一次提升,因此要谨慎地选择适合需要的数据仓库数据处理与分析产品。目前主流数据仓库的数据处理专业工具有:CA,NCR,IBM,Informix(IBM),Oracle和SAS。
经过采样测试和对用户的调查,SAS效率较其他工具高,ETL的效果较好,适合经营分析领域的数据处理。在国际学术界有条不成文的规定:凡是SAS统计分析的结果,可以不说明算法。通过对SAS 8.0的使用,发现SAS的人机对话界面很友好,既可以通过编程进行数据的处理,也可以通过在对话框选择命令来间接得到数据处理代码。但SAS数据处理的劣势是它的数据仓库是一种比较落后的数据集模式。
由于SAS数据处理的效率性能和相关功能及对经营分析的针对性都优于其他专业工具。最终决定选择SAS作为数据处理的工具,为弥补SAS数据库技术的落后,数据仓库的存储还是采用最流行的Oracle。
3 数据分析方案的选择
市场上流行的主要有Cognos,Business Objects,Brio等数据仓库前端分析工具。对于移动通信企业经营分析系统,除了要有基本的旋转、切片、钻取功能等OLAP功能以外,关键是有功能强大完整的Web端。Brio可以支持Web/Intranet环境,并且报表生成速度快,支持多种数据导出格式,如excel,pdf,txt,html,csv等。其离线分析方式也保证了经营分析系统的性能不会受到用户的增加而减弱。Brio在这些方面比较合适企业经营分析系统的要求,所以我们选择Brio作为移动通信企业经营分析系统的数据分析工具。
4 经营分析系统中数据处理的实现
一般来说,在企业构建分析型系统之前,都会已经存在若干的业务系统。来自这些系统的数据代表了企业目前的业务状况。这些数据一般是高粒度的,即达到非常细节的程度(例如移动通信行业里面的详细通话记录等)。来自移动业务系统的实时数据是企业数据仓库的最重要的数据来源,但是,在这些数据进入数据仓库之前,必须经过抽取、转换、加载等多个工序的处理。
典型的数据抽取接口包括数据库接口和文件接口,对于不同的数据平台、不同源数据形式、不同性能要求和业务量的源数据以及不同数据量的源数据,采取不同的数据抽取接口。数据转换是指从业务系统中抽取的源数据根据数据仓库系统模型的要求,进行数据的转换、清洗、合并、拆分、汇总等处理,保证来自不同系统、不同格式的数据的一致性和完整性。数据加载就是将从数据源系统中抽取转换后的数据加载到数据仓库系统中。数据加载策略要考虑加载周期以及数据追加策略方面的问题。
对于数据的抽取与转换过程中发现的错误数据,在加载到数据仓库的同时,打上错误数据的标签,并结逻辑上集中存放。
目前,移动通信行业已经建立起自己的BOSS(Business Operation Support System)系统,对自身的计费系统和客户服务系统等专业业务系统数据进行了整合。这就是经营分析主要的数据源。
经营分析数据处理的意义在于通过处理,一方面提高数据的质量;另一方面,使数据从适应业务系统(OLTP)的数据模式转换为适应分析系统的数据模式。
5 经营分析系统中数据分析的实现
数据分析技术是建立在一定的数据基础上的,进行分析的方法通常包括:OLAP分析、数据挖掘、统计分析、联机挖掘(OLAM)等。需要说明的是,数据分析技术不一定要建立在数据仓库基础上,但有了数据仓库,数据分析的效率和能力将大大提高。
移动通信企业经营分析系统分析部分的逻辑结构主要分三部分:服务器,其中包括网络应用服务器与查询服务器两个模块;以Client/Server方式的客户端;以Web方式的客户端。
网络应用服务器可以让客户在网上查询、集中管理客户、报表的安全性和可适应得报表。查询服务器按照预定时间自动进行查询处理并通过E-mail、网络、打印机和Web分发报表。
移动通信企业经营分析系统的主界面显示的是近一季度全公司各种业务的业绩水平。具体的分析主题可以通过主界面进行一些功能模块选择,主要分为长话流向分析,时段分析,消费水平分析3个功能模块。
通过对各种角度的需求分析,总结分析内容的一般细化方法。主题的划分实际上与分析内容的范围直接相关,主题划分清楚后,下一步就是细化分析以及根据分析内容的性质确定它在数据仓库中的位置。通常维元素对应分析角度,而度量对应分析关心的具体指标,在数据仓库中体现在话费数额,通话张数,通话时长等方面。一个指标究竟是作为维元素、度量还是维属性,取决于具体的业务需求,但从实际操作中可以总结出如下的概念性经验:作为维元素或维属性的通常是离散型的数据,只允许有限的取值;作为度量的是连续型数据,取值无限。如果一定要用连续型数据作为维元素,则必须对其按取值进行分段,以分段值作为实际的维元素,就像为了取消费水平为维元素,就对客户群的消费水平进行分段。判断分析指标是作为维元素还是维属性时,则需综合考虑这个指标占用的存储空间与相关查询的使用频度。需要强调的是,在细化分析内容的过程中,务必解决指标的歧义问题。在不同报表中以及在业务访谈中同一名称的指标,是不是在同样条件限定下,通过同样方法提取或计算得到的,它们之间的相互关系是什么,这些问题都必须从熟悉业务的分析人员那里得到准确、清晰的答案,否则将影响到模型设计、数据提取、数据展现等多个方面。
6 结语
本文分析和探讨了在移动通信企业中建立基于数据仓库的经营分析系统的若干问题,并进行了相关的设计。但讨论尚不全面,需要在工作中继续研究。
移动通信企业日益增多的信息数据无疑是一个巨大的聚宝盆,通过对数据的不断分析研究,挖掘出更深层次的内容找出更多有价值的规律,需要企业各层面的人员共同协作、长期参与,而这给移动通信企业带来的效益也将是源源不断的。