论文部分内容阅读
随着经济全球化的发展,软件即服务(Software as a Service,简称SaaS)作为一种新的商业模式被提出。SaaS的出现彻底改变了人们对软件的观念,它将软件的所有权、基础设施的运营和管理由客户转向外部供应商,客户不直接拥有软件,而是通过Internet付费方式获得使用权。伴随着SaaS应用软件的多元化和SaaS租户的专业化,对SaaS软件的定制能力也提出了新的需求。首先,一个租户可能需要对所租赁的同一个SaaS应用定制出多个满足不同具体业务需求的应用系统,开启多个业务应用。然而,传统SaaS应用只能为租户的一次租赁维护一份定制内容。按照传统方式,租户需要租赁并定制多次。其次,租户对租赁的同一个SaaS应用所定制出的多个满足不同具体业务需求的应用系统之间存在很多共同的定制特征。多次定制时,会出现很多重复定制操作以及重复的定制元数据。基于此,新的SaaS应用应该实现对租户所租赁的一个SaaS应用的多份定制维护,满足租户内定制元数据的共享,减少重复定制,方便租户统一管理自己的机构、用户、角色、代码、业务应用、业务数据、费用等。本文首先解决的问题是对面向SaaS应用的租户多级定制模型的描述。作为SaaS应用的一种新定制模式,多级定制模型更符合当前SaaS应用软件多元化和SaaS租户专业化的发展趋势。多级定制模型不同于SaaS应用的传统定制模式,它能够实现租户内所组建定制的业务应用系统之间的定制元数据共享,减少重复定制,方便租户统一管理自己的机构、用户、角色、代码、业务应用、业务数据、费用等。接下来,本文的研究重点是对面向SaaS应用的租户多级定制模型的数据存储映射架构的实现以及针对该数据存储映射架构的查询优化机制的技术研究。数据存储映射架构是基于普通关系数据库来实现SaaS应用数据存储的关键,而面向SaaS应用的租户多级定制模型必须有相应的数据存储映射架构作为基础才能得以实现。另外,SaaS应用的查询性能是SaaS应用程序得以被用户认可的关键,在SaaS应用多级定制模型中,普通的数据查询优化机制不足以实现SaaS应用的性能优势,本文基于SaaS应用多级定制数据存储存储架构,对数据查询优化技术进行研究。本文主要的工作如下:1.提出面向SaaS应用的租户多级定制策略,定义了SaaS应用多级定制的形式化模型,并通过SaaS应用多级定制模型的数学分析来验证该模型的有效性,论证了该模型能够实现同一个SaaS应用在租户内所组建定制的业务应用系统之间定制元数据的共享,减少租户冗余的业务定制,方便租户对业务系统的定制管理。2.设计并实现SaaS应用多级定制数据存储映射架构。数据存储映射架构采用多租户共享架构模式,能够匹配常见的多租户数据映射模式,满足租户不同的业务需求,实现SaaS应用多级定制模型的数据存储。3.基于多级定制模型的特点,深入研究了多级定制数据存储架构下的数据查询优化机制,采用元数据传递闭包表策略,以及面向多租户的两级内存缓冲策略和基于租户缓存内替换代价模型的“查询代价最小的最近最少使用”的缓存替换算法(Min-QT-LRU算法)来提高系统架构的查询性能,并提供多租户缓存定制能力来满足不同租户的业务性能需求。