数据仓基于数据仓库技术的决策支持系统的设计与实现.docx
- 文档编号:25598022
- 上传时间:2023-06-10
- 格式:DOCX
- 页数:87
- 大小:80.49KB
数据仓基于数据仓库技术的决策支持系统的设计与实现.docx
《数据仓基于数据仓库技术的决策支持系统的设计与实现.docx》由会员分享,可在线阅读,更多相关《数据仓基于数据仓库技术的决策支持系统的设计与实现.docx(87页珍藏版)》请在冰豆网上搜索。
数据仓基于数据仓库技术的决策支持系统的设计与实现
(数据仓)基于数据仓库技术的决策支持系统的设计与实现
第一章引言
1.1问题的提出
我国的电信业,尤其是移动通信业,起步比较晚,但发展非常快,对许多
业务的决策和方向的把握都是在摸索中进行的,某些立项缺乏统一意见和充足
的科学依据,带有一定程度的盲目性。
另一方面,经过多年运营,积累了庞大
的业务数据,如计费中心的计费数据、客服中心的用户信息数据等,这些海量
数据中包含着宝贵的经验和商业信息,可以很好地拿来借鉴今后的业务运作。
但是这些数据信息隐藏在庞大、复杂的数据库里面,许多有价值的信息并没有
直接表现出来,而是掩盖在无聊的数据后面。
多数情况下,我们不得不用到某
些分析工具,以期取得丰富而又客观翔实的商业信息,用于开发更大的市场和
提供更完善的服务。
到目前为止,电信业尚无比较完备的分析工具,然而另一方面,电信业又
面临着许多急于解决的问题,如:
话费流失问题、新业务开展问题、基站分配
问题、批价问题等等。
以话费流失为例,我国电信业每年仅此项损失就达数亿
元人民币之巨,基本上无法追回。
如何尽快避免或尽量减免这一损失,就显得
极为迫切和必须。
在这种背景下,数据仓库技术以及其上的一些分析挖掘工具就应运而生了,
如联机分析处理、数据挖掘等等。
决策支持系统(DSS-DecisionSupportSystem)是70年代由美国M.S.Scott
Morton提出,迅速发展起来的新型学科。
决策支持系统是综合利用大量数据,
有机组合众多模型(数学模型与数据处理模型等),通过人机交互,辅助各级决
策者实现科学决策的系统。
数据仓库DW(DataWarehouse)建立在传统事务型数据库的基础之上,
为企业DSS及数据挖掘系统提供数据源。
它从原事务数据库中将分析型数据与
事务型数据相分离,单独存放而形成数据集合。
数据仓库就是要把分散存放在
企业各个地方的数据集中到一起,并利用这些数据制定出更好的决策。
联机分析处理OLAP(OnLineAnalysisProcessing)是数据仓库上的分析
应用工具。
它建立在多维数据视图的基础上,主要有在线性和多维分析两个特
点。
数据挖掘DM(DataMining)是从大量数据中提取出可信的、新颖的、有
效的并能被人理解的模式的高级处理过程。
4
1.2国内外发展现状
目前,各大数据库厂商均在数据仓库项目上提出了风格各异、内容相似的
数据仓库全面解决方案,比较知名的有Oracle、Sybase、Informix、IBM、NCR、
CA等公司。
Sybase拥有一个独特而强有力的点对点方案,用来设计、建立和管理数据
仓库和数据集市。
各个部门之间通过集中的元数据进行交互,具有完整性、集
中性和灵活性等特点。
使用的工具也具有很多优越性能,如PowerDesigner
WarehouseArchitect、PowerStage、AdaptiveServerIQ、PowerDimensions等。
Sybase的解决方案及其组成具有以下特点:
快速实现、数据集市与中心仓库的
无缝集成、极高的查询速度、高效的数据压缩。
Oracle提出一个面向决策支持应用的数据仓库解决方案,开发出了Oracle
WarehouseBuilder、Oracle8i数据库、OracleExpress等系列工具,其中Oracle8i
直接对分区键值作更新,有利于大量重复操作;还在SQL引擎内建立强大的指
令集,如扩展了CUBE和ROLLUPSQL操作,支持对表进行抽样查询。
Informix为促使IT专业人员迅速建立和运用数据仓库和数据集市,提供了
尖端决策方案套装,这一合成的产品和服务是专为概括高级关键商务分析的决
策支持环境设计的。
为关键商务数据仓库提供世界一流的数据仓库产品和服务,
及工业领先的工具,包括:
Informix的专家级数据库设计,具有超级的可操作
性,伸缩性和广泛性。
为建立和展开分析应用的合成工具,包括数据抽取,转
换,清理和装载。
提供了基于ROLAP的多维数据分析、导向、汇报以及一整
套编程工具和APIs。
值得一提的是,Informix的OLAP工具METACUBE在汉
化方面做了大量的工作,基本能够满足国内用户的需求。
其他公司的解决方案大体类似,只是具体开发工具在功能上有所不同。
这
些国外公司的最大特点是各种开发工具齐全,从数据仓库模型设计、数据抽取
工具、数据库管理系统到OLAP分析工具。
用户只需要面对一个厂商就可以获
得全部的支持和服务。
而国内公司则没有这样的技术优势。
在国内,数据仓库刚刚起步,从事这方面研究的学校和公司不多,主要是
知识发现(数据挖掘)领域的研究,并且是利用第三方开发工具系统集成,比较
知名的有:
中青旅尚洋电子技术有限公司、亚信德康通信技术有限公司、亿阳
信通有限公司、巨阳科技开发有限公司等。
根据数据仓库技术国际著名刊物DMReview的评论,有国外一些电信公司
采用决策支持通用平台,如新加坡电信,英国电信等。
目前已经在我国设立办
事处或代理机构的厂商的产品有:
Brio,SAS,Clementine,BusinessObject,
5
SPSS,Oracle,Informix,Sybase,Pilot等,其优点是平台系统而完整,不足之
处在于存在本地化问题等,往往需要二次开发,无法直接适应中国电信市场的
需要。
1.3主要工作及成果
本文在深入研究数据仓库、数据挖掘技术的基础上,设计并实现了一个DSS
系统。
主要完成了以下几个方面的工作:
建造了一个数据仓库管理系统,并运用聚类、分类算法和C5算法进行用
户信用度分析和客户行为特征分析。
提出并实现了一个改进的聚类算法。
传统系统聚类算法仅限于样本聚类,
在聚类指标过多并且指标之间存在依赖关系的情况下正确度不高。
本文提出并
实现的多重系统聚类算法,将样本聚类与变量聚类结合起来,在不同的指标组
上分别聚类,然后进行二次(或多次)聚类,在很大程度上提高了算法的正确
度。
6
第二章数据仓库技术
2.1基本概念
随着IT业的发展,业界数据规模的不断扩大。
为了以合理的费用,向任
何地点需要数据的人提供高质量的数据,1992年WilliamH.Inmon提出了取
得广泛认可的数据仓库概念:
集成的、面向主题的、随时间变化的不可修改的
数据集合。
从上面的定义,我们可以知道,数据仓库首先是一个数据的集合,在这一
点上,它与传统意义上的数据库是一致的。
实际在物理上,数据仓库也主要是
以关系表的形式实现的。
数据仓库有四大主要特点:
面向主题的。
是相对于传统数据库的面向应用而言的。
所谓面向应用,指
的是系统实现过程中主要围绕着一些应用或功能。
而面向主题则考虑一个个的
问题域,对问题域涉及到的数据和分析数据所采用的功能给予同样的重视。
集成的。
数据仓库中的数据来自各个不同的数据源(操作数据库),由于历
史的原因,各操作数据库的组织结构往往是不同的,在这些异构数据载入到数
据仓库之前,必须经历一个集成过程,或称为抽取过程。
随时间变化的。
数据仓库以维的形式对数据进行组织,维是数据仓库技术
中很重要的一个概念。
通常可以这样理解一个维:
维是人们看待事物的一种角
度。
维具有层次性。
不可修改的。
与面向应用的事务数据库对数据作频繁的插入、更新操作不
同的是,对于数据仓库中数据的操作仅限于数据的初始导入和记录查询。
在数
据载入数据仓库之后,一般不允许随意修改。
2.2数据仓库简介
数据仓库是一种结构化的数据环境,为决策支持系统提供数据源。
它可以
帮助企业管理者准确了解企业的状况,从而进行预测,制定计划并作出明智的
决策。
数据仓库作为整个企业的业务数据集成库,从众多数据源中集成数据,它
包含庞大的企业级数据,其实质是由多种技术和服务组成的完整的解决方案。
数据仓库处理的数据与一般的信息系统的数据不同,它来自不同的分散数据源,
包括操作数据、历史数据、外部数据等,对这些数据进行提炼和综合,集成到
一个单一的关系数据仓库中;对这个集成的数据仓库进行管理,将其规范为面
7
向主题的格式,以便于最终用户进行数据访问和分析。
数据仓库由可操作的外部数据源、一个/多个数据仓库和一个/多个数据分
析工具组成。
构造数据仓库,首先要从数据源(如联机信息系统、电子邮件消
息等)中抽取、集成、转换、聚合和复制数据,并存储到数据仓库中;然后,
这其中的一部分数据再被聚合、复制到数据集市;最后,用户用分析工具创建
电子报表,进行查询操作,从而实现决策分析。
2.3数据仓库的关键技术
在技术上可以根据数据的工作过程分为:
数据的抽取、存储和管理以及数
据的表现三个方面。
在此,我们将分别讨论每一个环节。
2.3.1.数据的抽取
数据的抽取是数据进入仓库的入口。
由于数据仓库是一个独立的数据环
境,它需要通过抽取程序将数据从联机事务处理系统、外部数据源、脱机的数
据存储介质中导入数据仓库。
数据抽取在技术上主要涉及互连、复制、增量、
转换、调度和监控等几个方面。
数据仓库的数据不要求实时响应,因此数据抽
取可以定时进行,但多个抽取操作执行的时间、相互的顺序、成败对数据仓库
中信息的有效性则至关重要。
目前市场上提供很多数据抽取工具(例如Informix的ETL---Extract
TransformLoader和Sybase的PowerStage)。
这些工具通过用户选定源数据
和目标数据的对应关系,会自动生成数据抽取的代码。
数据抽取过程涉及数据
的转换,但抽取工具支持的数据种类有限;这种情况使得抽取工具往往不能满
足要求。
因此,实际的数据仓库实施过程中往往不一定使用抽取工具。
整个抽
取过程能否因工具的使用而纳入有效的管理、调度和维护则更为重要。
经过抽取后的数据记录应为格式统一、业务信息完整的数据记录。
2.3.2.存储和管理
数据仓库的关键是数据的存储和管理。
数据仓库的组织管理方式决定了它
有别于传统数据库的特性,同时也决定了它对外部数据的表现形式。
要决定采
用什么产品和技术来建立数据仓库核心,则需要从数据仓库的技术特点着手分
析。
数据仓库遇到的第一个问题是对大量数据的存储和管理。
这里所涉及的数
据量比传统事务处理大得多,且随时间的推移而累积。
从现有技术和产品来看,
只有关系数据仓库系统能够担当此任。
关系数据仓库经过近30年的发展,在数
8
据存储和管理方面已经非常成熟。
目前不少关系数据仓库系统已支持数据分割
技术,能够将一个大的数据仓库表分散在多个物理存储设备中,进一步增强了
系统管理大数据量的扩展能力。
采用关系数据仓库管理数百个GB甚至到TB的
数据已是一件平常的事情。
数据仓库要解决的第二个问题是并行处理。
在传统联机事务处理应用中,
用户访问系统的特点是短小而密集;对于一个多处理机系统来说,能够将用户
的请求进行均衡分担是关键,这便是并发操作。
而在数据仓库系统中,用户访
问系统的特点是庞大而稀疏,每一个查询和统计都很复杂,但访问的频率并不
是很高。
此时系统需要有能力将所有的处理机调动起来为这一个复杂的查询请
求服务,将该请求并行处理。
因此,并行处理技术在数据仓库中比以往更加重
要。
数据仓库的第三个问题是针对决策支持查询的优化。
这个问题主要针对关
系数据仓库而言。
在技术上,针对决策支持的优化涉及数据仓库系统的索引机
制、查询优化器、连接策略、数据排序和采样等诸多部分。
普通关系数据仓库
采用B树类的索引,对于性别、年龄、地区等具有大量重复值的字段几乎没有
效果。
而扩充的关系数据仓库则引入了位图索引的机制,以二进制位表示字段
的状态,将查询过程变为筛选过程,单个计算机的基本操作便可筛选多条记录。
由于数据仓库中各数据表的数据量往往极不均匀,普通查询优化器所得出的最
佳查询路径可能不是最优的。
因此,面向决策支持的关系数据仓库在查询优化
器上也做了改进,同时根据索引的使用特性增加了多重索引扫描的能力。
以关
系数据仓库建立的数据仓库在应用时会遇到大量的表间连接操作,而连接操作
对于关系数据仓库来说是一件耗时的事儿。
扩充的关系库中对连接操作可以做
预先的定义,我们称之为连接索引,使得数据仓库在执行查询时可直接获取数
据而不必实施具体的连接操作。
数据仓库的查询常常只需要数据仓库中的部分
记录,决策支持的关系数据仓库在此做了改进,提供了这一功能。
此外,在大
容量数据环境中需要有足够短的系统相应时间。
因此,一些数据仓库系统增加
了采样数据的查询能力,在精确度允许的范围内,大幅度提高系统查询效率。
数据仓库的第四个问题是支持多维分析的查询模式,这也是关系数据仓库
在数据仓库领域遇到的最严峻的挑战之一。
用户在使用数据仓库时的访问方式
与传统关系数据仓库有很大的不同。
对于数据仓库的访问往往不是简单的表和
记录的查询,而是基于用户业务的分析模式,即联机分析。
它的特点是将数据
想像成多维的立方体,用户的查询便相当于在其中的部分维(棱)上施加条件,
对立方体进行切片、分割,得到的结果则是数值的矩阵或向量,并将其制成图
表或输入数理统计的算法。
9
2.3.3.数据的表现
它们主要集中在多维分析、数理统计和数据挖掘方面。
多维分析是数据仓库的重要表现形式,由于MOLAP(多维OLAP)系统是专
用的,因此,关于多维分析领域的工具和产品大多是ROLAP(关系OLAP)工具。
在实际工作中,客户需要通过对数据的统计来验证他们对某些事物的假设,以
进行决策。
数据挖掘强调的不仅仅是验证人们对数据特性的假设,而且它更要
主动地寻找并发现蕴藏在数据之中的规律。
因此,在当前的数据仓库应用中,
有效地利用数理统计就已经能够获得可观的效益。
2.4数据仓库和数据库的区别
数据仓库和数据库有多方面的区别,下表从几个方面加以比较:
数据库数据仓库
联线处理方式OLTPOLAP
数据源单一数据源多数据源集成
数据属性动态除非刷新,否则为静态
数据内容当前值概要值,计算值,归档值
数据结构复杂,适于OLTP简单,适于OLAP
数据存取频率高低
数据修改方式直接修改不直接修改
数据存取类型重复的读和写不重复,只读
系统响应时间秒级分级
2.5数据仓库多维模型设计
2.5.1多维模型的设计原则:
数据仓库与传统数据库所不同的是表间较少以二维关系型方式连接,而以
多维形式关联。
最为流行且被业界认可的逻辑结构有星型结构和雪花型结构,
其中以星型结构最常被人们采用。
下图是数据仓库逻辑结构的一个实例,这个例子采用的是星型结构。
星型
模式中间有一个单一对象,沿半径向外连接到多个对象。
它反映了最终用户对
商务查询的看法,称为“事实表”(FactTable),与之相连的对象称为“维表”
(DimensionTable)。
图中事实表中存储了键属性(时间代码、地区代码、年
10
龄代码等),对事实表的查询就是获取指向维表的指针表。
当对事实表的查询与
对维表的查询结合在一起时,就可以检索大量的信息。
通过联合,维表可以对
查找标准细剖和聚集。
维表通过外键与事实表相关联。
雪花模式:
雪花模式是对星型模式的扩展,每一个点都沿半径向外连接到
多个点。
雪花模式对星型模式的维表进一步标准化,它的优点是通过最大限度
地减少数据存储量以及把最小的标准化表(而不是大的非标准化表)联合在一
起来改善查询性能。
由于采取了标准化及较低的粒度,雪花模式增加了应用程
序的灵活性,当然同时也增加了用户必须处理的表的数量和某些查询的复杂性。
图2.1:
客户群体特征事实表
2.5.2多维模型的设计方法:
多维数据模型由事实表和维表组成。
事实表中一个索引对应一个维表,常
用的统计信息放在事实表中。
维表分得尽可能的细致、方便,维表之间相互独
立,不同维表之间不能有相同的主键和外键。
要根据数据之间的基本的内在联
系组织数据,而不是根据现有的分析主题组织数据。
下面是一个实例:
droptablef_cdr;
droptabled_account;
11
createtabled_account(
sub_idintegernotnull,
namechar(50),
postal_codechar(6),
id_namechar(10),
id_codechar(20),
contact_personchar(20),
contact_phonechar(40),
addresschar(60),
primarykey(sub_id)
)maxrowspersegment40000;
createsynonymdet_accountford_account;
droptabled_period;
createtabled_period(
per_keyintegernotnull,
daychar(20),
monthchar(10),
yearchar(6),
current_flagchar
(1),
primarykey(per_key)
)maxrowspersegment400;
createsynonymdet_periodford_period;
droptabled_duration;
createtabled_duration(
dur_keyintegernotnull,
dur_segchar(40),
primarykey(dur_key)
)maxrowspersegment10;
createsynonymdet_durationford_duration;
droptabled_time;
createtabled_time(
time_keyintegernotnull,
minutechar(6),
hourchar
(2),
promo_descchar(10),
primarykey(time_key)
)maxrowspersegment1440;
createsynonymdet_timeford_time;
droptablew_area;
createtablew_area(
area_codechar(8)notnull,
area_tagchar(8),
citychar(20),
provincechar(10),
regionchar(10),
primarykey(area_code)
)maxrowspersegment600;
12
createsynonymd_orig_areaforw_area;
createsynonymdet_areaforw_area;
droptabled_route;
createtabled_route(
route_keychar(10)notnull,
route_descchar(10),
primarykey(route_key)
)maxrowspersegment1000;
createsynonymdet_routeford_route;
createtablef_cdr(
imsichar(15)notnull,
calling_timetimestampnotnull,
sub_idintegernotnull,
per_keyintegernotnull,
time_keyintegernotnull,
dur_keyintegernotnull,
orig_area_codechar(8)notnull,
route_keychar(10)notnull,
base_feedecimal(7,3),
idd_feedecimal(9,3),
sub_feedecimal(9,3),
ddd_feedecimal(9,3),
gat_feedecimal(9,3),
roam_feedecimal(7,3),
extra_feedecimal(7,3),
durationinteger,
calling_countinteger,
primarykey(imsi,calling_time),
foreignkey(imsi)referencesd_imsi(imsi),
foreignkey(sub_id)referencesd_account(sub_id),
foreignkey(per_key)referencesd_period(per_key),
foreignkey(time_key)referencesd_time(time_key),
foreignkey(dur_key)referencesd_duration(dur_key),
foreignkey(route_key)referencesd_route(route_key),
foreignkey(orig_area_code)referencesd_orig_area(area_code),
)maxsegments2maxrowspersegment10000000;
2.6数据仓库的成功案例
在数据仓库应用领域,从电信、金融到制造、餐饮零售,都有不少成功的
案例。
如MCI通过Informix公司为其建立数据仓库应用,数据仓库规模为3TB,
能被1万个用户访问。
借助于数据仓库,MCI公司可以分析存储其公司范围内
几乎全部的美国消费者信息,以此增强公司的竞争地位。
美国百事可乐快餐集团也建立了自己的数据仓库解决方案,各连锁快餐厅
13
使用数据仓库技术为其提供及时、有效的信息,它们包括:
顾客对某个快餐厅
的喜好,总体购买行为,快餐厅地理位置的选择等等,用于集团对所有快餐厅
的最终管理和评估。
这些信息对于集团来说是极其重要且有价值的。
Sybase公司与美国财政部的国内税收服务部门(IRS)合作开发的项目获
得了DataWarehousingInstitute(TDWI)颁发的1999年度数据库最佳实践奖。
NCR公司的”电信业解决方案”–FraudSENTRY等。
在国内也有不少成功的数据仓库应用案例。
在目前国内采用的同类产品,
可分为开发专用的系统、引进国外的软件、使用通用决策支持基础平台等。
见
诸报道的专用系统有国内新太公司的”邮电智能办公决策管理系统”-
IntraSuite,亚信德康的“金眼睛”等。
第三章联机分析处理与数据挖掘
14
3.1联机分析处理
传统的数据库管理系统建立在事务型数据的基础之上,注重的是数据库的
安全、高效运作以及维持大量细节数据的一致性、安全性以及完整性这样的事
务性操作,即OLTP(OnLineTransactionProcessing)。
为了保证系统的高
效运作及快速响应,不可能维持决策分析所需的大量历史数据。
此外,系统在
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据 基于 数据仓库 技术 决策 支持系统 设计 实现
![提示](https://static.bdocx.com/images/bang_tan.gif)