简介
DB2 9 中的 pureXML 支持为管理 XML 数据提供了有效的、多方面的功能。对于很多 XML 应用程序而言,性能是高度优先考虑的一个方面。DBA 和应用程序设计人员都可以通过他们份内的工作来确保良好的性能。首先,我们有关于 DB2 各个方面的所有传统的性能指南,包括 CPU/内存/磁盘配置的平衡、表空间和缓冲池的调优、锁、日志记录、查询执行计划等。所有这些话题在之前的 DB2 文章里都曾论述过(见 参考资料),并在管理 DB2 中的 XML 数据时仍然适用。
DB2 9 是同时支持关系型数据与 XML 数据的新一代数据服务器。请到 DB2 9 技术资源中心 获取更多的关于 DB2 9 的技术文章、教程、下载以及多媒体信息。
幸运的是,这些问题当中有很多问题是由 DB2 的自治存储和自调优内存管理等自治功能来处理的。它们为很多应用程序提供了高水平的性能,要求的手动干预很少。但是,具有更高性能需求的 XML 应用程序还可以从其他性能方面的考虑当中受益。本文集中讨论这方面的情形,同时给出为 DB2 9 中与 XML 相关的应用程序取得最佳性能的提示和指南。
本文将讨论和阐述 15 个 XML 性能提示(排序不分先后)。这 15 个提示涵盖了很多领域,但是经验表明,存在性能问题的应用程序通常只需要应用其中一两个提示就能达到所需的性能。
提示 1: 理智选择 XML 文档的粒度。
提示 2: 为了取得更好的 XML 性能,使用 DMS 和更大的页。
提示 3: 必要时,如何将 XML 数据放入一个单独的表空间中。
提示 4: 如何配置 DB2,以便快速地成块插入 XML 数据。
提示 5: 使用新的快照监视器元素检查 XML 性能。
提示 6: 了解 XML 模式验证的开销。
提示 7: 在 XPath 表达式中,尽可能使用全限定路径。
提示 8: 定义倾斜的 XML 索引,并避免为任何东西都建索引。
提示 9: 将文档过滤谓词放入 XMLEXISTS 中,而不是放入 XMLQUERY 中。
提示 10: 使用方括号 [ ] 来避免 XMLEXISTS 中的 Boolean 谓词。
提示 11: 使用 RUNSTATS 收集 XML 数据和索引的统计信息。
提示 12: 如何使用 SQL/XML 发布视图将关系数据暴露为 XML。
提示 13: 如何使用 XMLTABLE 视图以关系格式暴露 XML 数据。
提示 14: 对于短小的查询或 OLTP 应用程序,使用带参数占位符的 SQL/XML 语句。
提示 15: 避免 XML 插入和检索期间出现代码页转换。
在对这些性能提示的讨论中,我们假设您熟悉基本的 DB2 管理和性能实践,并熟悉基本的 DB2s pureXML 支持。例如,您应该知道 XML 列、XML 索引,以及如何用 SQL/XML 和 XQuery 查询 XML 数据。
收起