DB2 9 XML性能优势
2008-09-03 16:26:53 来源:WEB开发网前言
在关系数据库中存储 XML 数据会提供可靠性、可管理性以及 RDBMS 的其他优点。但是,如果采用笨拙的存储方法(比如分解和 CLOB),应用程序的性能就会出现问题。当IBM在DB2 9中引入pureXML之后两年,这个问题已经解决了。
当IBM在2006年推出DB2 9时,它的pureXML技术引起了广泛的关注。但是,人们并没有马上接受 “关系/XML” 混合型DBMS的思想。这种思想的好处很明显:通过把 XML 引擎和现成的 RDBMS 集成在一起,XML 数据可以轻松地合并到数据操作中,还可以对 XML 数据应用关系系统的许多数据管理特性,比如安全性和存档。但是,这种做法的性能怎么样呢?考虑到对象-关系数据库过去的性能,人们对混合型系统的性能抱着怀疑态度。
两年之后,pureXML 的性能影响不仅停留在理论上,而且已经在真实环境中表现出来了。
希望通过 XML 获得什么?
在开发 pureXML 和 DB2 9 的 5 年中,IBM 深入研究了 XML 的性质(XML 具有强大的灵活性,同时也非常繁琐),发现了需要改进的五个方面。IBM 主要关注两个性能因素:存储模型和查询优化。
XML 数据由一个层次化的树结构表示,通常包含多个层和大量节点,因此这种格式很难优化和编制索引。它还涉及某种形式的压缩。因此,XML 查询可能变得非常复杂。
存储 XML 数据的一种常用方法是字符大对象(CLOB)。与二进制大对象(BLOB)一样,CLOB 通常作为一个整体存储,很少为编制索引或查询优化进行预处理。另一种方法是把 XML 数据 “分解” 为关系数据的列;这种方法需要复杂的解析技术,通常使用大量存储空间。
DB2 pureXML 把 XML 数据存储为经过预先解析的层次化格式,这种格式反映数据的底层嵌套结构。这种格式支持编制复杂的索引,并允许对物理存储中的数据进行压缩。在执行查询时,pureXML 把 XQuery 和 SQL/XML 查询转换为一种在多方面(跨语言、查询重写、优化索引和成本)经过优化的统一格式。XML 压缩、查询优化以及关系和 XML 处理的混合(在 DB2 9.5 中还改进了插入和更新性能)改进了数据库的处理性能;IBM 的测试和真实项目表明,与 DB2 V8 或其他 DBMS 中的相似操作相比,速度提高了 10 到 20 倍(参见相关内容中 “成功带来的喜悦”部分)。
- ››xml文件正确性验证类实现
- ››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 数据模型
- ››DB2 pureScale 实战
- ››DB2 存储过程中如何使用 Optimization Profile
- ››DB2 pureScale 新特性 -- Member Restart
- ››XML数据读取方式性能比较(一)
- ››XML数据读取方式性能比较(二)
赞助商链接