数据仓库的实施
数据仓库是解决方案,而不是产品。不同企业有不同的数据仓库。企业人员往往不懂如何利用数据仓库,不能发挥其决策支持的作用;而数据仓库公司人员又不懂业务,不知道建立哪些决策主题,从数据源中抽取哪些数据。因此,需要双方互相沟通,共同协商开发数据仓库。
开发数据仓库流程可以概括为以下几个步骤。
第一,启动工程。建立开发数据仓库工程的目标及制定工程计划。计划包括数据范围、提供者、技术设备,资源、技能、组员培训、责任、方式方铥、工程跟踪及详细工程调度。
第二,建立技术环境。选择实现数据仓库的软硬件资源,包括开发平台、网络通信、开发工具、终端访问工具及建立服务水平目标(可用性、装载、维护及查询性能)等。
第三,确定主题进行仓库结构设计。数据仓库是面向决策支持的,它具有数据量大但更新不频繁等特点,只有对数据仓库进行精心设计,才能满足数据量快速增加而查询性能并不下降的要求。
第四,数据仓库的物理库设计。基于用户的需求,着眼于某个主题,开发数据仓库中数据的物理存储结构。
第五,数据抽取,精炼、分布。根据数据仓库的设计,实现从源数据抽取数据、清理数据、综合数据和装载数据。
第六,对数据仓库的OLAP访问。建立数据仓库的目的是要为决策支持服务,所以需要各种能对数据仓库进行访问分析的工具集,包括优化查询工具,统计分析工具、C/S工具及数据挖掘工具,通过分析工具实现决策支持需要。
第七,数据仓库的管理。数据仓库必须像其他系统一样进行管理,使数据仓库正常运行。
实施数据仓库时应注意的问题
实施数据仓库时应注意这样几个问题。
第一,面向的对象。数据仓库应用本身并不是业务流程的再现,而是基于数据分析的管理模式的体现。因此,数据仓库对企业决策层的意义在于企业经营管理模式。数据仓库的实施者需在商业智能化如何能够帮助企业获得市场竞争力上下工夫,提供切实有效的系统实施目标和规划,使得企业决策层充分认识到数据仓库是他们自己所需要的系统,在投入和配合上给予充分的支持。
第二,数据仓库的需求。由于数据仓库的访问和查询往往能够通过工具来提供,因此数据仓库的功能取决于系统的规划和设计。了解应用的需求必须从企业如何利用信息进行管理的角度出发。数据仓库的设计实施也循序渐进,逐步满足需求,最后获得全面的成功。
第三,坚持原则。对原始数据,需要坚持的原则是不拘泥于业务系统的现状。由于数据仓库是于业务系统的,其实施应以管理层分析决策的需求为主线,在设计中可以为不确定数据预留空间。数据的完整性和质量问题可通过如下方式处理:利用多种方式加载数据,设计专门的输入接口收集数据,如获取客户的个人资料;放宽数据的时效性,在分
析中 标明个别数据的有效时间;在系统中标识出低质量的数据,规范业务系统。
第四,抽取方式。一个数据仓库系统往往同时存在多种数据抽取方式以适应原始数据的多样性,因此,讨论单一抽取工具的选型没有意义,只能坚持简便、快捷、易维护的原则。
第五,数据展现。数据仓库的分析工具在固定格式的报表再现上有时不如专门定制的程序,但数据仓库的强项在于提供联机的业务分析手段。正因为数据仓库的使用,才使管理人员逐步摆脱对固定报表的依赖,代之以丰富、动态的联机查询和分析来了解企业和市场的 动态。
第六,实施范围。制定明确的计划和时间表,新的技术和产品可以分阶段加入,以避免无休止的测试和选型。
一、数据库和数据仓库
数据库已经在信息技术领域有了广泛的应用,我们社会生活的各个部门,几乎都有各种各样的数据库保存着与我们的生活息息相关的各种数据。作为数据库的一个分支,数据仓库概念的提出,相对于数据库从时间上就近得多。美国著名信息工程专家WilliamInmon博士在90年代初提出了数据仓库概念的一个表述,认为:“一个数据仓库通常是一个面向主题的、集成的、随时间变化的、但信息本身相对稳定的数据集合,它用于对管理决策过程的支持。”
这里的主题,是指用户使用数据仓库进行决策时所关心的重点方面,如:收入、客户、销售渠道等;所谓面向主题,是指数据仓库内的信息是按主题进行组织的,而不是像业务
支撑系统那样是按照业务功能进行组织的。
集成,是指数据仓库中的信息不是从各个业务系统中简单抽取出来的,而是经过一系列加工、整理和汇总的过程,因此数据仓库中的信息是关于整个企业的一致的全局信息。
随时间变化,是指数据仓库内的信息并不只是反映企业当前的状态,而是记录了从过去某一时点到当前各个阶段的信息。通过这些信息,可以对企业的发展历程和未来趋势做出定量分析和预测。
二、数据仓库的应用
单纯从定义出发,可能会把数据仓库简单地理解为仅仅是一个大型的数据存储机制,是一个静态的概念。实际上,数据仓库更像一个过程,这个过程涉及数据的收集、整理和加工,生成决策所需要的信息,并且最终把这些信息提供给需要这些信息的使用者,供他们做出改善业务经营的正确决策。数据仓库的重点与要求就是能够准确、安全、可靠地从业务系统中取出数据,经过加工转换成有规律信息之后,供管理人员进行分析使用。因此,数据仓库是一个动态的过程,它的基础,就是现代的数据库技术。
单讲概念,有些晦涩。任何技术都是为应用服务的,结合应用可以很容易地理解。以通信运维系统为例,数据库是事务系统的数据平台,客户打的每一个电话,都会写入数据库,被记录下来,这里,可以简单地理解为用数据库记帐。数据仓库是分析系统的数据平台,它从事务系统获取数据,并做汇总、加工,为决策者提供决策的依据。比如,某地区某类用户一个月打了多少个电话,都是多长时间的,发了多少短信,该用户当前话费余额是多少。如果通话时间很长,而短信很少,那么该用户就是一个偏语音通话的客户了。
显然,电话和短信的业务量是巨大的,通常以百万甚至千万来计算。事务系统是实时的,这就要求时效性,客户打一个电话要等十几秒肯定是无法忍受的,这就要求数据库只能存储很短一段时间的数据。而分析系统是事后的,它要提供关注时间段内所有的有效数据。这些数据是海量的,汇总计算起来也要慢一些,但是,只要能够提供有效的分析数据就达到目的了。
从上面的例子可以看出,数据库是为捕获数据而设计,数据仓库是为分析数据而设计,它的两个基本的元素是维表和事实表。维是看问题的角度,比如通话时间(什么时候打的电话),业务类型(语音通话,短信息,数据通信)维表放的就是这些东西的定义,事实表里放着要查询的数据。
三、数据仓库的特点
数据仓库,是在数据库已经大量存在的情况下,为了进一步挖掘数据资源、为了决策需要而产生的,它并不是所谓的“大型数据库”。数据仓库的方案建设的目的,是为前端查询和分析作为基础,由于有较大的冗余,所以需要的存储也较大。为了更好地为前端应用服务,数据仓库往往有如下几点特点:
1.效率足够高。数据仓库的分析数据一般分为日、周、月、季、年等,可以看出,日为周期的数据要求的效率最高,要求24小时甚至12小时内,客户能看到昨天的数据分析。由于有的企业每日的数据量很大,设计不好的数据仓库经常会出问题,延迟1-3日才能给出数据,显然不行的。
2.数据质量。数据仓库所提供的各种信息,肯定要准确的数据,但由于数据仓库流程通常分为多个步骤,包括数据清洗,装载,查询,展现等等,复杂的架构会更多层次,那
么由于数据源有脏数据或者代码不严谨,都可以导致数据失真,客户看到错误的信息就可能导致分析出错误的决策,造成损失,而不是效益。
3.扩展性。之所以有的大型数据仓库系统架构设计复杂,是因为考虑到了未来3-5年的扩展性,这样的话,未来不用太快花钱去重建数据仓库系统,就能很稳定运行。主要体现在数据建模的合理性,数据仓库方案中多出一些中间层,使海量数据流有足够的缓冲,不至于数据量大很多,就运行不起来了。
从上面的介绍中可以看出,数据仓库技术可以将企业多年积累的数据唤醒,不仅为企业管理好这些海量数据,而且挖掘数据潜在的价值,从而成为通信企业运营维护系统的亮点之一。正因为如此,
广义的说,基于数据仓库的决策支持系统由三个部件组成:数据仓库技术,联机分析处理技术和数据挖掘技术,其中数据仓库技术是系统的核心,在这个系列后面的文章里,将围绕数据仓库技术,介绍现代数据仓库的主要技术和数据处理的主要步骤,讨论在通信运营维护系统中如何使用这些技术为运营维护带来帮助。
四、通信运维系统中对数据仓库的使用
现代通信运维系统往往呈现高度集中和网络化的特点,拥有多个子系统去完成网络支撑,网络管理,综合营帐等多个方面的工作。几乎每个子系统,每时每刻都会产生大量的数据,对这些数据的储存,管理和维护是通信运营商必须面对和解决的。下面是几个具体的实际例子来。
1.电信设备的实时状态。从最底层的接入网网站,到传输设备,再到核心网络的电信
交换机,每个设备每时每刻都发生着变化。网络管理系统需要实时的监控这些设备的状态,进行相应的处理工作。数据仓库可以提供对监控数据的收集,管理和查询支持。
2.用户通信话单。有别于通话处理(使用交易数据库),用户话单的存储,计量乃至后期的数据分析,都将对海量的记录数据进行处理。
3.数据业务。随着第三代移动通信的发展和普及,数据业务在通信业务中所占的比重也越来越大,甚至有超过语音通信的趋势。对这一类型的业务数据,比如用户访问某地址的数据流量,需要进行随时随地的数据记录和数据分析。
以上这些实例,都是数据仓库技术大展拳脚的领域。而数据仓库技术的引入和发展,也为通信运营维护系统提供强有力的支撑和实现手段。