基于树模式查询的XQuery递归查询优化技术的研究
作者单位:北京工业大学
学位级别:硕士
导师姓名:高红雨
授予年度:2013年
学科分类:08[工学] 0835[工学-软件工程] 081202[工学-计算机软件与理论] 0812[工学-计算机科学与技术(可授工学、理学学位)]
摘 要:XML作为半结构化数据描述语言在互联网上被广泛地用于数据交换和数据共享。W3C为满足对XML数据的查询和处理需求,针对XML的数据特点提出了一种函数式语言XQuery,并将其作为XML数据查询语言的标准。鉴于XML数据应用越来越广泛且数据量逐步增大,如何高效实现XQuery语言已经成为研究热点之一。 XML文档的树形结构中经常会存在以递归形式描述的数据。XQuery允许用户编写自定义递归函数对这些递归数据进行查询和处理。在实现XQuery查询引擎时,可以对查询中存在的递归函数进行优化处理。同时,作为典型的XML数据查询,树模式查询技术已经成为高性能的实现XQuery查询的核心技术之一。高效的树模式匹配算法能够迅速匹配出XML文档中满足查询条件的数据。如果能将描述能力较强的递归函数与树模式查询相结合,就可能高效地处理XQuery递归查询。 本文分析了XQuery递归函数的处理过程,鉴于每次递归调用所查询的数据具有相同的结构特征,因此如果能提取出整个递归过程所对应的树模式,就有可能利用该树模式的模式匹配得到各层递归调用需要的所有查询结果。 根据上述原理,本文提出了递归树模式查询的定义以及相应的整体匹配算法,对递归查询的处理过程进行优化。针对整个递归函数调用的执行效率,对优化前后的统计数据进行了对比。实验结果表明,使用树模式查询对递归函数处理过程进行优化有效地提高了对XML文档的递归查询的性能。