技术开发 频道

PureXML能成为IBM Viper的“杀手锏”吗?

【IT168 技术评论】数据库巨头IBM公司于2006年7月14日在京与全球同步发布了第9代最新数据库。这个开发代码为“Viper”的产品,被视为IBM欲一统全球数据库市场的信号。

   美国工程院院士、IBM中国软件开发中心总经理郑妙勤说,目前关系型数据库是市场主流,但面对越来越复杂的层次型数据管理需求,它越来越难适应,而DB29则将两种数据库特性融合一起,是业界第一个同时支持两种数据管理的混合数据库。郑妙勤所说的这个第一,真的能成为IBM Viper的杀手锏吗?通过以下分析,也许我们会得出一些结论。

   IBM为何要加强Viper的XML功能?

   在数据库的发展史上,IBM一直扮演着举足轻重的角色。在上世纪中叶,即计算机发明后的十年中,数据存储还停留在顺序存储的阶段。直到1956年,IBM生产出第一个磁盘驱动器(Model 305 RAMAC)之后,数据存储才进入随机存储时代。但是那时的随机存储只是直接和硬件打交道,或者是直接使用编程语言来操作数据,并没有一套用于管理数据的DBMS。但是随机存储器的诞生为日后的DBMS的诞生铺平的道路。

    世界上第一个DBMS是通用电气公司的发明的IDS,它是一个网状数据库,由于它只能使用在通用电气的主机上,并且只能通过编程来建立表。因此,它并未得到广泛的应用。

    但随着要处理的数据越来越多,数据量越来越大,因此,这就需要更强大、更容易使用的DBMS。因此,IBM在1966年与另外一家公司合作开发出了世界上第一个被广泛使用的层次型数据库----IMS。IMS的诞生标志着数据库管理系统进入了第一个成熟期。虽然IMS可以很好地解决数据集中存放和共享问题,但同时又会带来另外一些问题。由于层次型数据库是以树型结构存储的,这就使其在数据抽象和独立性上有所欠缺。

    基于上述原因,IBM研究员E.F.Codd于1970年首次提出了关系数据库模型,并发表了一篇论文。这篇论文也被认为是数据库历史上的一个里程碑。但由于IBM的固执和保守,以及当时层次型数据库正在鼎盛时期,因此,IBM并为采纳E.F.Codd的建议并着手研制自己的关系型数据库。事隔几年之后,新成立的Oracle公司推出了自己的关系型数据库管理系统Oracle,一跃成为关系型数据库的老大。而IBM也痛失了一次千载难逢的机会(当然,这并不是IBM最后一次失去机会,以后的PC机之战以及Windows和OS/2之争也使IBM受到了重创,要不是半个多实纪的资本沉淀以及多元化的业务,恐怕IBM这个名子已经消失很久了,就象当年的王安公司一样)。

    幸好IBM后来认识到了这一点,在1983年正式推出它的第一个关系型数据库产品----DB2。转眼20多年去了,关系数据库市场已经非常成熟了。从最初的几十种关系数据库产品已经逐渐变成以Oracle、DB2以及后起之秀SQL Server为主的三分天下的局面。

   随着21世纪的到来,网络被越来越多地应用到日常工作中,人们在日常交流中需要通过网络进行大量的信息交换。但遗憾的是,关系模型无法很好地描述在信息交换中产生的大量的非结构化和半结构化的数据。

    于是人们就需要一种能很好地描述这些信息的模型,从而更好地满足信息交换的需要。其中XML的诞生成为了人们关注的焦点。可XML存储格式是采用树型的层次存储格式,这种格式并不容易使用关系模型去处理。因此,也有人提出设计一种完全基于XML格式的数据库。对此,有很多专家持反对意见。因为,关系型数据库已经使用了几十年了,而且关系模型在处理数据上有着得天独厚的优势,并且几十年前从层次型数据库转为关系统型数据库就是因为层次型数据库在数据独立性和抽象性上的不足。如果再完全使用层次型数据库(XML),这不是进入死循环了吗?

    因此,又有很多人提出要使关系模型和层次模型共存。其实Oracle、IBM和SQL Server很早就在一定程度上支持了关系数据库和XML共存。但它们都是将XML保存在Blob类型字段中,或是将XML以关系模型保存在数据库中。如果这样话,就失去了层次模型的优势。

    也许是因为IBM对层次模型的情有独中,或是为了一血前耻,当然,更可能的是为了重新拿回本该早就属于IBM的关系型数据库老大的位置。IBM花了5年的时间,终于解决了关系模型和层次模型共存,并且使其保持各自优势的难题,这就是PureXML技术。并将这项技术加到ibm新推出的DB2 9中。

0
相关文章