第一章绪论
在SaaS平台上,不同的租户通常有不同的资源需求,在不同的时间有不同的访问模式。要实现规模经济,最需要解决的问题之一是,在有限的数据节点群集上,且不违反租户的SLA要求的前提下如何在最佳的负载平衡基础上最大化总支持的租户数量。因为不同租户的负载情况差异很大,因此弹性负载均衡对于租户的数据的性能和总成本最小化是至关重要的。当托管的数据节点不能满足一个租户或部分租户要求的CPU和存储资源,同时不能满足SLA和存储资源,同时不能满足SLA是资源相关,性能相关的. 在面对共享数据模式的应用多租户数据库环境中,随着应用服务SaaS规模的不断扩大和应用数据爆炸性增长,以及各个租户业务规模、业务量、复杂程度有所不同,各数据中心时常常出现负载不平衡的现象,即有些数据节点因为负载过重造成对租户的响应时间过长,或者有些数据节点的负载过轻造成资源的浪费。当负载不平衡达到一定的限度,则应启动数据迁移机制。不幸地,当前云存储下关于数据的迁移策略不是针对多租户,缺乏对共享存储方式下的可伸缩性和资源动态使用的问题。选择需要迁移的数据,并确保在迁移过程中的数据访问的连续性和一致性,带来很大的挑战,而且,SaaS应用需要在线进行使用,所以任何对租户数据的迁都不应该中断该应用的使用,但是迁移数据需要时间。
........
第二章相关研究
2.1SaaS发展历程研究
SaaS是通过互联网使用软件供应商部署在自己的服务器上的应用程序所提供的服务,租户按照自己意愿,从软件服务提供商那里定购需要的应用软件服务,根据租户定购的应用软件服务数量和使用时间期限进行收费。客户不需要购置软‘件,服务提供商会进行软件管理和维护工作,客户省去了管理和维护的繁琐工作。服务提供商不仅提供了基于互联网的软件服务,而且提供应用软件本地数据存储,使得用户在任何时间和任何地点都可以使用其定购的服务。在第一级成熟度模型中,不同的租户使用自己定制应用版本,且该应用实例运行在购买额主机服务器上。这种成熟级别的软件范式从架构上类似于传统企业软件,虽然不同租户连接到服务器上运行的源代码是同一份,但每个运行实例在不同租户之间是完全独立的。
2.2多粗户数据存储模型
针对数据迁移的问题,国内北方工业大学云计算研究团队组织过很多关于多租户负载的研究工作,文中展现了一种惰性副本管理方案,该方案能够满足租户的个性需求,通过副本的放置来满足租户负载的动态变化;国内人民大学研究数据库的团队给我们展现了一种云环境下的存储架构,考虑完善的数据存储和数据查询方法,给出一种基于队列的调度方案,能够满足快速简卑的查询,然后,该方案没有详细描述相关的研究。传统模式下,开发商需要针对不同客户的需求幵发部署应用,成本高。模式改变了传统的软件经营模式,基于同一软件实例为不同的租户提供服务,即“单实例多租赁”,价格低廉,部署迅速。开发商提交的应用作为标准应用,并不适合每个租户的需求,而且租户的需求随着时间的推移也会发生变化,因此,为满足不同租户个性化的业务需求,应用要支持“租户自定制”。应用涉及界面、服务、数据等多个层次,形成各个方面的定制需求。租户租赁应用构建业务系统后,定制系统具有的功能点,使用的风格样式、导航方式、安全认证方式,还可对页面、数据、工作流、规则、参数等进行定制。定制的内容是通过元数据来描述的。如果定制分层则元数据也可以根据层次来划分。
第三章支持数据迁移的多租户数据存储模型.......13
3.1引言......13
3.2云中SaaS应用多metadata-node模型.......13
第四章多metadata-nodes下的多租户数据动态迁移算法..........20
4.1引言.........20
4.2系统模型...20
第五章实验评估.........32
5.1引言......32
5.2环境及工作负载的产生.........32
第五章实验评估
5.1引言
在本章的实验中,为了简化实验过程,我们会基于我们提出的多元数据节点模型只对两个迁移算法进行比较,即我们提出的多租户的数据迁移算法,停机复制算法,数据节点和元数据节点要看到是一样的,只有元数据管理节点单独看待。我们从以下三个方面进行比较:访问延迟。租户数据的迁移肯定会对租户对数据的访问造成影响,但是我们希望这个影响可以降至最低。执行时间。迁移过程需要一定的时间,这里我们希望迁移执行时间最少,且能够保证访问延迟最低。中断时间。迁移执行过程出现中断时间最小。
5.2环境及工作负载的产生
最初始的时候元数据管理节点上的内容如表5-1,每个租户的负载是一样的,两个数据节点的负载数量一样,但是负载状态不同,在下面的实验中,每个租户的负载情况会发生变化,造成了源数据节点负载过重,需要将一部分数据迁移到目标数据节点中,负载的状态信息更新在元数据管理节点的表中。我们的实验只对简单的事务进行了模拟,每一个访问请求都只是简单数据库操作, 不同的实验过程迁移不同的数据量,一倍租户数据量到三倍租户数据量,验证迁移过程中关于所有数据库操作请求的性能,然后以曲线的形式表示出来,响应时间单位使用毫秒。
..........
第六章总结展望
6.1本文总结
第四章基于共享存储架构提出了适合于多租户的动态数据迁移策略,该策略不仅能考虑多租户特性,而且能够最小化服务中断时间。迁移过程中为了保证租户访问的不中断性,我们提出了一种“单写双读”的访问模型,即所有写请求都是到目标数据节点上进行写操作,源数据节点上待迁移的数据只能够被读操作访问,保证了平台的整体性能。第五章主要从实验的角度对本文的面向租户动态迁移技术进行评估,通过搭建按照本文设计的多租户共享存储多节点系统环境,分别对针对不同的租户数量和不同的迁移技术进行了实验研究,通过对实验结果分析显示,证明了该动态迁移策略的有效性如本文理论分析一般明显提升系统性能。
6.2研究展望
本文从多元数据节点多租户存储模型和基于云中多元数据节点的多租户数据动态迁移策略提高SaaS平台的可用性和性能,虽然租户访问元数据节点的可用性增强和各个节点的资源使用均衡了,而且效果比较明显,但是有很多地方可以进一步优化。在面对共享数据模式的SaaS应用多租户数据库环境中,以及各个租户业务规模、业务量、复杂程度有所不同,各数据中心时常常出现负载不平衡的现象,即有些数据节点因为负载过重造成对租户的响应时间过长,或者有些数据节点的负载过轻造成资源的浪费。当负载不平衡达到一定的限度,则应启动数据迁移机制。不幸地,当前云存储下关于数据的迁移策略不是针对多租户,缺乏对共享存储方式下的可伸缩性和资源动态使用的问题。选择需要迁移的数据,并确保在迁移过程中的数据访问的连续性和一致性,带来很大的挑战。
..........
参考文献(略)