ORACLE成长历程

来源:互联网 发布:淘宝登录要手机验证码 编辑:程序博客网 时间:2024/05/22 03:22

转载自:优上IT,专家观点,ORACLE成长历程

50年风云迭起,500年沧海桑田……很难想象,ORACLE公司的这一段传奇居然要从IBM开始。

1970年6月IBM公司的研究员埃德加·考特(Edgar Frank Codd)在Communications of ACM 上发表了那篇著名的《大型共享数据库数据的关系模型》(A Relational Model of Data for Large Shared Data Banks)的论文。这是数据库发展史上的一个转折。要知道,当时还是层次模型和网状模型的数据库产品在市场上占主要位置。从这篇论文开始,拉开了关系型数据库软件革命的序幕。

1977年6月:Larry Ellison与Bob Miner和Ed Oates在硅谷共同创办了一家名为软件开发实验室(Software Development Laboratories,SDL)的计算机公司(ORACLE公司的前身)。那个时候,32岁的Larry Ellison,这个读了三家大学都没能毕业的辍学学生,还只是一个普通的软件工程师。公司创立之初,Miner是总裁,Oates为副总裁,而 Ellison,因为一个合同的事情,还在另一家公司上班。

2010072015410020159[1]没多久,第一位员工Bruce Scott(用过ORACLE数据库软件的人都知道有个Scott用户的吧?没错,就是这个Scott,至于Scott用户的密码Tiger,那是 Scott养的猫的名字)加盟进来,在Miner和Oates有些厌倦了那种合同式的开发工作后,他们决定开发通用软件,不过他们还不知道自己能开发出来什么样的产品。Oates最先看到了埃德加·考特(Edgar Frank Codd)的那篇著名的论文,连同其他几篇相关的文章并推荐Ellison和Miner也阅读一下。Ellison和 Miner预见到数据库软件的巨大潜力(跟着IBM走,没错),于是,SDL开始策划构建可商用的关系型数据库管理系统(RDBMS)。

2010072014311074404[1]

1978软件开发实验室从原来的圣克拉克迁至位于硅谷心脏的 menlo park 的 sand hill 大街上。为了让人们了解公司的主要业务范围,他们将软件开发实验室更名为关系软件公司 (relationa software inc. (RSI))。

1979RSI 开发出第一款商用SQL数据库V2(出于市场策略,公司宣称这是该产品的第2版,但却是实际上的第1版。之所以被命名为第2版而不是第1版,是因为Ellison认为潜在的客户更愿意购买第2个版本,而不是初始版本。多年以后的今天,ORACLE公司声称是他们第一个提供了第一个SQL关系型数据库管理系统)。虽然软件不是很好,但是客户还是有的——美国中央情报局迫不及待地想买一套这样的软件来满足他们的需求。但在咨询了IBM公司之后发现 IBM没有可以商用的产品,他们联系了RSI。于是RSI有了第一个客户。在当时,政府和军方的机构往往同时有几种计算机,而那时还没有什么“软件可移植”这样的说法,当然,也几乎没有具有这样的能力的应用软件。也就是说,给PDP-11开发的ORACLE数据库不能用在IBM主机和DEC的VAX上。很快用户就表现出来这样的需求:ORACLE能否同时在不同的操作系统上运行?这给RSI带来了新的挑战(主要是Miner和Scott)。70年代末期和80年代早期的软件一般都设计成在单一操作系统上运行,具有可移植能力的软件很少。ORACLE最先将其软件移植到DEC VAX计算机上的VMS操作系统上。这一年RSI雇到了一位DEC公司的技术高手Robot Brandt进行VAX上ORACLE的开发。

1982RSI 更名为 ORACLE 系统公司 (ORACLE system corporation),ORACLE 公司。用产品名称为公司命名,帮助公司赢得了业界的认同。

1983ORACLE 决定开发便携式 rdbms。ORACLE 开发出 v3,这是第一款在 pc 机、小型机及大型机上运行的便携式数据库。Miner和Scott历尽艰辛用C语言重新写就这一版本。要知道,C语言当时推出不久,用它来写ORACLE软件也是具有一定的风险的,但除此之外,别无他法。很快就证明了这样做是多么的正确,C编译器便宜而又有效。从现在起,ORACLE产品有了一个关键的特性:可移植性。ORACLE第3版还推出了SQL语句和事务处理的“原子性”――SQL语句要么全部成功,要么全部失败,事务处理要么全部提交,要么全部回滚。ORACLE第3版还引入了非阻塞查询,使用存储在“before image file”中的数据来查询和回滚事务,从而避免了读锁定(read lock)的使用(虽然通过使用表级锁定限制了它的吞吐量)。同样是1983年,IBM发布了姗姗来迟的Database 2(DB2),但只可在MVS上使用。不管怎么说,ORACLE已经占取了先机。在开发第三版还没有结束的时候,Scott离开了ORACLE。当时用C改写ORACLE的压力很大,无休止的软件调试终于让 Scott不堪重负,选择了一走了之。把剩下的重担交给了Miner一个人。在出售了自己4%的股票之后,Scott 后来创建了Gupta公司(现更名为Centura Software)和PointBase公司(提供100%纯Java嵌入式数据库),都是开发和数据库相关的产品。多年后有人问到他的4%的 ORACLE股票的时候,Scott,这个曾经给ORACLE写出第一行代码的技术高手,也只能报以一笑了。如果能坚持下来,那是一笔几亿美金的财富。不过当时的Scott没有那么多的想法,他只是太累了。而相比之下Robot Brandt进行的VAX上ORACLE的开发,开始的时候资金有限,只能到加州大学伯克利分校去蹭机器进行开发,后来好一些,但机器也是借来的。尽管困难重重,Brandt还是比较成功的完成了移植工作。随着VAX小型机的大量销售乃至供不应求,ORACLE软件也成为VAX上最受欢迎的程序。这一点要归功于Larry对市场的先知先觉。如果说,是IBM引领着ORACLE公司走上数据库的大船,那么DEC公司的VAX就是带着他们扬帆出海了。短短的几年之后,ORACLE数据库被移植到各种主要平台之上。ORACLE产品也一直因为有可移植性这个关键特性而被那些潜在的客户关注。

Oates这个时候因为婚姻趋于破裂而情绪沮丧,已经不能把精力全部放到公司上,不得不离开公司。几年后,他又重返公司,重新为ORACLE带来巨大的贡献,他许下诺言,在公司员工超过1万人的时候会再度离开(1999年,他完成了心愿。现在他正在纵情于音乐,自得其乐)。

1984年10月ORACLE发布了第4版产品,年收入达到1,270 万美元,ORACLE 迁至贝尔蒙特市戴维斯20号一栋 84,000平方英尺的办公楼内。第4版产品的稳定性总算得到了得到了一定的增强,用Miner的话说,达到了“工业强度”。但是还不够令人满意,用户对产品的抱怨似乎永无休止。这一版增加了读一致性(read consistency),这是数据库的一个关键特性,可以确保用户在查询期间看到一致的数据。也就是说,当一个会话正在修改数据时,其他的会话将看不到该会话未提交的修改。这一年设立了:ORACLE 加拿大公司、ORACLE 荷兰公司、ORACLE 英国有限公司。

1985ORACLE发布了5.0版,年收入达到 2,300 万美元。有用户说,这个版本算得上是ORACLE数据库的稳定版本。这也是首批可以在 Client/Server模式下运行的的RDBMS产品,在技术趋势上,ORACLE数据库始终没有落后。这意味着运行在桌面PC机(客户机)上的商务应用程序能够通过网络访问数据库服务器。同年,当时曾经的最大的独立软件公司Cullinet(主要销售网状数据库)如流星般陨落。当时,ORACLE的主要竞争对手是Ingres数据库。Ingres在加州大学伯克利分校诞生,主要的设计者是当时鼎鼎大名的Michael Stonebraker教授。可以说Ingres数据库软件是上个世纪80年代技术上最好的数据库,Ingres市场分额的快速增长已经给ORACLE早成了很大的压力。巧的是,这个时候,IBM公司再一次伸出“上帝之手”。 Ingres使用的是Stonebraker 发明的QUEL(Query Language))的查询技术,这和IBM的SQL大不相同。在某些地方QUEL甚至要优于SQL。IBM当时担心Ingres把QUEL变成标准会对自己不利。经过一番衡量,决定把自己的SQL提交给数据库标准委员会。而Stonebraker教授可不打算把QUEL提交给数据库标准委员会,学院派的他认为这麽做实际上是扼杀了创新精神。鹬蚌相争,渔翁得利。ORACLE看到并抓住了这个绝佳的机会,大肆宣布ORACLE全面与SQL兼容,加上 ORACLE当时对Ingres PC上的版本的攻击(弱化对手优势,化解自己弱势是他们最拿手的本领),再加上ORACLE公司销售上的强势,Ingres不断丢城失地,等到后来推出支持SQL的数据库的时候为时已晚。紧跟IBM让ORACLE得以成长、壮大,拥抱标准,拥抱开放,拥抱变化,让ORACLE立于不败之地。这一年设立了:ORACLE奥地利公司、ORACLE德国公司、ORACLE日本公司、ORACLE瑞典公司、ORACLE瑞士公司。

1986年3月12日ORACLE公司推出 initial public offering(发布的5.1版,支持分布式查询,允许通过一次性查询访问存储在多个位置的数据),并以每股15美元公开上市,当日以20.75美元收盘,公司市值2.7亿美元。次日,即3月13日,微软以每股21美元的发行价上市,以28美元收市,公司市值达到7亿美元,远远超过了ORACLE。成功光环下的微软和盖茨遮盖住了ORACLE与Ellison的光芒,可能这也是Ellison敌视微软的开始。 这一年设立了:ORACLE澳大利亚公司、ORACLE芬兰公司、ORACLE法国公司、ORACLE系统香港有限公司、ORACLE挪威公司、ORACLE西班牙公司。

1987ORACLE 正式成为世界上最大的 dbms 软件公司,ORACLE 组建了由七个员工和两种产品组成的应用产品部,这标志着它开始进入企业应用产品市场,开始开展咨询与支持业务,旨在帮助客户更好地使用他们的软件。现在,ORACLE 咨询部已成为世界上第四大咨询部门,推出集成的 case 和 4gl toolset。这一年设立了ORACLE 墨西哥公司,年收入达到1.31 亿美元。

1988ORACLE 推出第6版数据库。由于过去的版本在性能上屡受诟病,Miner带领着工程师对数据库核心进行了重新的改写。引入了行级锁(row-level locking)这个重要的特性,也就是说,执行写入的事务处理只锁定受影响的行,而不是整个表。这个版本引入了还算不上完善的PL/SQL (Procedural Language extension to SQL)语言。第6版还引入了联机热备份功能,使数据库能够在使用过程中创建联机的备份,这极大地增强了可用性。同时在这一年,ORACLE开始研发 ERP软件,并推出 unix 关系财务应用产品 (unix relational financial applications)。公司发展看上去比较顺利,不过,噩梦才刚刚开始。 由于过去对软件测试重视的程度不够――那个时候公司规模小,基本上都是客户帮助免费测试的。在第6版刚发布之后,很多迫不及待开始使用的用户就怨声载道。这是个根本就没有测试好就进行发布的产品(也怪Ellison,大话总要说在前头,只好自尝苦果)。用户开始对ORACLE大肆抨击, ORACLE的一些对手,也开始落井下石,针对ORACLE产品的一些弱点进行攻击。开发人员一面应付愤怒的用户,一面加班加点地对程序进行接连不断的修正,最后,总算得到了一个比较稳定的版本,暂时平息了用户的愤怒。这一年设立了:ORACLE 巴西公司、ORACLE 中国公司、ORACLE 塞浦路斯公司、ORACLE 马来西亚公司、ORACLE 新西兰公司。年收入达到 2.82 亿美元,ORACLE 成为世界上第四大软件公司。

1989年收入达到 5.71 亿美元,ORACLE 将其总部迁至红木城海湾。现在那儿已建起了六座摩天大楼,周围有无数的建筑,营造出一种园区气氛。ORACLE 在 ibm 大型机、dec 和 unix 小型机以及 os/2 pc 机上,创下了事务处理业绩的最佳记录。推出 oltp 支持服务。这一年设立了:ORACLE 智利公司、ORACLE 希腊公司、ORACLE 韩国公司、ORACLE 葡萄牙公司、ORACLE 土耳其公司、ORACLE 委内瑞拉公司、ORACLE 台湾公司。ORACLE进入中国市场,ORACLE 现在的产品销售范围覆盖全世界 86 个国家和地区。

2010072014311086602[1]

1990年收入达到 9.16 亿美元。这一年设立了:ORACLE 比利时公司、ORACLE 阿根廷公司、ORACLE 哥伦比亚公司、ORACLE 哥斯达黎加公司、ORACLE 菲律宾公司。

1991年收入达到10.28 亿美元,任命 jeff henley 为首席财务官 (cfo)。ORACLE中国公司正式在中国注册为“北京甲骨文软件系统有限公司”。

1992年收入达到11.79 亿美元,任命 raymond lane 为首席运营官 (coo)。ORACLE7 数据库发布。这个公司已经空谈了好几年的新版本(一度被讥讽为不过是Ellison的故计重施而已),直到1992年6月才终于闪亮登场,这一次公司吸取了第6版匆忙上市的教训,听取了用户的多方面的建议,并集中力量对新版本进行了大量而细致的测试。该版本增加了许多新的性能特性:分布式事务处理功能、增强的管理功能、用于应用程序开发的新工具以及安全性方法。ORACLE 7还包含了一些新功能,如存储过程、触发过程和说明性引用完整性等,并使得数据库真正的具有可编程能力。还有一点必需要说明的是,这个版本在原有的基于规则的优化器(RBO)之外引入一种新的优化器:基于开销的优化器(Cost-Based Optimizer , CBO)。CBO根据数据库自身对对象的统计来计算语句的执行开销,从而得出具体的语句执行计划。在以后的几个重大版本中,ORACLE的工程师们逐步对这个优化器进行改进,CBO逐渐取代了RBO。 ORACLE第7版是ORACLE真正出色的产品,取得了巨大的成功。这个版本的出现真是好时机,当时Sybase公司的数据库已经占据了不少份额,ORACLE借助这一版本的成功,一具击退了咄咄逼人的Sybase。

1993年收入达到15.03 亿美元,推出 cross gui toolset。

1994年收入达到 20.01 亿美元,multi-media server database 发布。

1995“搅浑水”是Ellison的一项绝技。在1995年巴黎举行的欧洲信息技术论坛会议上,Ellison在即兴演讲中介绍了网络计算机(Network Computer, NC)的概念,所谓NC指的是配置简单却能充分利用网络资源的低价电脑,最为重要的是,它不需要操作系统(看这到里,我们似乎联想到了今天热火朝天的“云概念”),或者更准确的说,不需要微软的操作系统。 Ellison希望借此来抵制微软的强势。很快,ORACLE联合IBM、Sun、Apple和Netscape在1996年制定了网络计算机的标准,但事实上人们从头到尾没有看到一台真正的NC生产出来。这次的演讲在业界引起了轩然大波,通过这个事件,ORACLE公司吸引了足够多的注意力,同时也让人们看到ORACLE公司对于网络的巨大信心。 这一年ORACLE年收入达到 29.67 亿美元。

1996年收入达到 42.23 亿美元,ORACLE 组建了一个新的子公司——网络计算机公司(network computer inc.)推销网络计算机,发布 ORACLE7.3 universal server。

1997年收入达到 56.84 亿美元,ORACLE 公布了 ORACLE designer/2000 2.1 版本和 ORACLE developer/2000 2.1 版本,它极大地提高了数据库应用程序开发人员的生产力。ORACLE 推出其下一代网络计算的数据库——ORACLE8,这就大大降低了企业的计算成本,推动了一个信息获取低成本、个性化的新时代的到来。 ORACLE applications r10.7 将 ORACLE 的应用产品同 web 紧密联系起来:有了用于 web 的 ORACLE applications,企业内外的用户使用熟悉的、简单易用的 web 浏览器界面不但可以进行关键性的事务处理,还可以获取公司信息,并按照所了解的公司信息安排自己的活动。

1998年9月ORACLE公司正式发布ORACLE 8i。“i”代表Internet,这一版本中添加了大量为支持Internet而设计的特性。这一版本为数据库用户提供了全方位的Java支持。 ORACLE 8i成为第一个完全整合了本地Java运行时环境的数据库,用Java就可以编写ORACLE的存储过程。对,Java,只要是能够打击微软的武器, ORACLE都要派上用场。ORACLE 8i 添加了SQLJ(一种开放式标准,用于将SQL数据库语句嵌入客户机或服务器Java代码)和ORACLE interMedia(用于管理多媒体内容)以及XML等特性。同时,ORACLE 8i 极大程度上提高了伸缩性、扩展性和可用性以满足网络应用需要。接下来的几年中,ORACLE陆续发布了8i的几个版本,并逐渐添加了一些面向网络应用的新特性。面对开源运动的蓬勃发展,ORACLE自然不甘落后,1998年10月ORACLE发布了可用于Linux平台的ORACLE 8 以及ORACLE Application Server 4.0,随后不久,ORACLE又发布了ORACLE 8i for Linux。在 .com大潮中,ORACLE是站在风口浪尖的弄潮儿。

1999年收入达到 88.27 亿美元,ORACLE 的 ORACLE8i 交付使用:这是世界上第一个互联网数据库,同时也是 ORACLE 的互联网平台商务革新的核心部分。这个新的数据库为 ORACLE 的低成本基础架构上的互联网应用产品带来了巨大的规模效益。

2000年收入达到101.30 亿美元,ORACLE 电子商务套件 (e-business suite),这是业界第一款完整的且全面集成的电子商务应用产品套件。ORACLE 使用自己的电子商务套件,仅一年时间就节省了10 亿美元,换言之,营业毛利提高了十个百分点。

2001年6月在ORACLE OpenWorld大会中,ORACLE发布了ORACLE 9i。在ORACLE 9i的诸多新特性中,最重要的就是Real Application Clusters(RAC)了。说起ORACLE集群服务器,早在第五版的时候,ORACLE就开始开发ORACLE并行服务器(ORACLE Parallel Server ,OPS),并在以后的版本中逐渐的完善了其功能,不过,严格来说,尽管OPS算得上是个集群环境,但是并没有体现出集群技术应有的优点。在完全吸收了 Rdb(ORACLE在1994年收购了Compaq的Rdb数据库,此前Rdb属于DEC公司,DEC公司在VAX上实现了第一个可以商用的Rdb集群数据库)的一些技术优势之后,ORACLE终于推出了真正的应用集群软件。RAC使得多个集群计算机能够共享对某个单一数据库的访问,以获得更高的可伸缩性、可用性和经济性。ORACLE 9i的RAC在TPC-C的基准测试中打破了数项记录,一时间业内瞩目。这个新的数据库还包含集成的商务智能(BI)功能。ORACLE 9i第2版还做出了很多重要的改进,使ORACLE数据库成为一个本地的XML数据库;此外还包括自动管理、Data Guard等高可用方面的特性。

2003年9月8日旧金山举办的ORACLE World大会上,Ellison宣布下一代数据库产品为“ORACLE 10g”。ORACLE应用服务器10g(ORACLE Application Server 10g)也将作为甲骨文公司下一代应用基础架构软件集成套件。“g”代表“grid ,网格”。这一版的最大的特性就是加入了网格计算的功能。何谓网格计算?网格计算可以把分布在世界各地的计算机连接在一起,并且将各地的计算机资源通过高速的互联网组成充分共享的资源集成。通过合理调度,不同的计算环境被综合利用并共享。ORACLE宣称10g可以作为网格计算的基础,矛头直指最大的敌人 IBM的“随需应变”!看来,ORACLE公司已经把这一次的“赌注”押在了网格计算的大市场上。但前景如何?让我们拭目以待。

如果说,IBM是IT产业中的一头巨鲸,那么ORACLE一定就是一条大鲨鱼:咄咄逼人,善于进攻。就在2003年6月初, ORACLE突然宣布51亿美金收购仁科(PeopleSoft),业内再次震动。次举又一次露出ORACLE 一贯善于进攻的本性。要知道,ORACLE在发展过程中很少对企业进行收购的,那么收购仁科目的何在?首先,ORACLE觊觎企业应用软件市场已久,但苦于不能进一步扩大市场分额,尤为重要的是,一旦成功,可以直接对最大的敌人IBM进行打击,还可以阻击SAP等巨头的强势,这一点尤为重要。时至今日, ORACLE依然以不达目的不罢休的态势和仁科缠斗,结果如何,让我们拭目以待。

“人生最大的快乐是击败敌人”,Ellison一定很喜欢这句活。

原创粉丝点击