数据库历史
埃德加·弗兰克·科德
埃德加·弗兰克·科德(英文:Edgar Frank “Ted” Codd)
是一位英国计算机科学家。他为关系型数据库理论做出了奠基性的贡献。他在IBM工作期间,首创了关系模型理论。他一生中为计算机科学做出了很多有价值的贡献,而关系模型,作为一个在数据库管理方面非常具有影响力的基础理论,仍然被认为是他最引人瞩目的成就。
1981年,科德因在关系型数据库方面的贡献获得了图灵奖。
数据库正规化
关系数据模型(Relational data model)
2
说到关系型数据库,就要从1970年E.F.Codd的《A Relational Modelof Data forLarge Shared Data Banks》的论文开始讲起。该论文奠定了关系模型的理论基础,Codd的同事DonChamberlin对Codd的论文和关系运算进行转换,发明了简单易用的SQL语言,并且在之后的发展中成为所有关系型数据库的标准。这种高级的非过程化编程接口语言,成为了距离数据库最近的语言,将计算机科学和人类理解认知完美的衔接在了一起。1970 年关系模型建立之后,IBM公司在SanJose实验室增加了更多的研究人员研究这个项目,这个项目就是著名的System R。该项目结束于1979年,完成了第一个实现SQL的DBMS。1973年加州大学伯克利分校的Michael Stonebraker 和EugeneWong利用System R已发布的信息开始开发自己的关系数据库系统Ingres。LarryElision和他的同事看到商机,开发出第一个商用大型关系型数据库Oracle(之后将近半个世纪Oracle一直都是关系型数据库的领头羊),之后IBM也推出了DB2、MichaelStonebraker开发了Postgres并放在BSD版权下,后来演变成了Postgres SQL,87年微软和Sybase合作,开发出了MS SQL和Sybase。到了2000年后,另一款明星产品MySQL由于其自由开放、轻量,被google等互联网公司普遍使用,并逐步进入大家的视野从而火爆起来。
3
为什么要使用数据库而不是仅将数据保存到磁盘?
https://qastack.cn/software/190482/why-use-a-database-instead-of-just-saving-your-data-to-disk
4
阿波罗登月计划与数据管理
美国在20世纪60年代进行了“阿波罗登月计划”的研究,当时“阿波罗”飞船由约200万个零部件组成,分散在世界各地制造,为了掌握计划进度及协调工程进展,“阿波罗”计划的主要合约者罗克威尔(Rockwell)公司曾研制了一个计算机零部件的管理系统。系统共用了18盘磁带,虽然可以工作,但效率极低,哪怕是一个小小的修改,都会带来“牵一发动全省”的后果,维护起来相当困难。18盘磁带中60%是冗余数据。这个系统一度成为实现“阿波罗登月计划”的严重阻碍
应用的需要推动了技术的发展。这个系统是基于当时文件管理系统的基础上开发的,文件管理系统面对大量数据时的困境促使人们去研究新的数据管理技术,数据库久应运而生了!例如,最早的数据库管理系统之一IMS就是上述的罗克威尔(Rockwell)公司在实施“阿波罗”计划中与IBM公司合作开发的,从而保证了“阿波罗”飞船在1969年顺利登月。
阿波罗(Apollo)
这些著名数据库之间的“关系”,你知道吗?
要说清楚这些著名数据库之间的“关系”,就得从数据库发展历史说起。
1961年,GE(通用电气公司)的Charles Bachman ,开发了IDS(集成数据存储,Integrated Data Store),这是世界上第一个NDBMS(网状数据库管理系统,Network Database Management System),也是第一个数据库管理系统。
1968年,为阿波罗登月计划,IBM的Vern Watts,开发了IMS(信息管理系统,Information Management System),这是世界上第一个HDBMS(层次数据库管理系统,Hierarchical Database Management System).到21世纪最初10年结束时,中国多家银行都购买了IMS.
网状数据库和层次数据库已经很好地解决了数据的集中和共享问题,但是在数据独立性和抽象级别上仍有很大欠缺.
于是1970年,IBM研究员Edgar F. Codd,发表论文《大型共享数据库数据的关系模型》(A Relational Model of Data for Large Shared Data Banks).该论文提出了关系数据模型,奠定了关系模型的理论基础,Codd也被誉为“关系数据库之父”,并成为1981年图灵奖得主.
1973年,IBM的San Jose实验室,启动了著名的System R项目,此后,基于该项目实践发表了一系列关于关系数据库的经典论文,如:SQL语言原型,定义数据库事务和数据一致性机制,关系查询优化器等了一大批对数据库技术发展具有关键性作用的成果.
但IBM却并没有基于这些研究成果及时推出关系型数据库产品,因为当时IBM的IMS卖的还不错.不过,有2个人却从IBM的研究论文中抓住了机会,一个是主流数据库的奠基人Michael Stonebraker,一个是甲骨文创始人Larry Ellison,彻底开启了关系数据库时代。
Ingres
1973年,加州大学伯克利分校的Michael Stonebraker和EugeneWong,从Edgar F.Codd的论文中受到启发,开发了世界上第一个关系型数据库系统Ingres.在Ingres基础上,又产生了很多知名数据库软件,包括Informix、Sybase、SQL Server、PostgreSQL等。
Oracle
1977年,Larry Ellison与Bob Miner和Ed Oates在硅谷共同创办了一家名为软件开发实验室SDL(Oracle公司的前身),基于System R公开信息,开始策划构建可商用的关系型数据库管理系统(RDBMS),于是就有了Oracle。
2009年,Oracle在收购了开源数据库MySQL之后,在专业和普通的数据库市场都占有极高的份额,成为数据库领域一哥,但近年来,Oracle受到云数据库的挑战,市场份额被慢慢在蚕食.
Informix
1981年,基于Ingres,Informix诞生.到1997年已经成了第二大数据库供应商.2001年,被IBM收购.2014年,IBM将Informix全部源码授权给了3家中国公司,分别是南大通用,华胜天成,星瑞格.2017年5月,IBM把整个Informix卖给了印度公司HCL。
DB2
1983年,基于System R,IBM终于发布了DB2,虽然姗姗来迟,但在数据库领域一度也是三分天下占其一的霸主,如今却几乎被市场给遗忘.没落的原因在于IBM走系统捆绑销售的套路,导致DB2受众过窄,会使用的人不多.但IBM对于关系型数据库的贡献是毫无疑问的。
Sybase
1987年,基于Ingres,Sybase SQL Server1.0发布.虽然没有Oracle、DB2名气响亮,但在电信、交通、银行等领域拥有极强的市场.曾经国内许多大企业都使用它,尤其金融企业.不过,在被SAP收购后,成为了SAP HANA的OLTP引擎,Sybase被打入冷宫。
PostgreSQL
1988年,基于Ingres,Postgres诞生.1994年,以Postgres4.2版本为基础的PostgreSQL发布,此后逐渐成为全球最为知名的开源关系数据库之一,就其功能及许可证宽松度而言,要优于MySQL.目前世界排名第四.国内外不少数据库都是基于PostgreSQL.如:亚马逊Redshift、Greenplum、腾讯Tbase、华为GaussDB、瀚高数据库等。
SQL Server
1989年,基于Sybase SQL Server,微软SQL Server出现,SQL Server是在Sybase帮助下的产物,Sybase就是SQL Server的原型.1994年,两家公司合作终止,为了区分,Sybase SQL Server改名为Sybase ASE,此后,SQL Server发展壮大了,Sybase却一路向下.
MySQL
1996年,MySQL1.0发布.2008年,MySQL被Sun公司收购.2009年,Sun又被Oracle收购,因为开源及LAMP组合,让MySQL被广泛传播.因此成为全球最受欢迎的开源数据库,世界排名第二.国内不少数据库都是基于MySQL,如腾讯TXSQL、阿里AliSQL、青云RadonDB等。
IBM信息管理大事记
从推出IMS以支持美国航空航天局(NASA)的阿波罗计划到推出IBM DB2 9(代号为Viper),IBM数据库不断发展和创新。
IBM DB2 9只不过是IBM数据库长期保持领先历程中的最新进展。IBM发明了世界上第一款名为“IMS”的数据库,用于帮助NASA管理宏大的“阿波罗太空计划”中的繁琐资料。
1966年,IBM与其客户 ——北美洛克维尔公司和卡特彼勒公司开始合作开发数据库,并于1968年由IBM的工程师完成了数据库的研发工作。1969年,该数据库作为IBM的产品发布时被更名为IMS。
随后,IBM又发明了关系数据库,可根据多种变量对信息进行整理。其中包括1977年编写的工业标准的结构化查询语言或SQL。20世纪80年代早期,第二阶段技术又被运用于新型数据库产品中,其被命名为DB2。
在过去的几年中,DB2已经从重要的大型机产品发展成可在各种服务器平台上运行的产品,尤其是在System 390(目前称作System z)中,它已成为分布式计算的核心。今天,近50万台DB2数据服务器运行在System z和安装Linux系统的英特尔平台上。
20世纪60年代,IBM最初的数据库重点是为高性能应用软件需求提供交易支持。这项工作着重强化了查询优化,随后又转向了成本优化,使今天的DB2成为了世界上最为成熟的优化大师。就像一名注重成本的管理者一样,优化大师的职责就是找到从网络中高效传递所需信息的最佳方式。
1966年:IBM与其客户 ——北美洛克维尔公司和卡特彼勒公司开始合作开发数据库。
1968: IBM 在 IBM 360 计算机上研制成功了 IMS V1,这是业界第一个层次型数据库管理系统,也是层次型数据库中最为著名的和最为典型的。在关系型数据库大行其道的今天,很多企业仍然还在使用该数据库,其生命力可见一斑。
1970: 这是数据库历史上划时代的一年,IBM 公司的研究员 E.F.Codd 发表了业界第一篇关于关系数据库理论的论文“A Relational Model of Data for Large Shared Data Banks”,首次提出了关系模型的概念。这篇论文是计算机科学史上最重要的论文之一,也奠定了 Codd 博士“关系数据库之父”的地位。
1973: IBM 研究中心启动了 System R 项目,旨在探讨和研究多用户与大量数据下关系型数据库的实际可行性,这个项目在 DB2 发展史上占有重要意义,它为 DB2 的问世打下了良好的基础。由于取得了一大批对数据库技术发展具有关键性作用的成果,该项目于1988年被授予ACM 软件系统奖。
1974: IBM 的研究员 Don Chamberlin 和 Ray Boyce 通过 System R 项目的实践,发表了论文“SEQUEL:A Structured English Query Language”。论文中提出的 SEQUEL 语言是一套比关系微积分与关系代数更适合最终用户使用的非程序化查询语言,我们现在所熟知的 SQL 语言就是基于它发展起来的。
1982: IBM 发布了 SQL/DS for VSE and VM 。这是业界第一个以 SQL 作为接口的商用数据库管理系统。该系统也是基于 System R 原型所设计的。
1983: 千呼万唤始出来,IBM 在这一年发布了DATABASE 2(DB2)for MVS(内部代号为“Eagle”),一个长盛不衰的品牌就此出现了。
1988: IDUG(国际DB2用户组织)组织成立。这标志着 DB2 的用户已经形成了相当的规模。
1993: IBM 发布了DB2 for OS/2 V1(DB2 for OS/2 可以被简写为DB2/2)和DB2 for RS/6000 V1(DB2 for RS/6000 可以被简写为DB2/6000),这是 DB2 第一次在Intel 和Unix 平台上出现。
1994: IBM 发布了运行在 RS/6000 SP2 上的 DB2 并行版 V1,DB2 从此有了能够适应大型数据仓库和复杂查询任务的可扩展架构。
1995: IBM 发布了 DB2 Common Server V2,这是第一个能够在多个平台上运行的对象—关系型数据库产品,并能够对 Web 提供充分支持。DataJoiner for AIX 也诞生在这一年,该产品赋予了 DB2 对异构数据库的支持能力。
1996: IBM 发布了 Intelligent Miner,该产品可以对基于 DB2 的数据源实施数据挖掘。
1996: IBM将DB2更名为 DB2 通用数据库(DB2 Universal Database),这是第一个能够对多媒体和 Web 进行支持的关系型数据库管理系统。该系统具有很好的伸缩性,可以从桌面系统扩展到大型企业,适应单处理器、 SMP 和 MPP 计算环境,并可以运行在所有主流操作系统和硬件平台上。DB2 V5 是以前的两个产品的合并:DB2 Common Server V 2.1.2 和 DB2 并行版 1.2。
1998: IBM 发布了 DB2 OLAP Server,这是一个基于 DB2 的完整的 OLAP 解决方案。这个产品是和 Arbor Software(Hyperion的前身)合作开发的。
1999: IBM发布了 Intel 平台上的 DB2 UDB for Linux。
2000: IBM 将 Visual Warehouse 集成到 DB2 中,为DB2 提供了内置的数据仓库管理功能。
2000: IBM 启动了数据库管理工具业务,起初着重于为主机上的 IMS 和 DB2 提供高效管理工具,最终这项业务扩展到 UNIX、Linux 和 Windows 平台。Informix 数据库产品也在支持之列。
2000: IBM 发布了用于管理数字资产的Content Manager。IBM 数字图书馆和EDMSuite 产品现在都被包含在一个单一的架构中来提供多媒体资产管理和企业内容管理。荷兰国家图书馆、梵蒂冈图书馆都是最早的用户。
2001: IBM 以 10 亿美金收购了 Informix 的数据库业务,这次收购扩大了 IBM 的分布式数据库业务。
2002: 作为 IBM 自主运算策略的一部分,SMART(自我管理和资源调节)技术在 DB2 UDB V8.1 中首次正式应用。
2003 : IBM 将数据管理产品统一更名为信息管理产品。
2003 : DB2 发布了 DB2 Information Integrator(该产品由以前的 DB2 DataJoiner和 Enterprise Information Portal演化而来)
2004年:IBM发布了II与DB2的下一个版本Masala与Stinger,加强了数据智能分析、挖掘、预测能力。
2005年:IBM发布了“绿色风暴”计划,向业界宣布IBM DB2商业数据库正式推出应用开发商网络计划和数据库精英人才培养计划。
2006年:IBM独家赞助 “2006中国首届杰出数据库工程师评选”活动,表明IBM正在履行帮助中国数据库人才成长的承诺。
2006:DB2 9作为第三代数据库的革命性产品正式在全球发布。