论文部分内容阅读
基于关系数据库的分布式数据集成系统使用分布在网络中不同位置的关系数据库数据源提供对用户查询请求的支持。系统的吞吐率是衡量系统处理能力的有效性能指标。本文研究问题为:
在具有大量聚集操作的复杂查询应用负载下,如何通过数据缓存技术提高基于关系数据库的分布式数据集成系统的吞吐率。
本文分析比较了目前数据库领域内各种数据共享和数据缓存相关技术。和多查询优化技术、请求窗口技术和表扫描共享技术相比,数据缓存技术对查询请求的到达时间没有要求,可以为更多的查询请求提供对数据和计算的共享机会。物理缓存技术要求数据提供者和数据使用者之间的紧密耦合,要求数据的物理分布对数据使用者可见,不适用于远程数据源高度自治的分布式数据集成环境;视图缓存和语义缓存技术克服了物理缓存的缺点,其思想可以应用到分布式数据集成系统中,但是视图缓存不足以反映查询请求的动态变化特征,目前语义缓存只是对基础数据表的缓存,没有支持对聚集操作等复杂运算结果的缓存。
本文给出了一个应用分布式数据集成系统中基于视图缓存和语义缓存思想的数据缓存机制,对远程基础数据表和聚集操作中间计算结果进行了缓存,使用多级锁控制机制支持并发查询对缓存数据的访问,使用缓存快照方法提高了并发查询处理效率,从而为查询请求提供了对数据和计算的共享机会,减轻了远程数据源的负载,提高了系统查询处理效率。基于TPC—H100M数据量的实验结果表明,对基础数据表的缓存策略使得系统查询处理效率提高50%左右,对聚集操作中间计算结果的缓存策略使得系统查询效率提高近10倍;在一定并发度和查询选择率情况下,缓存机制对系统性能同样有显著的提高。