信息化 频道

IBM DB2 25周年,管理数据的生命周期

【IT168 信息化】

    这天上午,IBM院士王云在台上向人们亮出了自己当年的课本----1975年出版的《数据库系统简介》。在台下,还陆续有人进场,现场的服务员穿梭于会场的空地间忙于添加临时座位,而苦于没有座位的人只好与摄影记者一起挤在会场的角落处。王云之前,IBM中国区软件部信息管理市场经理邓宏从上衣口袋里掏出一枚纪念金币----一面印有“SOA”,一面印有“IOD”。之后,邓宏引用了毛泽东的一句诗词“风物长宜放眼量”,接着说:“今天是我们回顾IBM DB2 25周年的一个时间,是我们展望未来的一个时间。我相信在座的绝大多数朋友----尤其是很多年轻人----还需要把自己的很多精力放在与数据库相关的技术、研发,以及应用领域。数据库绝没有成为一个停滞不前的技术,数据库仍然代表了未来发展的方向。”

    25年前的1983年,IBM正式发布了DataBase 2(DB2) for MVS第一个版本,“DB2”品牌从此诞生。而早于此十多年前的1970年,被誉为“关系型数据库之父”的E.F.Codd博士发表了业界第一篇关于关系型数据库理论的论文“A Relational Model of Data for Large Shared Data Banks”,这篇论文也奠定了Codd博士在关系型数据库领域的地位。

    2008年的9月23日,IBM在中国庆祝DB2 25周年。用邓宏的话说,“今天,我们的目的非常明确。第一,要对DB2 25年的发展做一个回顾。第二,希望透过对DB2 25年历史的回顾,除了给大家概括IBM在IOD(Information ON Demand,信息随需应变)、数据库技术等各方面最新的进展外,还希望与大家一起梳理、思考、展望数据库技术的未来。”

DB2近期版本产品功能突破

    1983年到2008年的25年间,不但代表了DB2经历了长期的发展,也同时代表关系型数据库在企业中已经应用了25年之久。1970年关系型数据模型的提出、SQL语言与查询非常好的化技术的发展,都与IBM有关,之后这些理论与技术正式落地为商业化产品后,就成了DB2。

    DB2 8.x----开始第一阶段大换血

    DB2 8是IBM在2003年3月发布的。在这个版本之后,IBM在数据库新功能的改进方向上开始变的多元化。

    在这之前,IBM的确低估了个人计算机与分布式平台的发展,之后又一度矫枉过正地追随企业规模最小化,将主机系统移植到所谓的开放系统上的潮流。 20世纪90年代的一段时期里,IBM错过了发展良机,当时仍专注在可用性的提升,并未及时发展新的应用系统与扩充SQL功能。

    到了DB2 8,因为当时大部分企业忙着应付“Y2K千禧年危机”,因此IBM顺势延后了这个版本的研发时间。趁2000年后3、4年的时间,DB2的开发团队从系统的本质上开始改变,成果似乎是令人满意的。IBM DB2内部的开发团队成员特别用“Quantum Leap大跃进”来比喻SQL的功能改进。

    对当时的DB2来说,这样的变革相当迫切。IBM内部曾经评估过大型主机(MainFrame)平台与分布式平台之间的功能落差,两个平台上共通的功能最多,其次是分布式平台独有的,但大型主机独有的部分显然落后,于是他们需要把主机端的功能补上来,平衡在不同平台上的差异。于是到了DB2 8,新的SQL语言也有了延伸。

    另一件重大的工作是让DB2支持64位运算,而且需彻底打破2GB内存空间寻址对系统交易量处理所造成的限制。第8版时,这部分修改的幅度是30%至40%,到了DB2 9.x版又继续调整到30%,预计在下个版本全部调整完毕,届时就是完全64位化。

    这是一场针对DB2的大型“开刀手术”。系统里面的指针原先都是4个字节(Byte),现在全部需要改成8个字节(Byte)。就算忽略改写程序代码的工作量,系统修改后,接着还要执行测试,避免程序错误隐藏其中,凡此种种,这些开发、测试、除错的规模都相当可观。

    命名空间上允许使用更大量的字符,也是一个符合时代潮流的系统所必需。DB2过去只允许用8个字符来命名,现在必须能够开放使用更多字符来表达。近几年来,对象命名的方式已经改成以提升可读性为主,因此他们需要做到能容纳128个位的命名。但这样一改,既有数据表、索引、函式等数据库对象的名称,也都受影响,难度也很大。

    最后一项改造的重点是非常好的化,必须设法调整DB2的架构,以便能够适应下一个十年的复杂性增长。也就是在那时候,DB2开始发展所谓的自主运算(Autonomic Computing),事实上,这是一种专门针对数据库系统效能调优的机制,目的是让系统优化越来越聪明。

    在DB2 8.0的可用性、延展性与效能的发展上,DB2的数据分割最多可以分割成4096个,而且可以随时加入和轮流调换,此外,数据表空间上的分割与数据丛集等2种功能原本是合在一起的,现在开始能各自独立使用,彼此不相关。此外,新支持了多列数据的插入,而且非常好的化的做法也加以改良,例如数据表查询的结果实际储存起来,预先储存某些Select叙述的执行结果,让其它SQL指令可以直接取用,提升执行速度。系统可取用的内存空间,也将透过压缩取得更多,而且可以将资料页所使用的共享缓冲区,固定在实际的储存设备上。

    DB2 9.x----强化与简化数据库管理

    DB2 9.0是在2007年3月后发布的,代号“Viper”。IBM继续在可用性、可靠度、延展性等方面的发展之余,最大的改变是原生支持XML(即所谓的PureXML)和提供内存自动调优的能力。此外,DB2也开始支持全文检索与空间与地理数据。

    现在业界对原生XML支持做得最好的是DB2 LUW和DB2 Mainframe,两种平台的功能与价值几乎是相同的。从这个版本之后,XML在DB2当中是一个原生的数据类型,数据库内从上到下每一个组件都能认识这个类型。可以在里面存XML的数据,或是建立一个数据表,在上面建立XML的字段,再将数据存在里面,也可以在XML字段上建立索引,并且查询里面的XML 路径的表达式。系统的备份与还原工具也都认得这种型别。

    数据库内存的自动调优校是DB2 9.1版之后的一大突破,它可以自动观察系统目前执行的交易量,然后经过反复调整、学习,产生最适合的设定。IBM根据依照自己的测试数据表示,启动自动调优功能后,能够处理的交易量略微胜过有经验的DBA人员的调优。IBM软件产品处资讯工程顾问说,如果是由“人”来观察、调整可能会有误差,但DB2是透过内建的监控机制,观察内存使用的比例、命中率大小等状况,同时透过一些规则来加以判断,在内存里面执行一些运算和比较,以此来评估某几个参数调整后,是否会带来好的成效。

    启动自动内存调校后,从开始执行到成熟期,一般来说大约0.5~1小时,就可以收集到足够的信息来了解交易量的状况,然后套用非常好的化设定值。

    启动自动调优也很简单,只要数据库系统管理人员修改系统设定参数,将SELF_TUNING_MEM设为On、DATABASE_MEMORY等6个参数设成Automatic,DB2就开始调整,如果自动调校到某个程度的成效很好、不需再调,管理者可以将这些设定关掉,就会锁定在那个当下所调整的数值。
 

提供数据生命周期的全程管理

    1983年到2008年的25年,是DB2走过的25年。数据库技术发展历史中,关系型数据库之前是层次型数据库。虽然关系型数据库在企业应用中大行其道,但仍有很多企业在继续使用层次型数据库,可见其生命力。而业界第一个层次型数据库管理系统,是IBM在1968年研发成功的IMS V1。

    DB2 25周年的纪念会上,IBM软件集团数据管理市场部全球副总裁Inhi Cho Suh女士回顾了IMS的40年。

    1966年,IBM与其客户----北美洛克维尔公司和卡特彼勒公司----开始合作开发数据库,用于帮助美国NASA(美国国家航空航天局)管理“阿波罗太空计划”中的繁琐资料。1968年,IBM的工程师完成了IMS V1数据库的研发工作。并在1969年更名为“IMS”做产品发布。

    也许如今还有人在怀疑“阿波罗登月”的真实性,但企业业务在多样性复杂度和数量上的急速增长,让企业内的IT人员面临更多的挑战。在最近对全球知名企业的75个CIO做的调查中,75%的CIO认为未来的竞争力优势是如何更好地管理企业数据和信息。业务的增长和技术的发展,使得信息成爆炸式增长,对于这种情况,Inhi说,IBM立足在两个领域帮助客户管理数据,第一是利用IBM的核心服务器功能和技术,使得客户的数据信息管理可以更加快速、更加有效,保证企业的数据可以得到更有效的利用。第二个领域,立足于对信息生命周期进行管理,从信息的创建开始一直到信息使用、改变、监测、归档一直到被删除,是针对整个数据生命周期的管理。IBM给客户提供了不同的解决方案,从设计、创建、优化、功能、管理方面,在不同环境中可以进行完整的管理。

    在DB2 25周年,IMS 40周年之际,Inhi最后总结的一句话是:IBM的价值所在,就是为客户提供一个数据信息管理的工具,提供一个信息中心管理的解决方案。

附录1----DB2诞生的五大技术突破

1. IBM院士Don Chamberlin创建SQL。他与Ray Boyce(已故)在ARC www.almaden.ibm.com/cs/people/chamberlin/共同研究XML。

2. IBM退休院士Pat Selinger创建查询优化器。人们采用SQL描述问题,然后查询优化器得出通过非常好的性能回答这些问题的非常好的方式。

3. IBM研究出Aries的并发算法。Aries的并发算法可支持DB2同时处理数千名用户的操作和交易,且不会产生冲突。目前市场上所有数据库系统无一例外地都在使用这些算法。IBM院士兼印度地区首席科学家C. Mohan(www.almaden.ibm.com/u/mohan/)是负责这些算法的首席研究员。IBM退休院士Don Haderle也是合作研究的人员之一。

4. IBM推出能够为交易提供支持的关系型数据库。关系系统推出后,人们曾普遍认为该系统无法为交易提供支持,只适用于商务智能。但早在1988年DB2 V2.1推出时,Computerworld就公布该关系数据库具备交易性能。DB2 V2.1具备两大突破性能——(1) Aries算法; (2) DB2架构以及IBM退休院士Don Haderle对其实施情况的持续细致关注,这使DB2 V2.1用于支持交易成为了现实。

5. IBM开辟大型机新纪元。二十世纪九十年代,有关专家断言,因为大型机基于陈旧且耗资巨大的双极工艺,已毫无前景可言。但IBM团队已经推动大型机采用更现代化、更具竞争性的CMOS工艺,并且在二十世纪九十年代初期就已推出基于新工艺的大型机。新产品可将多个处理器整合到单一映像(SYSPLEX),支持客户在一台系统上实现数千台系统的性能。这就保留了大型机在应用方面的简约性,便于企业管理。C. Mohan和Inderpal Narang作为首席研究员,共同开发数据库算法支持这一耦合。此外,Don Haderle、Jeff Josten以及其他人员也积极参与其中。
 

附录2----IBM DB2数据库大事记

1970:IBM首次提出了关系模型的概念。这一年,IBM 公司的研究员 E.F.Codd 发表了业界第一篇关于关系数据库理论的论文“A Relational Model of Data for Large Shared Data Banks”,首次提出了关系模型的概念。这篇论文是计算机科学史上最重要的论文之一,也奠定了 Codd 博士“关系数据库之父”的地位。

1974:IBM提出更适合最终用户使用的 SEQUEL 语言,即SQL语言的前身。IBM 的研究员 Don Chamberlin 和 Ray Boyce 通过 System R 项目的实践,发表了论文“SEQUEL:A Structured English Query Language”。论文中提出的 SEQUEL 语言是一套比关系微积分与关系代数更适合最终用户使用的非程序化查询语言,我们现在所熟知的 SQL 语言就是基于它发展起来的。

1983:IBM发布DB2品牌。千呼万唤始出来,IBM 在这一年发布了DATABASE 2(DB2)for MVS(内部代号为“Eagle”),一个长盛不衰的品牌就此出现了。

1993:IBM发布针对Intel和Unix平台的DB2产品。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 平台上出现。

1995:IBM 发布DB2 Common Server V2。这是第一个能够在多个平台上运行的对象—关系型数据库产品,并能够对 Web 提供充分支持。DataJoiner for AIX 也诞生在这一年,该产品赋予了 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的前身)合作开发的。

2000:IBM 启动数据库管理工具业务。起初着重于为主机上的 IMS 和 DB2 提供高效管理工具,最终这项业务扩展到 UNIX、Linux 和 Windows 平台。Informix 数据库产品也在支持之列。

2001:IBM 以10亿美金收购Informix数据库业务。这次收购扩大了 IBM 的分布式数据库业务。

2003:IBM 将数据管理产品统一更名为信息管理产品。

2004:IBM推出DB2信息集成器测试版(Masala)。可以对任何资料库中的信息和多媒体进行定位,包括电子邮件、字处理文件和非IBM数据库。

2005:IBM发布了“绿色风暴”计划。向业界宣布IBM DB2商业数据库正式推出应用开发商网络计划和数据库精英人才培养计划。

2006:发布基于XML的DB2 9。这是一款具有划时代意义的数据库产品,IBM DB2 9作为基于XML的下一代数据库,DB2 9开创了数据库技术的新纪元。

2006:IBM发布关系型数据库服务器Informix Dynamic Server (IDS)。代号“猎豹”(Cheetah),IDS可谓是业界第一款非大型机级数据服务器。

2006:IBM以约16亿美元的现金收购了企业内容管理厂商FileNet公司。增强IBM在企业内容管理(ECM)方面的力量。

2006:IBM全球发布“信息随需应变(Information On Demand,IOD)”策路。IOD成为企业应用信息的全新理念。

2007:IBM收购全球领先商业智能(BI)公司Cognos,BI成为IBM信息随需应变战略中的重要角色。

2008:IBM发布新版数据服务器“猎豹2”。IBM发布Informix Dynamic Server 11.5(IDS 11.5)代号“猎豹2”(Cheetah),带来更高在线事务处理(OLTP)能力。

2008:IBM发布以“InfoSphere”命名的新产品线。推出包括IBM InfoSphere Warehouse, IBM InfoSphere MDM Server等产品,成为企业信息整合的利器。

2008:IBM推出首款主数据管理软件IBM InfoSphere MDM Server。

2008:IBM推出DB2 9.5“Viper 2”数据服务器。Viper 2使事务XML数据性能提升200%。
 

0
相关文章