数据仓库在ERP系统中的应用

日期: 2012-04-12 作者:杨照华 来源:TechTarget中国 英文

  当今社会是一个信息爆炸的时代,信息丰富而知识贫乏的现象非常普遍。“啤酒搭着尿布卖”的故事曾经触动了多少人的神经。信息作为现代企业的宝贵资源,占据着越来越重要的地位,已经成为现代企业科学管理的基础,正确决策的前提,有效调控的手段。

  目前,面对激烈的市场竞争,许多大型企业纷纷实施“以客户为中心,以服务求发展”的经营策略。 如何优化客户关系,增强企业的竞争优势已经成为现代企业关注的焦点。现有的应用系统往往以“产品”为中心,以“单据(票证)”处理为基础,是面向联机事务处理(Online Transaction Processing,简称OLTP)的系统,而以客户为中心的经营管理模式要求对现有业务系统的数据进行有效的集成并加以重组,建立面向联机分析处理(Online Analysis Processing,简称OLAP)的系统。通过分析客户的行为,掌握不同类型客户的特征,进而为客户提供更加优质的服务,尤其是个性化的服务,同时全面掌握并理解、分析企业业务的发生情况,充分发挥企业现已积累的数据,为各级管理人员提供科学化管理和决策的有力依据,以提高企业的经营业绩,保证利润的持续增长。

  同时,随着企业信息化程度的不断提高,各类应用系统同时并存并支撑着企业的业务应用。越来越多企业的信息化主管在开发企业应用时已经考虑到数据集成和将来对数据的整体有效利用,因此,在实施了ERP解决方案之后,很多企业选择实施数据仓库产品来避免信息孤岛,实现应用的内部联系和信息的共享。

  什么是数据仓库呢?一般认为,数据仓库(Data Warehouse)是一个面向主题的(Subject Oriented)、集成的(Integrated)、相对稳定的(Non-Volatile)、反映历史变化(Time Variant)的数据集合,用于支持管理决策(Decision Making Support)。

  面向主题:操作型数据库的数据组织面向事务处理任务,各个业务系统之间各自分离,而数据仓库中的数据是按照一定的主题域进行组织的。

  集成的:数据仓库中的数据是在对原有分散的数据库数据抽取、清理的基础上经过系统加工、汇总和整理得到的,必须消除源数据中的不一致性,以保证数据仓库内的信息是关于整个企业的一致的全局信息。

  相对稳定的:数据仓库的数据主要供企业决策分析之用,所涉及的数据操作主要是数据查询,一旦某个数据进入数据仓库以后,一般情况下将被长期保留,也就是数据仓库中一般有大量的查询操作,但修改和删除操作很少,通常只需要定期的加载、刷新。

  反映历史变化:数据仓库中的数据通常包含历史信息,系统记录了企业从过去某一时点(如开始应用数据仓库的时点)到目前的各个阶段的信息,通过这些信息,可以对企业的发展历程和未来趋势做出定量分析和预测。

  一个典型的企业数据仓库系统通常包含数据源、数据存储与管理、OLAP服务器以及前端工具与应用四个部分。

  数据源:是数据仓库系统的基础,是整个系统的数据源泉。通常包括企业内部信息和外部信息。

  数据的存储与管理:是整个数据仓库系统的核心。在现有各业务系统的基础上,对数据进行抽取、清理,并有效集成,按照主题进行重新组织,最终确定数据仓库的物理存储结构,同时组织存储数据仓库元数据(具体包括数据仓库的数据字典、记录系统定义、数据转换规则、数据加载频率以及业务规则等信息)。

  OLAP服务器:对分析需要的数据按照多维数据模型进行再次重组,以支持用户多角度、多层次的分析,发现数据趋势。其具体实现可以分为:ROLAP、MOLAP和HOLAP。

  前端工具与应用:前端工具主要包括各种数据分析工具、报表工具、查询工具、数据挖掘工具以及各种基于数据仓库或数据集市开发的应用。其中数据分析工具主要针对OLAP服务器,报表工具、数据挖掘工具既针对数据仓库,同时也针对OLAP服务器。

  在传统的ERP系统中,一般的核心应用都是进销存管理和账务管理,数据库中的数据也是紧紧围绕产品信息、票据和账目明细进行的。这样的数据层可以很好地实现OLTP,但如果要为企业高层提供决策数据的话,就有必要对这样原始的、松散的、孤立的数据进行抽取、清洗、加上时间标记并进行合理的分类,以使之能够进入数据仓库并支持OLAP。

  下面通过一个小型汽修行业进销存系统(以下简称A系统)数据仓库的建立,来说明ERP系统数据仓库建立的步骤及应注意的一些问题。

  A系统原有的数据层是典型的数据库系统,核心表为产品信息表、客户信息表、供应商信息表、库存表、销售表、客户明细表和供应商明细表等。这些表格在运行中很好地解决了OLTP,同时可对企业高层提供基本的一些OLAP,如库存查询、销售查询等,但这些功能相对高层决策的需求是远远不够的,因此有必要对原系统的数据库进行改造,建立合理有效的数据集市或数据仓库,以适应企业远期的战略目标。

  数据仓库的建立是一个复杂的过程,首先要进行规划和分析,我们对原系统的数据进行分析,将原来孤立分散的数据元素进行抽取和清洗分类,把数据划分成了以下几个类:客户类(包含原有系统中的客户信息、客户账目明细等相关客户信息)、供应商类(包含相关供应商所有信息)、账目类(包含进销存的帐目往来及明细数据)、票据类(包含相关帐目票据)等。数据类的划分将原来松散孤立的数据根据使用特征有机地结合到了一起,可以有效地支持OLAP,同时为以后系统的扩展及升级也打下了良好的基础。不致于因一发而动全身。

  将原有的数据库数据进行清洗分类后,下一步即开始数据仓库物理结构及存储的实施。目前,IBM、Oracle、Sybase、CA、NCR、Informix、Microsoft、和SAS等有实力的公司相继(通过收购或研发的途径)推出了自己的数据仓库解决方案,BO和Brio等专业软件公司也在前端在线分析处理工具市场上占有一席之地。在A项目数据仓库解决方案的选择上,我们选择了Microsoft的SQL Server 2005作为数据仓库实现工具。做为微软新一代的数据库产品,SQL Server 2005提供了很多新的功能,性能更加强大,同时,A系统原来的数据层是采用SQL Server 2000,因此采用SQL Server 2005可以很好地实现数据的提取和转换。同时,由于都是微软的产品,我们今后扩充A系统时,前台的查询和报表工具就可以采用dot net平台实现,无论采用C#还是VB.NET语言都可以实现强大的OLAP分析功能。

  最终,由于经过了详细的设计和建模,A系统数据仓库的实施取得了良好的效果,系统的转换较为成功,新系统在数据仓库的支持下为高层决策提供了极好的支持。同时,由于采用了数据仓库,A系统的功能和扩展性也有了很大提高。为以后进一步进行操作数据存储(ODS)和数据挖掘(DATA MINEING)打下了坚实的基础。

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

电子邮件地址不会被公开。 必填项已用*标注

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

相关推荐