网状数据库之父—Charles Bachman

数据库 其他数据库
Bachman始终活跃在工业界,他是仅有的几位没有学术背景、没有教职、甚至没有博士学位的图灵奖得主之一。

 [[31419]] 

今天我们要介绍的人物,出身于二战,他来自美国陆军防空高炮师,名叫Charles Bachman。战争结束后,Bachman进入密歇根大学,1948年获得机械工程学士学位,1950年获得宾夕法尼亚大学硕士学位,同年获得沃顿商学院MBA学位。随后他加入密歇根州的陶氏化工。1960年,Bachman跳槽加入通用电气,并在这里开发了第一代网状数据库管理系统—IDS。

1940年代,计算机在特殊的世界局势中诞生,主要为了弹道计算、密码破译和原子弹研究等工作,这些全是基于数值的。当时的计算机只能处理数值,无法处理字母等其他符号;当时也没有大容量的存储器。到了1950年代初,这两个问题得到了历史性的突破,计算机可以处理字母等各种符号了,人们把磁带系统引入了计算机,作为外部存储器。但是,磁带不仅速度奇慢,更大的问题是,它是顺序读写的,对于一条磁带而言,数据结构没有意义,想取个数是需要倒带的。1956年,IBM公司推出了磁盘系统,容量大、转速很快,几乎是随机读写的。这个质的飞跃,使得数据的逻辑结构从此是非线性的了。此时最直观的想法,自然是树状结构,IBM 360系列引入了世界上最早的数据库管理系统之一IMS,此系统为1969年的阿波罗登月立下了汗马功劳,它就是基于树状结构的。无论程序还是数据,本质都是对现实世界的一种抽象,我们希望这种抽象能尽可能贴切反映现实世界中的关系。很明显,现实世界中的事物不都是树状的。于是我们又想到了网状结构。至此,我们就来到了Bachman当时所处的背景。

网状数据库,听起来很简单。线性结构就是树状的一种特例,我们花了10多年才完成这种泛化,因为这里面需要随机存储器,需要硬件支持。但是,从树状到网状的泛化,并不需要什么新型硬件,似乎只需要一个新型的数据库管理系统。然而这个管理系统并不容易实现。在树状结构中,任何结点有且只有一条访问路径,就像在日常操作系统中,不可能建出另外一个根目录,也不能建出一个同时属于多个目录的子目录。但在网状结构中,这都是可能的,可以有多个结点没有父结点(但此时已不能把它们叫做“根”了),一个结点也可以有多个父结点。有多个父结点就意味着,要访问一个结点,可能存在多条不同的路径。这样复杂的系统要如何管理?网状数据库还有很多类似的困难,等着人们来解决。

这一等,又将近10年。Bachman加入通用电气之后,负责涉及全公司各部门的综合管理系统,包括生产规划、配件和原材料供给、订单处理及反馈等许多方面。他要使用自家生产的GE 225计算机,设计全方位的企业生产信息和控制系统(MIACS)。1964年,该系统问世,包括很多组件,底层是集成数据存储系统,也就是我们前面所说的IDS,这就是世界上第一款网状数据库管理系统。

时势造英雄,Bachman抓住历史时机,结合工业界的需求,创造了革命性的产品。1970年,通用电气的计算机业务被霍尼韦尔收购,Bachman来到波士顿,在霍尼韦尔高级研究部从事数据库工作。他还曾为ISO委员会设计过开放系统互连(OSI)模型,并担任过美国国家标准委员会的数据库管理系统研究组副主席,致力于数据库管理语言的标准化工作。1971年,Bachman的研究组提出了DBTG报告,其中确立了包含外部、抽象和内部的三层模式,该模式在数据库领域有着极为深远的影响力。1973年,ACM授予Bachman图灵奖,表彰他在数据库领域,尤其是网状数据库管理系统方面的杰出贡献。Bachman始终活跃在工业界,他是仅有的几位没有学术背景、没有教职、甚至没有博士学位的图灵奖得主之一。

 

责任编辑:艾婧 来源: 程序员
相关推荐

2011-08-10 15:46:29

数据库

2011-11-04 14:07:40

存储

2021-05-17 06:57:34

SQLServer数据库

2021-09-28 09:25:05

NoSQL数据库列式数据库

2022-11-14 18:23:06

亚马逊

2010-09-30 09:11:01

2011-05-13 09:42:21

2010-09-30 08:27:48

2020-11-23 16:42:38

数据库MySQL技术

2021-09-06 10:24:12

鸿蒙HarmonyOS应用

2011-08-02 15:04:49

2010-07-29 14:08:33

2011-05-13 13:54:02

数据库文档数据库

2010-04-22 16:16:35

Oracle数据库

2011-04-18 13:46:24

数据库设计

2011-01-14 09:04:00

云数据库

2011-03-28 15:44:45

惠普数据库Oracle数据库

2011-05-13 13:38:49

数据库对象

2010-07-15 17:28:50

SQL Server

2010-05-10 15:50:39

Oracle数据库性能
点赞
收藏

51CTO技术栈公众号