专访IBM DB2专家:XML引发数据库二次革命?
2007-11-04 21:40:30 来源:WEB开发网数据库技术教育
熊建国(主持人):我们目前中国使用数据库的教材,据我了解没有xml(标准化越来越近了)的技术,您觉得是否有必要,以后在新的教材有必要把xml(标准化越来越近了)数据库加进去,甚至把XQuery语言加进去,有没有这个必要?现有教材有哪些需要补充的?
周傲英:其实我们的教材更新不够快,如果从教材内容来看,去年年底的时候就接到过邀请,刘晶炜跟我们讨论写DB2的书,xml(标准化越来越近了)的书的时候我们接受到高教社的邀请写一本新的数据库教材,当时我们很感兴趣也答应了,因为数据库有DB2和xml(标准化越来越近了)在前面,写一本书相当难,特别写教材,但是我们想把IBM这两本书写好,我们会积累一些经验,因为IBM的书相对是技术成份多一些,但是从教学角度来说,可以考虑的少一些,这部分写完了我们可以积累一些经验。所以数据库教材这本书我们还在策划当中,我们希望早一点把DB2书交稿了,我们可以马上写教材。
从内容来看,从我理解来说,我可以分成两大阶段的变化,第一阶段的变化是80年代中后期,当时很大的变化,包括从王姗老师的书,最早的版本很多在讲导航,讲指针,讲逻辑儿子,逻辑父亲那都是指针,物理指针只有一个,其他就要靠逻辑指针做,那就是网状数据库和层次数据库,因为那跟语言有关,跟操纵语言有关,那个语言非常复杂,有很多指针和新的概念在里面,而那些概念没有一个逻辑性,完全是为了做到这一点,必须要做,没有任何理由,你必须要去用,然后变得熟练,所以当时是那样的特点。
差不多到了20世纪90年代,那本书包括王老师的书和其他老师的书就变化了,那部分变成介绍历史的时候才会提,这是一个大的变化,这变化持续到现在,为什么那么多老师和学生包括出版社觉得要有新的教材,因为数据库演化到今天中间有很多新的故事,当时大家没有迫切的要求必须放在数据库教材里面,用来取代关系,或并驾齐驱,当时只是让大家做一个了解性的认识。
现在已经到了一个阶段,我们必须把xml(标准化越来越近了)放进去,并且和关系型数据库并驾齐驱的介绍,因为xml(标准化越来越近了)所解决的问题是原来努力想解决的问题,其实关系数据库一成熟,大家就考虑关系数据库建模不够灵活,把所有东西变成关系表会有很多问题,丢失语义,并且不自然。包括语义的模型,图的模型面向对象的模型都没解决这个问题。xml(标准化越来越近了)从建模角度来说,跟关系模型是互补的,有它的灵活性,但是关系模型在很多方面有它的优势,它有很好的可扩展性,高可用性, xml(标准化越来越近了)可以弥补它的不灵活,如果有一种技术支持把这两种东西放在一起,DB2 9做到这一点,以前的系统,DB2 9以前的系统,所谓可扩展的实现,甲骨文里面的xml(标准化越来越近了)的一些支持,都是把它当成一个大对象,或者当成一个特殊的,或者是硬打碎放里面的,这些不自然。我们开始做研究也是这么做的,现在这种情况下,有过德国的系统,当时吸引了大家很多的注意力,大家觉得看到曙光了。
DB2 9给出一个很好的解决办法,让它与关系型数据共存,以前把xml(标准化越来越近了)放在一个数据库里面,用数据库的话来说是二等公民,不是一等公民,它是特殊的,我们或者叫ADT(抽象数据类型)来解决,它要有相关额外的措施来解决,没有得到一等公民的待遇。现在这种情况都是一等的,在这种情况下是共存的,SQL要想办法支持XQuery的功能,XQuery有自己独立的语言,希望可以跟SQL有密切的结合,他们可以互操作,两种数据类型,结构化的和半结构化的可以互操作。这样我们对整个数据库建模的时候,就不是一种模式来建,可以有两种办法来建模,这时候问题变得相对简单,建模问题解决,系统可以支持这两种模型,整个现实当中的问题解决就会比较容易。刚才说到DB2 9是好的开始,但绝对不是故事的结束,会有很多新的问题发生。传统的数据库解决那么多问题,如果把xml(标准化越来越近了)变成一等公民加进去会带来很多问题,一个是设计的问题,原来的设计,要做成范式,现在的选择,你可以把它做成范式也可以变成xml(标准化越来越近了),现在到底怎么选择,以前有设计的工具、规则、原理,这些规则就会发生变化,因为你可以选择,有选择就会灵活。
另外一个问题就是事务模型,以前事务模型考虑到DBMS应用的场合,原来要增加、删除、更新,打电话记录要记下去,银行取钱账户要减掉,这是很自然的,在商业系统里面,商业数据库有这样的要求。xml(标准化越来越近了)是树的结构,是自描述的结构,它的删除、增加、修改是什么样的,有没有那么频繁,原来在做事务处理的时候,可以加锁,可以加一个表,一个页或一行,现在加锁怎么加?你锁的机制,或事务处理的机制,有没有办法直接搬过来用,事务处理这一块,最重要的是,我们所说对xml(标准化越来越近了)的操纵是什么,要做什么操纵,有没有删除,有没有增加,有没有更改等,根据使用情况,使用场合才能决定做什么事务模型,我是不是关系事务模型有了就行,这是一个问题,我们没有解决,我相信DB2 9里面会解决这个问题。
另外一种是优化,优化是永恒的话题,因为优化涉及索引,还有各种各样的机制,就像原来学对象数据库一样,对象数据库很大的优化就是沿着路径优化。我在xml(标准化越来越近了)里面,就是有路径表达式,这就代替了原来在关系数据库里面的交易,这是一个代价最大的问题,你怎么解决它,为了解决这个问题需要一个什么索引,这些东西都解决了,才有可能真正把xml(标准化越来越近了)和关系数据库放在一起,所以面临着很多,我相信在IBM的研究部门,IBM的产品部门,可能都会考虑这些问题。从研究的角度来说,xml(标准化越来越近了)的研究最热的时候已经过去了,它完全是站在研究的角度来说,从实现的角度来说可能会引发新一轮xml(标准化越来越近了)原生态数据库技术的研发。
- ››db2 对float类型取char后显示科学计数法
- ››DB2中出现SQL1032N错误现象时的解决办法
- ››DB2 锁升级示例
- ››db2诊断系列之---定位锁等待问题
- ››db2 命令选项解释
- ››专访站长何涛 分享新手站长学习SEO的经验
- ››DB2 最佳实践: 使用 DB2 pureXML 管理 XML 数据的...
- ››DB2 9.5 SQL Procedure Developer 认证考试 735 准...
- ››DB2 9.5 SQL Procedure Developer 认证考试 735 准...
- ››DB2 9.5 SQL Procedure Developer 认证考试 735 准...
- ››DB2 基础: 表空间和缓冲池
- ››DB2 XML 编程,第 1 部分: 理解 XML 数据模型
更多精彩
赞助商链接