论文部分内容阅读
近年来,随着数据库和网络技术的发展,XML已经成为Internet上数据表示和交换的标准。随着XML技术的不断普及,Internet上以XML技术作为载体的数据越来越多,从而对这些XML数据的有效管理和查询也越来越受到国内外研究者的关注。
目前,对于XML文档的查询,提出的算法主要是基于如下两种思想:1.路径分解思想,这种方法将产生大量的不可避免的无用的中间结果。2.新近提出的整体小枝(holistic twig)模式查询匹配方法,它把用树结构建模的查询表达式—twig模式(twig pattern)作为一个整体来处理。这种方法往往与一些特殊的编码和索引技术相结合,避免了大量不必要数据节点的扫描,使得算法的I/O代价、CPU时间复杂度和空间复杂度大大降低,从而提高了查询效率。自从Bruno N等人于2002年提出holistic twig概念以来,研究者们已经提出了一系列twig模式查询匹配算法。其中TJFast算法基于Extended Dewey编码,只要访问twig模式中的叶子节点的输入集合流就可以有效地处理XML文档查询,是一种效率较好的holistic twig模式查询匹配算法。但是Extended Dewey编码不支持XML文档的动态更新操作,且TJFast算法设计思想上的缺陷也使得算法执行效率上可以进一步提高。
本文在总结和分析了主流的XML文档编码方案的基础上改进了Extended Dewey编码,使其能有效支持XML文档的动态更新操作。提出了一种新的基于新Extended Dewey编码的twig模式查询匹配算法—TwigMatch算法,进一步提高了twig模式查询匹配算法的效率。该方法分三个步骤来处理一个twig查询模式,大大减少了查询路径匹配操作,提高了查询效率。同时本文还重组了传统的两阶段算法,恰当地选择中间结果的归并时机,获得了较好的内存利用率。
多组实验数据对比表明:本文的方法在效率上有较大的提高。