《超市决策支持系统的数据仓库的设计与实现.pdf》由会员分享,可在线阅读,更多相关《超市决策支持系统的数据仓库的设计与实现.pdf(4页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、!#$%&计算机工程与应用%引言在超市计算机系统的使用过程中,积累了海量的经营销售数据,随着市场竞争的日趋激烈,各大型超市纷纷规划利用新技术将各门店的原始销售数据转化为商业决策信息,从而获取竞争的优势。我国现有大型超市的辅助决策支持系统通常直接从面向业务处理的事务数据库中获取数据,这是初期(使用数据的方法。随着数据库数据量的逐渐增加以及超市经营管理数据处理的日趋多样化,这种获取数据的方法越来越不能满足决策支持的需要,主要体现在以下几个方面。(%)面向事务的处理环境不能满足联机分析处理()*+,)对数据的需求。)*+,需要大量集成的、综合的数据,而在联机事务处理()*-,)数据环境中,这些数据要
2、经过一定的加工和一定的查询途径才能获得,速度慢,实用性差。(!))*-,应用与)*+,应用冲突。两种不同类型的应用同处于操作性数据环境中,使得事务数据库一方面担负着超市各数据终端并发的联机操作,一方面还要担负)*+,查询,系统负载沉重,总体效率低。(#)数据集成困难。超市各职能部门设计数据库时,往往只考虑到本部门业务的需要,较少考虑决策分析的数据需求,导致了这些数据难以成为一个统一的整体,给访问和集成这些数据带来了困难。(.)难以适应用户对不同类型数据的需求。不同的用户、不同的分析对数据综合程度有不同的需求,例如:采购人员关心商品销售细节数据,部门经理需要部门综合数据,总经理则需要全公司的综合
3、数据。长期趋势分析需要年度汇总,而中短期趋势分析又需要月、周汇总数据。传统数据库不具备这种综合能力,难以满足上述分析的数据需求。(/)不能满足决策分析对历史数据的需求。事务数据库中一般也只保存短期数据。没有历史数据的支持,无法进行长期趋势分析。为了解决上述问题,中期的(采用在原事务数据库基础上增加(专用数据库的方法。该专用数据库由从内部数据源和外部数据源抽取形成的综合数据组成。这种方法虽然满足了快速查询和显示的要求,在一定程度上提高了系统的性能,但它未从根本上解决上述问题,一方面是因为上述(专用数据库中的数据组织不是面向主题、面向分析进行的,导致了)*+,分析查询操作复杂。另一方面,由于缺乏足
4、够的历史数据,(专用数据库对长期趋势分析支持不足。!数据仓库解决方案数据仓库技术的出现和发展,为解决上述问题提供了强有力的解决方案。数据仓库是面向主题的、集成的、稳定的、不同时间的数据集合,用以支持经营管理中的决策制定过程。运用数据仓库技术,从历史的角度,把各门店与决策分析相关的原始数据,经过提取、过滤、转换、集成,以实视图(012345165738953:)方式存储在数据仓库中,供决策分析使用,从而避免了每次决策分析都要访问数据,集成所需数据,以空间换取时间,大大提高了分析查询的速度。需要说明的是,数据仓库并不是对原有事务数据库的取代,它是在原有事务数据库的基础上建立起来的,它面向分析,为决
5、策者提供集成的、综合的决策信息。而事务数据库是面向事务处理的,主要负责完成日常超市经营超市决策支持系统的数据仓库的设计与实现徐忠健袁捷陆菊康陈毛狗(上海大学计算机系,上海!;!)摘要近年来,数据仓库理论和技术迅速发展,但国内,至少在商业销售行业,运用数据仓库理论和方法真正意义上建造面向决策支持系统(()的数据仓库尚不多见。论文以某大型超市销售决策支持系统为背景,介绍了独立开发的面向超市销售决策支持系统的数据仓库的设计与实现方法,详述了数据仓库构建的几个关键技术。关键词数据仓库决策支持系统联机分析处理实视图超市文章编号%!%(!#)%&!=.文献标识码+中图分类号-,#%!#$%&()*+,
6、*&-$.&./!-012.3#./43+1*15-!6$#$.&43+.1-47#-*83 92.&%:$&;3&$=3 2&?.%.3(3142?32 AB CA?D234(E53E3 18 FG53345G,(H1GH15 I5934J52K,(H1GH15!;!)A#-16-:-H5J 134 524A8DE3J 2H3 83J5G 18?32HA8 AB 5?63?32125A AB 8121:143HADJ3 BA4 JD34?14L32($-H359A216 23EH5MD3 5 5?63?325G JD34?14L32 8121:143HADJ3 5J 16JA 83JE45N
7、38$+3O1?63 5J G593$B7C.1(#:121 P143HADJ3,(,)*+,,012345165738 953:,(D34?14L32基金项目:上海市教委科技发展基金资助项目(编号:!/.#)作者简介:徐忠健(%Q;.),男,硕士研究生,主要研究方向:数据仓库、决策支持系统。袁捷,副教授,研究方向:数据库、决策支持系统、软件工程。陆菊康,副教授,研究方向:数据仓库、决策支持。陈毛狗,副教授,研究方向:人工智能、决策支持。!=计算机工程与应用!#$%&活动的数据处理,它为数据仓库提供基本的数据来源。在基于数据仓库的某大型超市销售决策支持系统中,作者运用数据仓库技术,在原有面向(
8、)*的+,-系统的基础上构造了超市数据仓库(-./)系统。-./采用的数据库平台是-01234%567/89:6;3?A$开发,数据仓库客户端程序和(B*分析采用*6;47=C8D:47开发。#面向决策支持系统的-./系统的体系结构-./系统具有三层体系结构,如图%所示,它由数据源层、数据仓库层、应用层三部分组成。第一层是数据源层,它由超市各门店业务处理系统组成。门店业务处理系统的后台为事务数据库,如72ED4、-01234、+-F(-47G47等等。前台是业务应用系统,负责超市销售经营日常事务的处理。数据源层是整个-./的数据来源,为决策支持系统提供原始的数据。第二层数据仓库层由数据抽取、数
9、据仓库和数据仓库日常维护系统组成。其中数据仓库存储元数据和用于决策分析相关的数据。元数据是数据仓库的核心,它是描述数据的数据,用于存储数据模型和定义数据结构、转换规则、仓库结构、控制信息等。数据仓库日常维护包括数据的安全、归纳、备份、恢复等工作,这些工作需要利用数据库管理系统(.=+-)的功能。第三层应用层是建立在数据仓库基础之上的,它主要由(B*应用分析和数据挖掘两部分组成。决策者利用决策支持工具,从数据仓库中获取准确科学的信息,进而做出科学性的决策。图%-./体系结构H数据仓库的设计H$%事实、维、粒度在介绍-./设计之前,需要引入事实、维和粒度等概念。事实是决策者分析的目标数据如销售量、
10、销售额、库存量、库存数量等,它们日积月累,数量庞大。维是事实的信息属性,也是观察事实的角度,如销售发生的时间、顾客、门店、销售的是何种商品等。它们一般变化不大,数量也相对较小。粒度是维的划分单位,体现着数据单元的详细程度和级别。如时间维可按日计,也可按周、按月、按季度、按年计;又如商品维,可以分为商品单品、细分类、小分类、中分类、大分类等等。数据越详细,粒度越小,级别越低;数据综合程度越高,粒度越大,级别越高。以维、粒度、事实表为基础可以对数据进行多维化处理,构成多维数据模型。数据仓库的统计分析可以统一地归结为:从不同的角度(维),不同的层次(粒度)来观察分析数据(事实)。以销售分析为例,决策
11、者考察的指标是销售量和商品销售价格、进货价格、商品同比(环比、基比)等事实,分析的角度不外乎时间、商品、顾客、门店。每个分析角度可以有不同的粒度的汇总。例如从商品角度可以按商品单品、细分类、小分类、中分类、大分类汇总,从时间角度可以按日、周、月、季、年汇总等等。图!给出了-./中的-./的粒度、维和事实。图!-./的粒度、维和事实H$!概念模型设计进行概念模型设计所要完成的工作是:界定系统边界、确定主要的主题域及其内容。(%)界定系统边界。-./系统的使用者是超市决策和业务人员,他们并不关心具体每一笔交易的情况,而是关注这样一些问题:某时间段内商品销量的变化情况如何?哪些分类的商品销量最高、利
12、润最大?哪些顾客购买力最强?哪个门店业绩最佳?上述问题涉及的数据包括商品销售数据、顾客信息、商品采购数据、商品库存数据。所以可以将系统的边界定为包含原有的销售子系统、采购子系统、顾客子系统在内的集合。(!)确定主要的主题域及其内容。数据仓库中,数据是面向主题进行组织的。主题是在较高层次上将企业信息源中的数据综合、归类并分析利用的抽象。在逻辑意义上,主题对应于企业中某一宏观分析领域所涉及的分析对象。根据对超市原有业务数据库系统的分析,考虑到超市决策者的分析要求,作者确定了-./的两个基本主题:商品和顾客。两个主题之间的联系是商品销售关系,一位顾客购买多种商品,一种商品又有多位顾客购买。-./中数
13、据组织都是围绕着两个主题进行的。H$#逻辑模型设计数据仓库数据组织主要有两种。一种是基于关系数据库的维表事实表结构的多维表形式,另外一种是基于多维数据库的超立方体结构形式。鉴于超市原有事务数据库采用的是关系型数据库,考虑到数据集成的方便以及软件成本的降低,这里采用维表事实表结构来实现多维数据模型。-./设计采用流行的雪花模型。雪花模型是基于关系型数据库的,面向(B*的一种多维数据模型的数据组织形式,如图#。雪花模型以事实表为中心,四角周是访问的角度,对应维表,每一维又可分为不同的粒度。雪花模型是对星型模型的一个扩展,它把星型模型的维表进一步层次化,使用多张表来描述一个复杂维,形成一些局部的“层
14、次”区域,增加了应用程序的灵活性,降低了维表的数据冗余,每一个维表通过一个关键字与事实表关联。事实表中每条记录都包含指向各个维表的外键和本期销售数量、本期销售金额、累计销售数量、累计销售金额、以及其它(B*所需得的事实数据。维表中记录的是有关这些维的属性。通过维表的外键,对事实表和每一个维表做连接操作,依据各个维表的取值,一次查询就可以得到相对应!I!#$%&计算机工程与应用的事实数据。图列出了()*数据库中典型的几个维表和事实表。图维表和事实表+数据集成将数据从各门店集成到总店数据仓库中,并按多维方式进行存储,这是一个比较复杂的一个环节,需要完成以下工作:(%)数据采集。从各个业务处理系统中
15、抽取所需的数据。将此过程做成一个批处理模块,每日超市打烊后自动或手工地从事务数据库抽取相关数据到指定的汇总表中,然后,各个门店的数据通过网络传输到总店的数据仓库中。(!)数据清理。正确的决策分析来自于高质量的信息。原始数据进入数据仓库之前,需要根据其具体情况,消除数据的不一致,并根据数据类型要求、取值范围、完整性规则、拼写检查等清除脏数据。(#)数据转换。把数据转换为汇总所需要的格式和数据类型。()数据汇总与加载。把各门店业务处理系统每日明细数据分别从时间角度、商品角度进行不同程度的汇总并添加到相应的数据仓库结构中。,()*管理数据仓库元数据和数据仓库日常维护是一个极为重要的环节。元数据包括关
16、键字、属性、数据描述、数据质量要求、物理数据结构、源数据结构、映射及转换机制、抽取日志、综合算法(如实视图选取算法、数据更新算法)、缺省值、安全要求、数据有效期等,它负责描述数据仓库的整体组织结构及数据在数据仓库中的一些特征信息,以及描述数据在数据库及数据仓库、数据仓库及多维表之间的映射关系。数据仓库日常数据维护模块根据元数据进行添加、修改数据仓库的数据,定期删除数据仓库过期的数据。-几个关键技术-$%多事实表结构事实表存储着与./01分析查询的汇总数据,这样./01查询分析就可以直接从事实表中读取所需的数据而不必直接访问各数据源原始数据,降低了./01查询的复杂度,加速.2/01查询。在()
17、*系统中,作者采用多个事实表来存储各个维度上的汇总数据。例如,对商品细分类、小分类、中分类、大分类按周、月、年度进行汇总,分别用相应的事实表来存储。-$!实视图的选取事实表在数据仓库中有两种存在形式,一种是通过定义视图,以“虚表”的形式来保存事实表,这种方法的优点是它基本上不需占用数据库存储空间,缺点是每次访问它时都要临时进行大量的,甚至是极复杂的计算去生成视图相对应的数据;另一种是对上述视图予以“实化”,以“实表”的形式存储事实表(这种表又称为实视图),这种方法的优点是可以加速./01查询,这是因为被访问的数据已经在表中,不必临时计算。缺点是消耗数据库空间。在多维数据分析的每一维上都有不同的
18、层次,如商品维上就有大分类、中分类、小分类、细分类、单品等,时间维有年、季、月、周、日等。各维之间的组合就更多。如果对每个组合都以实视图的方式来存储,数据仓库空间和维护代价太大,反之,如果实视图太少,则又起不到应有的作用。在()*系统中,作者采取最近最多使用(345,3678 49:9;8)算法,根据各事实表的使用频率高低,结合!对&原则,即选择其中!?的访问频率较高的事实表以实视图的形式保存,以满足&?的./01查询的需求,其它的则仅以视图的形式存在于数据仓库中。这样既照顾了查询的效率,又降低了数据仓库空间和维护的开销。图#()*逻辑模型!&计算机工程与应用!#$%&(上接%(页)库)*+,
19、*-./-.!。信息存贮内容包括0(1:2.-34567895:-,;34.-?8=34-,.45AB-8*5C-,.45AB-895B-,.45AB-8DEBB9-F4,.45AB-8G=,,.45AB-8)HI。其中2.-34567895:-表示网页文档创建的时间;;34.-?8=34-表示文档刷新的速度,缺省为%周,用户可以定制该值;.45AB-8*5C-表示文件大小;.45AB-895B-表示文档的主题;.45AB-8DEBB9-F4表示文档的内容;.45AB-8G=,表示文档来自网页地址;.45AB-8)HI表示文档的)HI值。($(信息发布子系统该子系统利用*J#技术和根据用户指定
20、的规则(或称参数),从数据库中取出相应数据项,依据模板格式发布在指定的网站位置上。由于篇幅限制,就不再详细说明了。($IK-L服务器和界面子系统系统K-L服务器软件采用微软公司的MM*I$,并且服务端的操作系统为N57O6K?!*-./-.,界面子系统便于系统管理员和用户方便管理及定制;它提供了优美的NNN界面,用户通过此系统,向其它子系统传输各种控制信息。I结束语该系统对用户来说,是基于N-L界面,因此,实现了跨平台的基于内容的定题信息自动过滤和发布;用户在指定参数时,通过简洁的N-L界面,并且有详细的说明和示例,操作简便;系统借用了专业数据库强大的数据处理和管理功能,使系统开发周期短,成本
21、低;同时,用户可以指定系统的运行时间,使系统在人们休息时工作,可避开网络拥挤的时间段;该系统特别适合校园网和企业内部网的信息发布,并具有一定智能性和定制性。(收稿日期:!#年(月)参考文献%$张学工$关于统计学习理论与支持向量机0P1$自动化学报,!;!(%):#!Q(!$李晓黎,刘继敏,史忠植$基于支持向量机与无监督聚类相结合的中文网页分类器0P1$计算机学报,!%;!((%):!Q$曹素青,曾伏虎,曹焕光$一个中文文本自动分类数学模型0P1$情报学报,%RRR;%:!SQ#!($阳爱民$网络信息自动发现及处理系统的研究与实现0H1$长沙国防科技大学计算机系硕士学位论文$!%I$9 P6
22、3A5:?$9-F4 234-T6.5C34567 K54*EUU6.4 V-A46.)3A57-?:,-3.7857T K54 4-.-.7A-67)3A?4345?45A3B 3UU.63A M76.:34567=-4.5-/3B,%RRR;%(%Z!):SQ&S$#数据仓库的数据追加超市业务的特殊性决定了其数据仓库需要经常进行追加和更新。如何定期地向数据仓库追加数据是一个非常重要的技术。考虑超市集团公司各门店每日交易数据量较大(目前约%万条记录,二十余个门店总计有超过!万条的记录,而且这个数目随着时间的推移还在不断的增长),如果采取一次性直接集成到数据仓库,由于处理数据量过大,集成速度缓
23、慢。这里采取“分而治之”的策略,逐门店逐日进行集成。从低粒度数据向高粒度进行追加集成时,需要获知低粒度数据上一次更新哪些记录。一般方法是通过扫描整张低粒度事实表进行查找。实际上这些更新的数据只占全部记录的很小一个比例(这个比例随着事实表记录的日积月累会越来越小),为了查找这些相对少量的更新数据而搜索整张事实表,造成很大的资源浪费。在*HN中,作者引入了辅助表,以从商品小分类周销售事实表向商品中分类周销售事实表汇总为例,事先给商品小分类周销售事实表建立一个结构完全一致的辅助表,它专门用于存放最近一次添加到商品小分类周销售事实表的数据,在商品中分类周销售事实表进行数据汇总时就不必去扫描整张商品小分
24、类周销售事实表,而直接根据辅助表进行汇总即可。实际运行表明虽然这种方法会暂时增加空间消耗,但是大幅度提高了集成速度,利大于弊。S$(实视图的联机维护数据仓库的实视图联机维护是数据仓库联机维护技术中的一个关键技术。它是指在数据仓库为用户提供服务的同时,当与实视图对应的基表数据发生改变时,实时地将这种变化反映到数据仓库中,使相应的实视图得到及时的刷新,同时不影响前端用户对数据仓库的正常使用。*HN中 采 取 了 版 本 控 制 算 法#VN+(9.-8V-.?567N546E4+E5-?A57T)对数据仓库实视图进行联机维护,超市决策者可以随时访问数据仓库,数据仓库不再有专门对外服务的时间和更新维
25、护的时间,两者可以同时进行,极大地提高了系统的可用性。&结束语为了提高自身竞争力,各大型超市纷纷打算建立起数据仓库辅助经营决策。论文结合数据仓库技术,依据我国国情,自行研制了面向超市销售决策支持数据仓库原型系统,以求取得有益的经验。该系统投资少,性能价格比高,系统运行速度快,对超市两年的历史数据进行分析操作都在秒级完成,获得了令人满意的效果。(收稿日期:!年S月)参考文献%$M7:67 N$E5BO57T 4-H343 N3.-6E?-0)1$P67 N5B-W *67?,M7A$,%RR#!$王珊等$数据仓库技术与联机分析处理0)1$科学出版社,%RR$李薇 李宛洲$基于数据仓库技术的进销存系统的设计与实现0P1$计算机工程与应用,!%;#S(%):RIQRI($鲁敏$大型决策支持系统的数据仓库设计与实施中关键技术0P1$计算机工程与应用,%RRR;#I(R):R(QRSI$朱艺华等$基于双层数据仓库的)M*设计研究0P1$计算机工程与应用,!;#&():%R&Q!$李子木,李磊,徐明等$数据仓库的联机维护与下查0P1$计算机学报,%RRR;!(R):R&QRR!R
限制150内