原生XML数据库系统和Tamino
在发展XML数据库上,存在着两种完全不同的方法。第一种方法是在不变动关系型数据库内核层的基础上,将XML的树型结构数据拆散、重组转换成关系型表格数据存入数据库。在提取XML数据时,利用SQL语言的优化将库内的表格型数据取出并还原成XML结构型数据。文献④详细讨论了有关表格型数据与XML数据的转换及优化的问题。第二种方法,也是被业界普遍认为是代表发展方向的方法,就是发展“原生XML数据库系统(Native XML Database)”。这一概念由德国软件股份公司(Software AG)首次提出并实施于其新型数据库Tamino之中。在这一数据库系统中,从数据库核心层直至其查询语言都采用与XML直接配套的技术。我们在这里介绍Tamino主要设计思想及技术。
德国软件股份公司(Software AG)是欧洲第二大具有大型独立品牌软件产品的公司,具有三十多年以生产数据库系统产品为主的历史,她的传统产品ADABAS是一大型数据库管理系统,被用于西班牙国防部、美国的一些地区政府等安全要求严,敏感性高、客用量大、系统稳定性要求高的业务。在XML标准尚在讨论而未正式发表之时,Software AG即从战略发展的高度制定出发展支持XML数据的数据库系统,并率先在世界上第一次提出“原生XML数据库系统(Native XML Database)”的概念,并于99年10月推出新型数据库系统Tamino。
在这短短的几年中,Tamino已发展到第三个版本。相对于传统的关系型数据库管理系统来说,这是一种结构完全不同、设计思想新颖的全新的数据库系统。概括来说:
●“原生XML数据库系统”无需转换
如果用关系型数据库来处理XML数据,将需要一系列复杂的转换工作,从而极大地影响应用的速度。更有甚者,当转换选择不合理时,很有可能对应用造成致命的伤害。而原状XML数据库系统则不同,XML数据不经任何转换而按原结构形状直接存入数据库内,因而对XML的应用来说是最优的。
●快速的XML信息服务器(XML Information Server)
原状XML数据库系统对于XML应用其速度相对于其他数据库来说要快得多。对于相同的XML数据,Tamino的处理速度比其他数据库快数十倍乃至上百倍。
●Tamino可处理XML数据也可处理关系型数据
Tamino带有两个不同的数据处理器。一是所谓的“X-机器(X-Machine),专门用来处理XML数据的检测、存储及提取。其次是SQL引擎,用来处理关系型数据。这两部分处理器各自带有自己的编程接口。
●Tamino直接支持http传输协议
通常的数据库系统只是简单的client/server结构。如果要投入到Internet的应用中,则需要另外在Webserver与数据库之间写一层接口程序,以保证Internet的应用中数据交换的实现,而这一部分的编程工作量相当大且复杂。Tamino的X-Machine直接支持http传输协议,只要输入相应的URL,就可以直接取得或处理XML数据。
●Tamino的XML查询语言—Xquery
众所周知,查询语言是数据库系统的一个重要部分。由于XML数据与关系型数据的结构完全不同,设计思想也不一样,因此要真正应用XML数据库, 就要放弃SQL而采用新型的查询语言。W3C组织发布了一系列有关XML查询语言的建议标准,并对外公布(见http: www.w3c.org/xml)。Tamino采用的是XQuery语言。该语言是基于http的请求基础上的,也就是说当在浏览器上敲入或在应用程序 内输入一条含有XQuery内容的URL,用户将得到相应的带有XML结构的数据。
●面向市场需求的X-Node技术。
X-Node是一种设计思想非常新颖的技术。Tamino的宗旨并不是取代现有的数据库系统,而是能集合已有数据库系统共同来完成Internet的XML应用。具体地说,如果某XML文件,其单元数据分别来自不同的数据库系统。这时可将Tamino放置前端,利用X-Node技术将Tamino与其它数据库系统(包括关系型数据库)相联。具体应用时,Tamino分别从不同的数据库内提取数据并连同自己库内的数据形成一个XML数据对象送入Internet世界中去。
XML技术及XML数据库系统是非常新的、大有发展前途的技术。中国IT行业要尽快进入发展的前列,应尽快加紧XML和XML数据库系统及其应用的研究和开发。
网友评论