第一章 概述
第四节 数据库的历史
数据库大体可分为网状数据库、层次数据库和关系数据库三类。
数据库从出生到现在只半个世纪左右,已经形成了坚实的理论基础、成熟的商业产品和广泛的应用领域,吸引越来越多的研究者加入。数据库的诞生和发展给计算机信息管理带来了一场巨大的革命。几十年来,国内外已经开发建设了成千上万个数据库,它已成为企业、部门乃至个人日常工作、生产和生活的基础设施。同时,随着应用的扩展与深入,数据库的数量和规模越来越大,数据库的研究领域也已经大大地拓广和深化了。
在数据库诞生之前:那时的数据管理非常简单。通过大量的分类﹑比较和表格绘制的机器运行数百万穿孔卡片来进行数据的处理,其运行结果在纸上打印出来或者制成新的穿孔卡片。而数据管理就是对所有这些穿孔卡片进行物理储存和处理。
1951年,雷明顿兰德公司(Remington Rand Inc)的一种叫做UNIVAC 1的计算机推出了一种一秒钟可以输入数百条记录的磁带驱动器,从而引发了数据管理的革命。
1956年,IBM生产出第一个磁盘驱动器——the Model 305 RAMAC。此驱动器有50个盘片,每个盘片直径是2英尺,可以储存5MB的数据。
1961年,通用电气公司(General Electric Company)的查尔斯•巴赫曼(Charles William Bachman)成功地开发出世界上第一个网状DBMS,也是第一个数据库管理系统——集成数据存储(Integrated DataStore,IDS),奠定了网状数据库的基础。
1968年开发的IMS(Information Management System),是一种适合其主机的层次数据库。这是IBM公司研制的最早的大型数据库系统程序产品。
1969年,埃德加•科德发明了关系数据库。1970年关系模型建立之后,IBM公司在San Jose实验室增加了更多的研究人员研究这个项目,这个项目就是著名的System R。其目标是论证一个全功能关系DBMS的可行性。该项目结束于1979年,完成了第一个实现SQL的DBMS。然而IBM对IMS的承诺阻止了System R的投产,一直到1980年System R才作为一个产品正式推向市场。
1970年,IBM的研究员埃德加•科德博士在刊物《Communication of the ACM》上发表了一篇名为“A Relational Model of Data for Large Shared Data Banks”的论文,提出了关系模型的概念,奠定了关系模型的理论基础。
1973年,加州大学伯克利分校的Michael Stonebraker和Eugene Wong利用System R已发布的信息开始开发自己的关系数据库系统Ingres。他们开发的Ingres项目最后由Oracle公司、Ingres公司以及硅谷的其他厂商所商品化。
1976年,霍尼韦尔公司(Honeywell)开发了第一个商用关系数据库系统——Multics Relational Data Store。关系型数据库系统以关系代数为坚实的理论基础。其代表产品有Oracle、IBM公司的DB2、微软公司的MS SQL Server以及Informix、ADABASD等。
1979年,Oracle公司引入了第一个商用SQL关系数据库管理系统。
1983年,IBM 推出了DB2数据库产品。
1985年,为Procter & Gamble系统设计的第一个商务智能系统产生。
1987年,赛贝斯公司发布了Sybase SQL Server系统,用于UNIX环境。
1991年,W.H.Bill Inmon发表了“构建数据仓库”。
小天:哎呀,我要用要学的都是最新的,你给我说这么多干什么啊?
老田:好吧,时光如梭,转眼到了1998年,微软发布了Microsoft SQL Server 7.0版本,该版本在数据存储、查询、可伸缩性方面有了巨大的改进,也使它有了和IBM的DB2、甲骨文的Oracle、赛贝斯的Sybase ASE系统有了竞争的本钱。
2012年3月,微软发布Microsoft SQL Server 2012 RC0,同期市面上应用非常广泛的还有Oracle,也在Oracle 11G之后发布了Oracle 12C,MySQL这个开源数据库也发展到了MySQL 6了,IBM的DB2也发展到V10版本。
小天:打住,打住,你这时间飙得太快,一下飙了21年。我是否可以这样理解,从20世纪80年代开始,数据库技术就进入了关系数据库时代。而数据库经历了网状数据库、层次数据库和关系数据库三个时代,我们现在接触到的基本上都是关系型数据库,而Microsoft SQL Server、MySQL、Oracle、DB2等也只是关系数据库中的一种。
老田:随着互联网Web 2.0网站的兴起,传统的关系数据库在应付Web 2.0网站,特别是在超大规模和高并发的SNS类型的Web 2.0纯动态网站中已经显得力不从心,暴露出很多难以克服的问题,而非关系型的数据库则由于其本身的特点得到了非常迅速的发展。但是非关系型数据库并未形成一定标准,各种产品层出不穷,内部混乱,各种项目还需时间来检验。
小天:哇哦,非关系型数据库不成熟,咱不学,但是还有这么多数据库,就算它们大同小异,我们要学习总得具体落实到一个点上吧,我该怎么学啊,不会一次把所有数据库都学会吧?
老田:当然不会,事实上只要你掌握好一种数据库之后花很短的时间就可以掌握其他几种数据库。考虑到你对数据库几乎没有什么概念,我选择上手最容易,帮助文档最智能的Microsoft SQL Server作为学习的载体。当然,既然关系数据库发展到了顶峰,我们就有必要进一步解释一下:到底啥才是关系数据库。