论文部分内容阅读
XML(eXtensibleMarkupLanguage)具有强大的数据表达能力以及简单、开放、可扩展等优点,因而逐渐成为互联网上信息发布和数据交换的事实标准。XML研究中的一个关键问题就是如何对XML数据进行有效地查询。XML查询通常是基于路径表达式进行的,在以往的研究中,对XML文档中的路径建立结构索引是一种加速XML查询的常用方法。
随着XML应用需求的不断增长,需要处理的查询也越来越复杂,也带来了更多的问题。例如:如何处理带分支路径的查询,如何处理SCQ(StructureandContentQuery)查询以及如何根据查询负载动态调整索引结构等。本文针对上述问题进行了分析并提出相应的解决方案,主要贡献如下:
1)提出了一种新型的XML结构索引:D(k,l).索引。该索引充分利用了XML数据节点在向上和向下路径上的局部相似性,能有效地处理路径表达式的查询,特别是分支路径表达式的查询。并提出了一种有效的调整算法,从而保证D(k,l).索引可根据查询情况动态地调整其索引结构。
2)研究了在批量文档上进行SCQ查询。通过为批量文档构建了SI(SummaryIndex)结构索引,并结合结构索引技术和结构连接技术,有效地解决了结构索引在支持子孙后代关系处理上的不足,提高了查询性能。
3)在利用查询中的结构信息过滤文档时,为了快速获得满足条件的文档ID号,有效地利用了B+树结构对范围查询的支持。在处理SCQ查询时,为了加快对文本信息的处理,文中使用了BloomFilter技术来快速判定文本的包含关系。
实验证明,本文的方法在支持带分支的路径查询,索引的动态调整及SCQ查询等方面提供了新的解决方法,这些方法是有效的。