论文部分内容阅读
缓存技术是一项很好解决移动计算下数据访问性能的技术,通过对数据进行缓存,可以降低移动设备访问网络的延迟以及带宽消耗。传统的客户端缓存主要包括页面缓存、元组缓存,两者的缓存技术都采用基于数据导航的访问模式,而对于关联访问的支持是很有限的,为了解决基于关系型数据库的缓存,提出了语义缓存的思想。语义缓存将查询结果和相关语义信息进行缓存,利用语义为将来的查询提供解答。本文在详细分析语义缓存的研究成果以及存在问题的基础上,以移动位置服务为应用背景,将语义缓存机制应用到实际软件开发中。并且围绕着语义缓存的查询优化和语义缓存的合并策略这两个语义缓存的关键问题展开了研究。在语义缓存的组织方面,本文首先形式化定义了一种语义缓存的逻辑模型,并描述了该模型下语义缓存组织的方法。对查询进行分类,分为简单查询和复杂查询,针对不同的查询,给出不同的查询优化方法和缓存合并策略。在语义缓存的查询优化方面,本文首先给出了传统的语义缓存查询处理流程。进而,本文给出并证明了可用于语义缓存查询优化的24条规则,基于这些规则,给出了简单查询下的谓词化简算法Dis_Optimize(DP)和复杂查询下的谓词化简算法Conjunction_Opt(P),最后给出了剩余查询的优化算法Remainder_Opt(Q,S)。通过理论分析证明了该优化机制的有效性。在语义缓存的合并策略方面,本文将不同种类的查询应用不同的合并策略,提出了简单查询下的全合并策略以及复杂查询下基于谓词复杂度的动态合并策略。实验表明,在简单查询下,采用全合并的缓存管理策略和谓词析取式优化算法相结合,能最大效率优化查询处理。在复杂查询方面,基于谓词复杂度的语义缓存动态合并策略能很好地平衡缓存与查询两端的谓词复杂度。基于本文研究的基础上,设计开发了一个Android操作系统下的基于移动位置服务的商家信息查询软件,从实践上证明本文提出的查询优化和缓存合并算法的可用性以及性能的优化。