从数据库到数据仓库_陈前林
- 格式:pdf
- 大小:406.27 KB
- 文档页数:4
第19卷第3期湖 北 工 学 院 学 报2004年6月Vol.19No.3 Journal of Hubei Polytechnic University Jun.2004
[收稿日期]2004-03-01
[基金项目]国家863项目(2003AA414011)和武汉市重大科技计划项目(20023005133-04).
[作者简介]陈前林(1980-),男,湖北大冶人,武汉理工大学硕士研究生,研究方向:数据挖掘.
[文章编号]1003-4684(2004)06-0113-03
从数据库到数据仓库
陈前林,陈定方,李和平
(武汉理工大学智能制造与控制研究所,湖北武汉430063)
[摘 要]通过对数据库技术发展的追溯,介绍了数据仓库的概念、产生、来源及其与数据库的区别,最后探讨了数据仓库的应用前景.
[关键词]数据处理;数据库;数据仓库;数据挖掘;OL AP [中图分类号]T P311.132
[文献标识码]:A
1 数据库技术发展概述
数据处理主要就是对数据的管理[1].它主要完成对数据的分类、组织、编码、存储、检索和维护等功能.这也是数据处理的中心问题.近半个世纪以来,数据管理经历了三个发展阶段,分别是人工管理阶段,文件系统阶段和数据库系统阶段,数据仓库是数据库技术的进一步发展.
20世纪中期以前,计算机主要用于科学计算,计算机本身都不带有存储设备,也没有操作系统的概念,数据处理只有批处理方式.所有数据都不在计算机上保存,由应用程序员管理.应用程序员不仅要规定数据的逻辑结构,而且还要在应用程序中设计物理结构,包括规定数据的存储结构,存取方式等.20世纪50年代后期到60年代中期,数据处理处于文件系统阶段.计算机上出现了磁盘、磁鼓等随机存取设备,文件系统成为了专门的数据管理软件.这样,数据可以长期保存.并且,用文件系统来管理数据,使程序和数据之间有了一定的独立性,尽管这种独立性不是很强.此时的应用程序设计者必须对所用文件的逻辑结构及物理结构有清楚的了解,并且,由于文件系统仅提供了读、写等几个低级的文件操作命令,因而对文件的查询、修改、插入和删除等操作必须在应用程序内编写相应的程序代码来解决.这使得文件也是专门为某一特定的应用程序服务的,且编写应用程序的生产率不高,数据冗余度大.
20世纪60代后期以来,数据管理进入了数据库系统阶段.这一时期,计算机具有了庞大容量的存储设备和高速的信息处理能力.计算机软件、硬件都飞速发展,信息急剧膨胀;数据库技术也不断发展.数据库按照某种数据模型组织数据,不仅文件内部数据彼此相关,而且文件之间在结构上也有机地联系在一起.描述数据时,不仅描述数据本身,也描述数据之间的联系.在数据库中,数据也不再分属于各个应用程序,而是集中存放在数据库中,实行统一控制.这一时期,也出现了专门的数据库系统.
1969年,美国的IBM 公司开发了第一个数据库系统IMS (Information M anagement System ).这是一个层次数据库系统,在数据库系统发展史上有着重要的地位.同年,美国的数据系统语言委员会下属的数据库任务组提出了著名的DBT G 报告,并在1970年提出了该报告的修订版.这分报告定义了数据库操纵语言、模式定义语言和子模式定义语言的概念.数据库操纵语言用于编写操纵概念视图的应用程序,模式定义语言用来编写概念视图和内部视图相结合的模式程序.在20世纪70年代,开发了许多遵循DBTG 报告的网状数据库系统,如IDMS,IDS,DMSIIOO 等.20世纪70年代初,IBM 公司下属的San Jose 研究所的E.F.Codd 发表了题为 大型共享数据库数据的关系模型 的论文.他在论文中提出了关系数据模型的概念.他提出的关系代数和关系演算,使关系数据库从理论到实践都取得了辉煌的成果.在理论上,确立了完整的关系理论,数据
依赖理论以及关系数据库的设计理论等.在实践上,开发了许多著名的关系数据库系统,如system R, INGRES,ORACLR等.1986年,美国国家标准协会(ANSI)通过了关系数据库查询语言SQL的文本标准.
在20世纪80年代以后,随着计算机硬件技术的提高,计算机应用不断深入,从而产生了许多新的应用领域,如:计算机辅助设计、计算机辅助制造、计算机集成制造、办公自动化、物理信息处理、智能信息处理等.这些新的应用领域对数据库系统提出了新的要求.由于没能设计出一个统一的数据模型来表示这些新型数据及其相互联系,出现了百家争鸣的局面,产生了演绎数据库(逻辑数据库,知识库)、面向对象数据库,工程数据库,时态数据库,地理数据库、模糊数据库、积极数据库等新型数据库的研究.到20世纪80年代后期和90年代初期,出现了面向对象数据库系统,如Gem Stone,VBASE,ORI-ON,Iris等.但是,到目前为止,真正的新一代的数据库系统还没有出现.
2 数据仓库的出现
各种各样的数据库系统正在不断地发展和完善.当前的商业、企业管理的数据处理大致可以分成两类:操作型处理和分析型处理.操作型处理也叫事务处理,一般是针对非常具体的业务,是对数据库联机的日常操作,通常是对一个或一组记录的查询和修改,主要是为特定的应用服务的.人们关心的是响应时间、数据的安全性和完整性.分析型处理一般是针对某个主题,在时间段上有比较长的延伸,它操作的是大量的数据甚至是海量的,这些数据是操作型数据的一种积累和遴选,它主要是面向决策支持的.
数据库系统在相当长的时间内作为数据管理的主要手段,它从诞生起,就主要用于事务处理,经过数十年的发展,在这些数据库中已经保存了大量的日常业务数据.传统的业务系统一般是直接建立在这种事物处理环境上的.随着技术的进步,人们试图让计算机担任更多的工作,而数据库技术也一直力图使自己能胜任从事务处理、批处理到分析处理的各种类型的信息处理任务.后来人们逐渐认识到,在目前的计算机处理能力上,根本无法实现这种功能,而且,在另一方面,事务处理和分析处理具有极不相同的性质,直接用事务处理环境来支持决策是行不通的.
事务处理环境不适宜决策应用的原因如下:首先,在事务处理环境中,用户一般是具体的工作人员,他们的行为特点是数据的存取操作,且不知道信息对决策的用处,操作的频率高而且每次操作处理的时间短;在分析处理环境中,用户是企业的高级管理人员,是信息的探索者,他们的主要目的是将产生的数据抽象为信息,以便决策.其行为模式与事务处理环境的用户行为完全不同,他们可能会使一个决策支持系统DSS(Decision-making Support Sys-tem)[2]应用程序连续工作几个小时,从而消耗大量的系统资源.其次,DSS需要集成的、即时更新的、历史的、综合的数据.全面而正确的数据是有效分析和决策的首要前提,相关数据收集得越完整,得到的结果就越可靠.当前,绝大多数企业数据的真正状况是分散而非集成的,在事务处理环境中,部分历史记录甚至被搁置起来成为浪费的资源.
近年来,随着数据库技术的应用和发展,人们尝试对数据库中的数据进行再加工,形成一个综合的、面向分析的环境,以更好的支持决策分析,从而形成数据仓库技术(Data Warehousing,简称DW).作为DSS数据仓库系统包括:数据仓库技术;联机分析处理技术(On-Line Analytical Processing,OLAP);数据挖掘技术(Data Mining,DM)三个方面[1].
如果说传统的联机事务处理强调的是更新数据库,即向数据库中添加信息,那么数据仓库针对的联机分析处理强调的则是从数据库中获取信息,利用信息.20年以前查不到所需要的数据是因为数据太少了,而今天查询不到数据是因为数据太多了.著名的数据仓库专家Ralph Kimball写道: 我们花了20多年的时间将数据放入数据库,如今是该将它们拿出来的时候了. 数据仓库正因此需要而诞生.
3 数据库与数据仓库的区别
数据仓库是数据库系统发展到一定阶段的一种必然要求.数据仓库是在数据库发展的基础上产生的,和数据库有着密不可分的联系,从某种意义上讲,数据仓库可以称为大的数据库,只是按照不同的主题和技术来组织数据.建立数据仓库并不是要取代原有的运作数据库系统,建立数据仓库的目的是为了将企业多年来已经收集到的数据按照一个统一的,一致的企业级视图组织、存储,对这些数据进行分析,从中得出有关企业经营好坏、客户需求、对手情况、以后发展趋势等有用信息,帮助企业及时、准确地把握机会.
W.H.Inmon在其 Building The Data Ware-House ( 建立数据仓库 )一书中,列出了操作型数据与分析型数据之间的区别,也就是数据库与数据
114湖 北 工 学 院 学 报 2004年第3期