混合管理大势所趋
目前包括IBM、甲骨文、微软在内的老牌数据库厂商都在走从传统关系数据库中支持XML的路线,并且在其成熟的关系数据库产品中提供了对XML的支持。但此前这些数据库产品对XML支持都不是内置的XML支持,而是通过提供两种基本的数据库设计选项 —— 将每个 XML 文档完整地存储为一个大型对象,或者将它拆散,分散存储在多个表的多个列中,在许多情况下,这些选项可能会导致性能问题、管理困难、查询的复杂性增加以及其他一些问题 。
中国人民银行软件开发中心系统架构师朱杰就指出:“之前许多关系型数据库厂商都宣称自己的产品可以支持XML,但它们对XML的存储无外乎两种形式,一是将XML文档以文件的方式存储在文件库中(即CLOB形式);二是将XML数据转换成关系型表格存储在关系型数据库中。无论采用哪种方式,在重新获取XML数据的时候,都要经过繁琐的转换工作,给企业带来很多问题。对用户而言,数据库的功能绝不仅是存储数据,更重要的是能够很好地管理和方便地使用这些数据。”
IBM DB2 9则提供了与以前版本非常不同的体系结构,它通过提供新的查询语言、新的存储技术、新的索引技术和支持XML 数据及其固有层次结构的特性,使得IBM DB2 9成为 IBM 的第一个“混合型”(即多结构)数据库管理系统。这种混合数据库结构,可以帮助用户进行过渡,使用户可以在一个系统中同时管理传统数据库和XML数据,也为用户转向XML提供了一个缓冲。
“DB2 9包含68项专利,它是由分布在全球8个国家的750名开发人员历时5年开发的。”IBM 院士、IBM中国开发中心总经理郑妙勤女士对DB2 9的特性如数家珍。她指出,IBM DB2 9提供了与以前版本非常不同的体系结构,它通过提供新的查询语言、新的存储技术、新的索引技术和支持XML数据及其固有层次结构的特性,使得IBM DB2 9成为IBM的第一个“混合型”(即多结构)数据库管理系统。除了支持表数据模型之外,DB2 还支持XML文档和消息中固有的层次化数据模型。用户可以在一个表中自由地混合存储传统SQL数据和最新的XML数据,还可以使用SQL和XQuery来查询和处理这两种形式的数据。
另外,IBM DB2 9采用了“基于标签的访问控制”(LBAC,Label Based Access Control)模式,这样确保每一条记录都有特定的授权,使得数据的安全性能更高。此外,DB2 9的自主管理特性进一步加强,许多功能,比如页面刷新与磁盘预读进程管理、存储管理、数据库恢复和重定向脚本生成等管理工作,可无须在人工干预的情况下完成,这样将DBA(Database Administer)从烦琐的工作中解放出来去做一些深层次的管理、开发工作;而表分区模式的采用,使企业能在更少的约束下获取更大的数据容量。