论文部分内容阅读
随着Internet技术的发展,越来越多的应用采用XML作为信息表示和数据交换的标准,这使得通过数据库技术对XML数据进行存储、查询等操作变得日益重要,同时也为数据库研究者提出了新的挑战。
XML数据库查询不仅查找数据,还查找数据之间的结构关系。因此对于一个具有分支关系的路径查询表达式,查询的结果不仅是得到数据元素,而且要使节点元素之间满足结构关系,包括祖先后代以及父子关系,同时对于Twig查询还包括分支节点判断。为了处理Twig查询,很多算法被提出来,而最近对Twig查询主要是Holistic算法,即把一个Twig查询作为一个整体考虑,而不是把其拆分为多个路径表达式。
本文针对现有Holistic结构连接算法忽略文档结构特征的缺点,对于以数据为中心的XML文档的特点进行了分析并分类。我们提出了针对嵌套文档的扩展区域编码策略和针对横向XML文档的压缩叶子流策略。根据不同的策略,我们提出了针对嵌套文档的Nest Stack算法和针对横向文档的CPJoin算法,这两种算法针对文档结构特征更好的实现了XML Twig查询。同时为了有效地减少了中间结构的存储,我们改进了传统的两阶段策略,使得在手机、PDA之类的移动设备上也可以处理Twig查询。最后,通过真实数据与合成数据上的实验结果来证明基于压缩叶子流上的CPJoin算法和基于扩展区域编码的Nest Stack算法提高了Twig查询的性能。