维普资讯 http://www.cqvip.com 第34卷(2006)第7期 计算机与数字工程 lOI 基于数据仓库的销售管理决策支持系统 的研究与实现 周长兵 ’周毓明 ’ (朗讯科技中国有限公司”, 北京 100102) (香港理工大学计算学系 ,香港摘要) 针对现有的销售管理信息系统对决策支持的不足,本文提出一种基于数据仓库技术的解决方案,给出了系统 体系结构、数据仓库模型以及联机分析处理策略,并对系统实现的关键技术进行了阐述。 关键词 数据仓库中圈分类号数据挖掘联机分析处理联机事务处理决策支持系统 TP274 Research and Implementation of Sales btanagement Dedsion Support System Based On Data Warehouse 眦刁删咖 )ZllouYnmln ̄) (Lucent Technologies China”,BeijiIlg 10O1O2) (Department 0f Computing,Hong Kong Polytechnic UniversiC),Hong Kong) Abstract This paper presentsthe solutionforSalesManagementDSSbased O11DWtechnologiesto overcoHiethelimitationddecision support abiliites by current MIS systesm.It includes the implementation. ysis 0f system architecture,DW data model,OLAP and key points in system Key words Data Warehouse,Data Mining,OLAP,OLTP,DSS Class number TP274 1 引言 经济的全球化和我国加人WTO给企业带来了 无限商机,同时企业间的竞争更加激烈。能否根据 建设决策支持系统的新方案。 2数据仓库技术 数据仓库包括三方面的技术:数据仓库、联机 分析处理和数据挖掘…1。 (1)数据仓库(DW:Data Warehouse) 根据“数据仓库之父”w.H.Inlnon对数据仓库 的定义,数据仓库是一个面向主题的、集成的、稳定 的、随时间变化的数据集合,用于支持管理决 策 儿引。数据仓库的概念包含两层含义:首先, 数据仓库用于支持决策,面向分析型数据处理;其 次,数据仓库是来自于多个异构数据源的、经过清 理、转移、分析、映射和综合等手段加工后的中心数 据集。数据仓库是一个动态的概念,一方面历史数 据是不可更改的,同时数据仓库中的数据是随时间 更新、反映历史变化的,体现了系统的运动过程。 市场需求、快速调整产品结构和销售策略,对企业 的可持续发展具有极其深远的意义。随着信息技 术的飞速发展,我国企业销售管理信息系统的建设 取得了一定的成就,基本实现了办公自动化,并积 累了大量有意义的数据。但目前这些数据并没有 为企业的决策支持提供应有的信息,企业经常面对 的是所谓“数据爆炸、知识贫乏”的窘迫局面。因 此,如何有效地整合和充分利用现有的数据资源, 从中提取有价值的信息和知识,有效的辅助决策, 成为企业提高核心竞争力的关键。数据仓库技术 的出现为决策支持提供了新的思路,以数据仓库技 术为核心、以联机分析处理和数据挖掘为手段,是 -收到本文时间:2005年lO月21日 维普资讯 http://www.cqvip.com 102 基于数据仓库的销售管理决策支持系统的研究与实现 第34卷 数据仓库技术的价值在于它对全局的把握,从巨多 理有效地判断,以达到最优组织利用企业的现有资 源、极大化发挥企业的能力,提高企业的经济效率。 销售管理的主体是“合同”。用户的订单通过 合同可行性分析后形成销售合同,根据工艺技术规 程和生产调度原则生成生产合同,调度排序,形成 可执行的顺序生产流一生产计划调度表,进而有序 复杂的数据背后寻找隐藏的规律,从而实现“数据 一>信息一>知识”的过程,为企业提供各层次的 (2)联机分析处理(OLAP:On—Line Analytical 决策支持。 Processing) OLAP是使分析人员、管理人员或执行人员能 够从多种角度对从原始数据中转化出来的、能真正 的进行生产,得到用户需要的产品,最后向用户供 货。销售管理实质上是销售合同状态变迁的过程, 为用户所理解的、并真实反映企业特性的信息进行 快速、一致、交互地存取,从而获得对数据的更深入 了解的一类软件技术|2]。它是一种自上而下、不断 深入的分析过程,侧重于与用户的交互、快速的响 应以及提供数据的多维视图等。OLAP是数据仓库 与用户的接口部分,是对数据仓库数据信息的分析 处理过程,它通过对多维组织后的数据进行复杂的 查询、对比、抽取和报表来进行探测式的数据分析, 使决策人员能从多种维度、多个侧面、多种数据综 合程度查看数据,深度了解数据背后的规律。 由此可见,OLAP是由用户驱动的、在某个假设 的前提下通过数据查询和分析来验证或否定这个 假设的过程_2{,分析处理一般处于较浅的层次,而 且很大程度上受制于用户的水平。因此从某种意 义上来说,联机分析处理还是一种传统的决策支持 方法。 (3)数据挖掘(DM:Data Mining) 数据挖掘是从海量数据中提取间接的、隐藏 的、新颖的关系、模式和趋势的过程,并对不同的因 素发生变化时,其他因素如何发生变化作出预测, 帮助决策者根据市场的变化作出正确的决策l_3 J。 与OLAP的验证性数据分析不同,DM注重自 动发现隐藏在数据中的模式和有用信息,是一种真 正的基于数据的知识发现方法。因此,从数据分析 深度的视角与OLAP相比,DM处于较深的层次。 尽管OLAP和DM是数据仓库不同的数据分析工 具,但它们能够互相融合和补充,OLAM(On—Line nAaltyical Mining或OLAP Minign)正是它们相结合 的产物 J。 3 数据仓库在销售管理决策支持中 的应用 3.1销售管理系统分析 销售管理是企业与市场的接口。企业根据用 户订单和市场前景预测,以企业生产经营目标为指 导,在企业的生产秩序和生产能力的约束下,对合 同的技术可行性、最优交货期以及合理报价进行合 合同的工作流如图l所示。 图1合同工作流图 3.2系统体系结构分析 传统的决策支持系统是在管理信息系统的基 础上发展起来的,在实际应用中暴露出许多问题, 主要体现在:(1)决策支持系统使用的数据库只能 对原始数据进行一般的加工和汇总,致使决策所需 信息不足,难以满足决策支持的需要;(2)由于决 策本身的动态性和复杂性,针对不同的情况应有不 同的处理方法,而模型库提供的分析能力有限,它 所提供的模型独立于环境之外,决策者和模型交互 很少,模型参数固定不变,往往不符合决策要求C6 J。 随着数据仓库、联机分析处理和数据挖掘工具 的出现,为克服传统决策支持系统存在的问题提供 了技术上的支持。决策支持所需的数据总是多维 图2系统结构图 的,而且与不同级别的统计和计算有关 因此,以 数据仓库为基础,以联机分析处理和数据挖掘勾手 段,结合决策模型进行多种定量定性分析,可以为 维普资讯 http://www.cqvip.com 第34卷(2oo6)第7期 计算机与数字工程 lO3 决策者提供有效的解决方案[ 。 表。其中,事实表用于存放合同的基本信息,包括 为克服传统决策支持系统存在的不足,本文提 出一种基于数据仓库的销售管理决策支持系统,其 合同编号、客户资产、产品规格、订货时间、订货量 和销售价格等维度信息。维度实际上是对事实不 同角度的理解,每个维度对应于一个维表,用以描 实质是在传统的决策支持系统结构上增加一个数 据仓库模块,系统结构如图2所示。其中,数据仓 库实现对决策主题数据的存储和综合,联机分析处 理实现对多维数据的分析,数据挖掘用来挖掘数据 库和数据仓库中的知识,模型库实现多个广义模型 述相应维度的内容 J。销售管理数据仓库的星型 模型如图3所示。可以看出,星型结构的数据体现 了空间的多维立方体。这种高度集中的数据为各 种不同决策需求提供了分析的基础。 的组合辅助决策。该体系结构包含了两个主体,其 一是模型库系统和数据库系统的结合,它是决策支 持的基础;其二是数据仓库、联机分析处理和数据 挖掘的结合,它们从数据仓库中提取综合数据和信 息,这些数据和信息反映了大量数据的内在本质。 基于模型库和数据仓库的辅助决策,二者相辅相 成,为决策的效率提供了坚实的基础。 联机事务处理主要是销售管理基本信息的维 护,包括产品管理、合同管理、统计报表生成以及基 本的信息查询等。模型库包括突人产出模型、预测 模型以及线性规划模型等多种模型,为决策问题提 供定性和定量分析相结合的辅助决策信息,例如利 用多重回归预测模型对产品的市场价格进行预测, 为产品提供合理的报价等。数据挖掘用于从数据 库和数据仓库中发现数据之间的复杂联系以及这 种联系对决策的影响,主要是用不同的统计方法、 人工智能算法等对经过整理后的数据进行分类、预 测、评估、关联查找统计等,以得到用户所关心的信 息,从而为决策提供有效的依据。联机分析处理操 作实现多维数据的分析,该部分在后面会详细讨 论。 3.3数据仓库模型建立 数据仓库建立于数据库的基础上,用于集中存 放用户需要分析的历史数据,主要包括详细历史信 息和统计中间结果两种类型的数据。数据仓库和 数据库的目的不同,数据库的重心在于事务处理, 主要为企业的特定应用服务,注重响应时间以及数 据的安全性和完整性;而数据仓库侧重于分析型处 理,要求能够准确、安全、可靠地从数据仓库中提取 数据,经过加工转换成有规律的信息,供管理人员 分析使用[ Ⅱ引。因此,数据仓库的设计必须以决策 主题为中心,针对具体决策需求设计主题表,为联 机事务处理和数据挖掘提供支持。 该系统中,以销售管理多年积累的数据为基 础,以销售合同分析为主题从产品、客户、时间、订 货量以及销售价格等角度进行企业销售情况分析。 数据仓库的设计基于星型模型,创建事实表和维 客户资产(万) 事实表 客户地址 (0,100) 合同编号 国家 (100,500 J 合同状态码 行政区域 (500,1000) 合同类别 城市 (1000,5000) 客户地址 街道 客户资产 订货时间 订货量 订货量(件) 订货时间 销售价格 产品规格 (0,1000) 年份 产品特殊要求 (1000,5000) 季度 交货时间 (5000,ioooo ̄ 月份 交货方式 (1000,20000) 结算方式 产品规格 需方代表 供方代表 石油套管 销售价格(万) 管线管 锅炉管 ( 1) 船用管 (1,10) 连铸坯 (10,100) 图3星型数据模型 3.4数据的多维分析与联机分析处理 数据的多维结构是决策支持的支柱,也是联机 分析处理的核心。数据仓库模型基于事实表及维 表,直接创建了多维分析超立方体的模型,使得用 户能方便地汇总数据集,对不同维度值的数据进行 比较。如图4所示,本文在进行大客户分析时,主 要从客户资产、时间以及订单价格(订货量×销售 单价)三个方面考察,形成数据立方体模型的维,空 中的任意一点表示了一定资产的客户对于产品的 购买情况,也就是销售合同的情况。 订单价格维 产维 图4大客户分析三维立方体数据模型 OLAP实现了多维数据的联机分析,它利用多 维分析所提供的钻取、切片和切块、以及旋转等分 维普资讯 http://www.cqvip.com l04 基于数据仓库的销售管理决策支持系统的研究与实现 第34卷 析操作方法,帮助用户从多角度、多侧面地观察数 据仓库中的数据,深入理解隐藏在数据后面的规律 和趋势,从而有效地辅助决策 2。系统提供的功能 有: (1)产品销售情况分析。以产品规格、时间和 订货量为维度,分析产品的销售随时间变化的规 销售记录、MIS系统中的数据以及下属各分厂的产 品信息等。对于不同的数据源,加载的方式是不一 样的,具体如下: (1)对于文本文件中的数据,将它们先导人中 间数据表中,在完成数据的验证、转换及过滤后,加 载到数据仓库中。 (2)对于其它数据库中的数据,通过建立数据 律,从而分析产品的生命周期和市场的走势等,为 企业紧跟市场、预见市场的变化、及时调整产品结 构提供坚实的数据支持; (2)产品利润分析。从产品规格、时间和订单 利润(订货量×销售单价×利润率)的角度,分析产 品的盈利情况随时间的变化趋势,帮助企业优化产 品结构; (3)大客户分析,从客户资产、时间以及订单 价格(订货量×销售单价)三个方面客户购买的分 析。商业利润实际上符合80—20原则,也即80% 的销售额和利润都来自于2o%的客户。因此,该 分析对于企业的经营目标意义重大。 4 系统实现的关键技术 系统采用C/S结构,服务器选用Microsoft Serv— el"2000,客户端操作系统选用Microsoft 2000,中心 数据库采用Microsoft SQL Server 20OO,从而可以使 用SQL SERVER提供的工具进行OLAP操作。前端 应用程序选用PowerBuilder 9.0开发。 4.1 OL1P的关键技术 (1)安全性。从数据库和程序的编制两个层 面来保证系统的安全性。从数据库角度,不同级别 的用户拥有一个或多个角色,角色包含一种或多种 权限。同时通过工作日志监测数据库的使用情况; 从程序的角度,充分利用编程工具的数据对象与存 储过程来提高系统的安全性。 (2)数据的完整性与一致性。可以通过数据 库表、字段级别的约束来实现。但这些简单的约束 通常是不够的,例如以下约束“产品销售价格不低 于产品成本与运输费用之和”就不能得到保证。为 此,系统在OLTP与数据库之间增加了一个模块用 于复杂数据关系的校验。 . 4.2数据加载 在确定数据仓库的模型后,需要将数据源中的 数据加载到数据仓库中,按照多维方式进行存储, 为决策提供数据的支持。数据加载是个非常复杂 的过程,需要完成数据的验证、抽取、转换和加载 等。 销售管理的数据源很多,包括原始文本方式的 库连接直接在数据库级别完成数据的转移。 数据加载的策略对于数据仓库的初始化、以及 随后的数据补充是不一样的,相同点在于必须要保 证数据的质量。 (1)对于数据仓库的初始化,将要加载的数据 通过模拟OLTP数据输入的方式加载到数据仓库 中,数据必须经过OLTP的逻辑检验。此时的数据 量很大,所需要的时间比较长。但它是一次性的, 更重要的是它保证了数据仓库中原始数据的质量, 为决策的合理性打下了坚实的基础。 (2)在数据补充阶段,数据在进入系统时已经 过严格的合法性检查,因此可以直接在数据库级别 导入。 4.3数据仓库的性能考虑 (1)数据分割 数据仓库中存放了全部的历史数据,若数据全 部存放在一张逻辑的数据表内,数据量太大,会很 大程度上降低数据的访问效率,因此必须对数据表 进行合理的分割。实际上销售管理的数据随时间 的推移,其对决策的价值逐渐减小。一般情况下, 最有价值的是近lO年的数据。基于这个发现,在 事实表中增加时间字段,将事实表中的数据按照 “是否最近lO年”的原则分成两份,分别存放在“历 史事实表”和“当前事实表”中,一般情况下只对“当 前事实表”进行查询,极大提高了数据仓库的性能。 (2)索引策略 数据仓库的数据量很大,而且数据都是不常更 新的,因而可以设计多种多样的索引结构来提高数 据存取效率。虽然建立专用的、复杂的索引有一定 的代价,但一旦建立就几乎不需维护索引的代价。 通过分析,数据仓库查询主要集中在用户编号、产 品名称和订货时间等字段上,对于事实表的的索引 建立在这些字段上以进一步提高数据查询的排序 速度。 5 结束语 数据仓库是2o世纪9o年代发展起来的一门 新兴技术,它为克服传统DKS存(下转第119页) 维普资讯 http://www.cqvip.com 第34卷(2oo6)第7期 计算机与数字工程 1 19 a)主机用端点1主动写命令,使写任务就绪。 件和数据。正是在这种需求之下,以嵌入式USB 主机作为核心的USB On—The—Go(USB OTG)设备 完全抛开了PC,既可以作为Host,也可以作为外 设,与另一个OTG设备直接实现点对点(Pear to b)写任务对写命令作出响应,然后才开始写 缓冲区的工作。 c)PC机收到响应后通过USB发送要写入的 数据,写任务通过判断缓冲区信号量,写缓冲区。 d)写操作完成后,下位机将实际写入的字节 数发送到PC机,PC机由此判断写入是否成功。 Pear)通信。因此,这类OTG设备也被称为是双角 色设备(Dual—Role Device,DRD),并能够根据接人 设备的特性和数据传输过程中的情况,自动切换为 Host或是外设,使得USB总线技术在移动数据交 3 结束语‘ 换领域有更广泛的应用前景。 USB拓扑结构中居于核心地位的是主机Host, 参考文献 Host主机发起和控制USB的数据传输,所有USB [1]USB1.1规范,USB Implementers Forum,IIlc[EB/OL1. 外设都只能与主机建立连接,两个外设间或两个主 (http://www.usb.ors) 机间无法直接通信。对于绝大部分作为外设的 [2]周立功,(USB 2.0与OTG规范及开发指南》[M].北京航 USB设备,扮演主机角色的是个人电脑PC,所有这 空航天大学出版社,2OO4 . 些设备都只能在PC上使用,只能通过PC交换文 [3]USB OTG规范,USB lmplementers Fourm,Inc[EB/OL]. (http://www.usb.ors) (上接第104页) [1]W.H.Inmon.Building the Data Warehouse.QED Informaiton 在的问题提供了技术上的支持,使DSS的发展跃 Sciences,Wellesley,MA,1992 上一个新的台阶,同时为DSS开辟了一条新的途 [2]王珊等.数据仓库技术与联机分析处理[M].科学出版 径。数据仓库诉建设是一个长期的过程。随着时 社,1998 间的推移,越来越多的数据充实到数据仓库中,使 [3]W.H.Inmon.The aDta Warehouse and Data Minign.COllRllu・ 得数据仓库蕴藏的信息越来越大,可分析的项目越 nicafion 0fACM,1996,39(11):1996:49—50 来越多,分析的手段也越来越丰富,从而可以为决 [4]陈文伟.决策支持系统及其开发(第二版)[M].清华大 策者提供更多更好的支持。 学出版社,第2版,2O0O 当然,数据仓库在支持企业信息决策方面也存 [5]项军,雷英杰.数据仓库技术与应用[J].计算机与现代 在一些局限性,突出表现在它无法使用非结构化的 化,2OO4,11:86—91 数据,如文本、声间和图像等;同时数据仓库主要面 [6]任明仑,杨善林,朱卫东.智能决策支持系统:研究现状 向高层决策者,不面向各层次用户。这是数据仓库 与挑战[J].系统工程学报,2002,5:430—440 技术对于决策支持需要进一步发展的方向。 [73c.J.Date著,孟小峰,王珊译.数据库系统导论[M].机 参考文献 械工业出版社,2OOO