论文部分内容阅读
随着XML已成为互联网上数据存储和信息交换领域事实上的标准,人们已经开始习惯使用XML文档来存储、管理Internet上的海量信息资源,因而Web也正逐步转化为一个庞大的XML文档数据库。如何对XML文档进行有效的存储、查询,已经成为当前XML数据库领域研究的热点。为了有效支持XML查询,特别是结构查询,提出了许多针对XML文档的编码方案。但是实际应用中由于XML文档的频繁数据更新,多数方案都需要花费很大代价重新编码,严重影响了XML查询的效率。在对现有XML文档编码方案进行透彻剖析的基础上,我们设计了一种支持XML数据更新的前缀编码方案IDSU ( Improved Dewey-labeling Scheme for Update-supporting)。通过扩展Dewey编码,它将XML文档树中的每一个节点赋予一个二元组<IDSU_id, depth>,其中IDSU_id表示节点的编码,其初始形式与Dewey编码相同;Depth表示节点在文档树中所处的层数,用来加速结构连接操作。该编码方案不仅高效地支持结构查询,能够快速准确的判断XML文档结构树中任意两个节点之间的父子、祖先/子孙以及兄弟关系,并且针对XML文档树频繁更新后重新编码的情况,设计了一种“编码相加”的更新规则,避免了更新操作带来的编码调整问题,可以更有效地支持XML文档数据更新。为验证IDSU编码方案的有效性,我们做了一些对比性实验。将IDSU编码方案和其他编码方案,在编码的时间、空间、查询、更新性能方面进行了全面、细致的比较分析。实验结果表明,IDSU编码在应对XML数据更新方面具备良好的优势,能有效的支持数据更新,完全避免重新编码,另外在结构查询方面,也有上佳的表现。本文的IDSU编码方案是在解决XML编码方案应对数据更新问题的有效尝试,对今后进一步的研究和实际应用都具有重要的参照意义。