XPath查询缓存可回答性的实验评估
在处理XPath查询时,不同的评估策略会对性能产生显著影响。为了比较高级的XPath评估策略,进行了一系列实验,旨在为开发优化的XPath评估器提供参考。
实验设置
- 实现语言与工具 :使用C语言实现了TopXPath(TXP)、BottomXPath(BXP)和CacheBottomXPath(CBXP),借助Expat XML文档解析器(http://expat.sourceforge.net )。采用了Christoph Koch网站(http://www.infosys.uni-sb.de/koch/projects/arb )提供的Arb实现。
- 运行环境 :所有程序在主内存中运行,使用XCheck作为XML查询引擎的基准测试平台,运行在Intel(R) Xeon(TM) CPU 3.40GHz、2GB RAM、Debian Gnu/Linux 2.6.16系统上。
- 测量指标 :主要测量查询处理时间,即纯查询执行所花费的时间。
实验分为对合成数据和模拟真实数据的测试,下面分别介绍。
合成数据实验
合成数据具有灵活性,可用于统一测试引擎的特定功能。实验中改变了数据大小、数据形状、查询长度和查询类型等参数。
数据与查询生成
- 数据集 :使用MemBeR数据生成器生成,可控制XML文档的树大小、树高度和最大节点扇出等参数