多租户数据库一致性问题研究

来源 :山东大学 | 被引量 : 0次 | 上传用户:eric_vl
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
软件即服务(SaaS, Software as a Service)和云计算的一种重要思想就将各种资源服务化,单实例多租户技术是其中的一项重要技术,它通过整合资源来为成百上千的不同租户提供服务。SaaS应用需要同时支持多个租户,而每个租户又可能有非常多的用户,这对支撑软件的基础设施平台的性能、可用性、扩展性等是很大的挑战。SaaS和云计算的本身对应用系统要求很高的可用性、扩展性。采用多副本复制技术是提高可用性最主要手段,然而,CAP理论却限制在分布式系统环境中,对于一致性、可用性和分区容错性三者最多只能兼顾其二。在数据管理上,实现多租户技术最常用方法有三种,独立数据库、共享数据库独立模式和共享数据库共享模式。本文基于具有最高共享程度的方式——共享数据库共享数据模式方式,从多节点副本系统架构上考虑,本文构建了能提供高可用的完全复制的多租户Quorum NRW系统。旨在结合每个租户的应用事务特性和需求,为每个租户提供合适的R和W的值,保证强一致性的条件R+W>N的同时,为各个租户和系统整体提供更高的性能。各个租户的应用事务特性和需求可能发生变化,这将导致与之对应的合适的Rw值的变更。本文根据变更的差异,总结为左变更和右变更两种变更方式,并结合多租户Quorum NRW系统的特性,提出了过渡法左变更和右变更的两种方法。整个变更过程保持在线完成,而且保持整个系统强一致性。本文同时对单个副本节点上的数据并发性和一致性上展开研究,根据多租户共享数据库共享数据模式的存储特点,提出了更为适合的面向租户的动态粒度锁,从各个租户的平均粒度上来讲,面向租户的动态粒度锁为不同的租户提供不同的锁粒度,而这一粒度根据定义会在上限粒度跟下限粒度之间。针对面向租户的粒度锁这一特性,构建多租户事务模型,从事务冲突率、死锁率、系统吞吐量、锁数量和基本表加扩展表的存储方式多个方面考察面向租户的粒度锁性能。而各租户的粒度跟各租户的事务特性未必相符,而各个租户的应用事务特性也可能发生变化。为此,鉴于面向租户的粒度锁的粒度大小由多租户数据分布决定,我们提出了面向租户的粒度锁调整方法——聚簇和扩展方法,同时结合事务冲突率、死锁率、系统吞吐量、锁数量和基本表加扩展表的存储方式等多个方面的考虑,完成求解近似适度粒度的策略来供面向租户的粒度锁调整所用。本文在进行相关理论分析同时,也采用实验评估验证多租户Quorum NRW系统和面向租户的动态粒度锁,经过多个角度的实验数据显示,多租户Quorum NRW系统和面向租户的动态粒度锁对整个系统的性能提升较为明显。
其他文献
随着各种数据来源和数据采集方式的逐渐多样化,机器学习和数据挖掘技术的应用场景日益丰富。机器学习研究的本质要解决智能化学习的基础表示和模型两大问题,前者需要对计算机可
人工智能是计算机模拟人脑的一种智能行为,它一方面对人类智能工作方法的基本步骤进行归纳,另一方面又创造了适合计算机运行的步骤,使计算机具有了与人类智能相似的能力和技
学位
模板匹配广泛应用于图像处理及信号处理领域。科学技术的飞速发展使得图像模板匹配处理的规模越来越大,更重要的是人们对实时图像处理的需求也越来越高,因此,采用通用处理器来实
云计算技术虽然是一种新兴技术,但一经提出就得到迅速发展,凭借自身的优势得到了越来越多国家企业和研究机构的关注,很多研究人员投入到云计算相关技术的研究中伴随着云计算研究
Web系统通常部署于开放的互联网环境,用户输入的随意性对系统的安全验证机制提出了更高的要求。因此检测程序中是否存在有效的安全验证机制成为软件测试领域的重要研究内容。
随着图数据规模的不断增长和属性因素的不断增加,路径查询技术面临如何解决属性自身的繁杂性、属性之间关系的复杂性以及图数据的大规模等问题。这些问题导致现有很多路径查询
随着多媒体和网络的飞速发展,数字视频的数量急剧增加。怎样通过计算机对这些大量的视频进行自动理解,提取出其语义信息,从而方便用户进行高效率的查询和检索,是当前急需解决的问
大数据时代存储系统在众多实际应用中扮演越来越重要的角色,其读写性能的好坏直接影响上层应用的性能。目前,分布式文件系统都是利用扩展性支持不断攀升的性能需求,但规模扩大易
随着计算机网络的发展,计算环境中层出不穷的安全威胁使信息安全成为一个迫切需要解决的问题,可信计算使从根本上解决计算安全问题成为可能。TCG(Trusted Computing Group)规范指