您现在的位置是:首页 > IT基础架构 > 软件与服务 >
商务智能中数据分析代理(DAA)模式的研究与实践
摘要本文在介绍了数据分析代理的概念后,提出了数据分析代理模式的体系结构,讨论了在不同类型企业中数据分析代理的具体应用模式:企业内代理模式和企业外代理模式,对比分析了数据分析传统模式和代理模式二者之间特点,最后举例说明了数据分析代理模式在企业中的具体实践。...
0 引 言
计算机和信息技术的快速发展,企业建立了各种应用系统,如销售系统、库存系统、财务系统、人事系统等,积累了大量数据。随着市场竟争的日趋激烈,企业需要对积累的数据进行分析,为企业决策提供支持,以便获得竞争优势。目前为决策提供数据分析支持的通常方法是企业建立数据仓库,在数据仓库基础上进行OLAP分析、数据挖掘等数据分析应用,在此将这种方式称为传统数据分析模式。传统数据分析模式目前在金融、保险、电信等行业的许多大型企业获得了较好应用。但这种方法对企业来讲投入大、技术要求高,对于多数资金并非很雄厚、信息技术队伍不强的制造企业来说存在一定困难。数据分析代理(Data Analyze Agent,DAA)的概念就是在这样的背景下提出的。数据分析代理是通过第三方的数据分析提供商为各个客户(需数据分析的企业)提供数据分析服务的一种数据分析应用模式,客户只需向提供商提供基础数据和业务数据后就可获得分析之后的结果,而数据分析提供商则是进行所有的数据分析工作,其基本原理可用图1表示。网络技术的深入发展和应用,特别是统一数据交换语言XML(eXtensible Markup Language,XML)的出现,又为数据分析代理的实现提供了坚实技术基础。
图1 数据分析代理的基本原则
1 数据分析代理模式的体系结构
数据分析代理支持各种不同客户的数据分析,所以其对应的技术体系结构应通过公共接口支持获取各种不同数据格式的数据并且以客户要求的数据格式将分析结果提交给客户。在强大的XML开放数据交换标准的支持下,数据分析代理体系结构应有效的获取和集成各种客户数据,并把数据及时的传递到目的地。为使用户更好的分析和利用数据,支持多维分析的OLAP工具应在合适的地方得以应用。在该结构中,图2是数据分析代理模式的体系结构。客户通过公共Web接口将数据提交给数据分析提供商,并获取他们所需的分析结果。下面对体系结构中的各个层次进行说明。
图2 数据分析代理模式的体系结构
在客户应用层,客户一方面把需要分析的数据经过一定的处理(如从数据库中导出增量数据到一定格式的文件)提交给分析提供商,另一方面,他们通过浏览器(如IE)访问分析结果。客户与分析提供商通过公共的Web接口将二者有机的连接起来。
为实现对客户各种不同的数据进行处理,需要数据的统一交互,而XML作为一种统一的数据交互格式,对数据的表示是与具体应用无关的。正是由于 XML与应用无关的特性,使其日趋成为各种异构系统之间数据交互首选格式。为实现各种异构数据格式向XML数据格式的转换,需要XML转换器来实现。XML转换器包括二部分:(1)从客户明细格式到统一格式的转换(2)从统一格式到客户明细格式的转换。总之,XML转换器的根本目的在于实现客户异构数据到统一数据格式的相互转换,从而便于代理商对数据的统一处理。
为使客户数据得以保存不丢失,代理商需要构建大型数据(仓)库来存储数据。因此需要相关的数据加载工具将从客户处得到的XML格式的数据加载到数据(仓)库。为更有效的对数据进行如统计分析等数据分析处理活动,引入多维数据集市。多维数据模型将数据组织成为层次结构来表达各个层次的数据,这使得多维数据模型比目前大量使用的关系数据模型对数据的表达更为清晰。多维数据模型的主要应用是联机分析处理(On-Line Analyze Process,OLAP) 。OLAP支持下钻(drill down)、上卷(roll up)、切片(Slice)和旋转(dice)等基本的多维数据操作。
在从关系型数据模型和多维数据模型中查询数据的方法不尽相同。对于关系型数据库,查询数据通过结构化查询语言(Structured Query Language,SQL) ,如下所示:
select sum(a.stor_sales) from sales_fact 2002 a,promotion b,region c,store d where a.store id=d.store id and c.region_id=d.region_id and b.promotion_id=a.promotion_id and c.sales_country=‘China’and b media_type=‘Internet’
而对于多维数据模型的查询可以采用多维表达式(Multi-Dimension eXpression,MDX)。MDX支持多维对象与数据的定义和操作。如同SQL查询一样,每个MDX查询都要求有数据请求(SELECT子句)、起始点(FROM子句)和筛选(WHERE子句)。这些关键字以及其它关键字提供了各种工具,用来从多维数据集析取数据的特定部分。如上述的SQL功能在多维数据模型中可以采用如下方式:
Select [Measures].[Store Sales] on columns,[Store].[Sales_country] on rows from sales where ([Promotion].[Media_Tpye].[Internet],[Region].[Sales_country].[China])
在上述的二个表达式中可以看到,MDX比SQL表达式更加简单和清晰。当用户的要求变化时,在OLAP的数据立方体(Cube)中只有很少一部分需要变化以适应用户需求的改变。从这个角度来看,MDX只需作最少的改动,而SQL表达式则有可能需要完全更新以适应新的要求。
不管是从关系型模型还是多维模型中获取得到数据,都可能针对用户的需求作进一步的分析,如汇总分析、关联分析、聚类分析等。这些功能与查询数据一块交由数据分析处理模块来完成。
2 数据分析代理的应用模式
数据分析代理在面对具体情况时,主要有二种应用模式:企业内代理模式和企业外代理模式。
2.1 企业内代理应用模式
企业内代理模式一般在大中型企业中应用。一般大中型企业都有一些相对独立的分支机构,如企业在各地建立的销售公司、物流中心等,这些分支机构在一般业务处理上具有相对独立性。所谓企业内代理模式就是指总公司为这些分支机构提供数据分析代理服务,降低各个分支机构在数据分析上的巨大投入,同时保证更高的数据分析水平。此时,总公司成了数据分析服务提供商,而分支机构就是客户。这样,各个分支机构在获取各自数据分析结果同时,由于数据全部集中在总公司,分支机构还可以获得其他一些信息,如各个物流中心可以获得总公司的库存信息等。当然,在许可的情况下,还可以获得其他分支机构的信息,以利于更好的决策。
2.2 企业外代理应用模式
企业外代理模式一般针对中小型企业。中小企业自身建立数据分析系统,由于资金、技术和人员等多方面的约束,存在一定难度。在这种情况下,通过第三方的数据分析服务提供商为自己进行数据分析,能够获得比较满意的结果。对于数据分析提供商,可以通过行业代理促进数据分析向深度方向发展,而通过区域代理促进数据分析的向广度方向发展,最终集成二种代理模式,形成数据分析代理模式的正反馈机制,促进数据分析代理模式的良性发展,见图3。
图3 数据分析代理的深度和广度发展
3 数据分析代理模式的优势与挑战
对用户来说,采用数据分析服务代理模式的优势是明显的,数据分析代理和传统数据分析模式的对比见表1。
表1 数据分析代理和传统数据分析模式的对比
对于表中的前面二点在上述已经有所阐述,在对其他的几个方面进行说明。
(1)投入:传统模式下,企业对数据分析系统的投入主要包括:①硬件系统;②软件系统;③开发投入;④维护投入。大量的中小企业在面对这些投入时望而却步。而采用代理模式之后,企业只需向提供商提供必要的分析服务代理费用即可。
(2)建设周期:目前在一般的数据分析项目都需要I一2年的时间,原因是多方面的,其中很大一部分时间用于培养企业的一支数据分析团队来完成数据分析任务。而在采用代理模式之后,由于是一支专业队伍,其在数据分析领域的方法、技术方面相对成熟,当然其实施进度也就会极大的加快。
(3)技术要求:数据分析是一项技术要求比较高的项目,其技术主要包括:①数据分析体系结构的规划和设计;②数据抽取、转换和加载(Extract,Transformer,Load,ETL)技术;③数据仓库设计和开发技术;④前端应用开发。采用数据分析代理模式之后,这些工作都交由提供商完成,所以对企业本身的技术要求明显降低。
(4)维护:采用数据分析代理模式之后,企业本身只需对数据上传部分进行维护,而其他部分的维护工作都交给提供商。
(5)数据量:采用代理模式之后,大量的分析数据交给了分析服务代理商。在这种情况下,企业一般只需保留半年到一年的业务数据量,其他的历史数据都交给了提供商存储和管理。而企业自建数据分析系统,则至少需要保存2~3年的历史数据。
数据分析代理模式比传统模式具备上述的优势同时,也面临许多新的挑战:
(1)信任与安全问题数据越来越成为企业的核心要素,并且是企业的重大机密。把涉及自身机密的数据交给一个代理商来管理和分析对企业来讲是一个重大的考验。这就关系到数据分析提供商的信用问题,如何向客户保证并实践着诚信这一基本商业原则是提供商能否赢得客户,也是数据分析代理模式能否得以推广和应用的重要保证。而在另一方面,企业分析之后的数据在网络上传输,如何使这些数据和信息不受非正常的网络攻击而使数据落入竞争者之手也是在数据信任和安全的另一个考验。
(2)需求分析问题在数据分析和数据仓库的实践中,需求具有很强的不确定性,所以在总结数据分析和数据实施的经验中,强调开发过程的多次循环和迭代。而在采用代理模式之后,提供商与企业之间由于地理上位置、费用等因素影响,增加了多次迭代的难度困难,所幸的是,通信技术和协同工程的不断深入发展,应该为远程之间需求的迭代过程提供强有力的支持。
(3)网络传输问题由于数据分析在网络上需要传输大量的数据和信息,客户也需要通过网络获取数据分析结果。而一般来讲,数据分析结果的数据量是比较大的,如何使这些分析结果能快速的返回给客户也是一个问题。过慢的速度会使客户不能接受。网络技术的快速发展,宽带逐渐的成为主要的网络传输方式之后,网络传输速度慢的问题有望不会成为数据分析代理的障碍。
4 应用实例
宁波某大型服装公司,在我国男性服装,特别是西服和衬衫的生产和销售处于全国领先。该公司在多年的企业发展过程中,在全国建立了30多个区域中心,一百五十几家分公司,二千多家销售网点,实现全国范围的物流配送和销售。2000年在各个网点、分公司和区域中心成功应用了分销管理系统,到目前积累了一定量的数据。为了进一步提高客户服务水平,降低库存,总公司决定为这些区域/分公司提供数据分析支持。在数据分析代理思想的指导下,各个区域、分公司和网点将相关的数据传回到公司总部,由公司总部的数据分析部门对这些数据进行分析,并及时将分析结果反馈给下属的区域、分公司和网点。图4是基于Web的一个数据分析界面。目前该系统运作良好,并在该公司全国的区域、分公司和网点得到有效应用,正对物流配送和销售产生积极作用。
图4 基于Web的一个数据分析界面
5 结 论
数据分析代理是通过第三方的数据分析提供商为各个客户企业提供数据分析服务的一种数据分析应用模式。该模式的技术体系结构主要包含公共Web接口、XML转换器、数据(仓)库、数据分析处理等模块。针对不同的企业,数据分析可以采用企业内和企业外代理二种模式。数据分析代理模式比传统的数据分析模式相比对企业在资金、技术和维护等多方面的投入有明显优势,但也存在信任与安全、需求分析和网络传输等新的挑战。数据分析代理要实现行业和区域的集成代理,促进数据分析代理向深度和广度二个方向同时发展,形成正反馈机制。
(本文不涉密)
责任编辑:
上一篇:青岛啤酒提升知识管理能力