学位论文 > 优秀研究生学位论文题录展示
SaaS应用交付平台中多租户云数据管理关键技术研究
作 者: 孔兰菊
导 师: 李庆忠
学 校: 山东大学
专 业: 计算机软件与理论
关键词: SaaS应用交付 云数据管理 多租户索引 多租户数据存储 模式映射
分类号: TP393.09
类 型: 博士论文
年 份: 2011年
下 载: 741次
引 用: 0次
阅 读: 论文下载
内容摘要
随着云计算的发展及应用软件的成熟,软件即服务(Software as a Service,SaaS)作为云计算的一种应用形式,越来越受到重视,已逐渐成为中小企业应用先进技术的重要途径。SaaS应用交付平台推动了SaaS模式的蓬勃发展,越来越多的个人或机构通过SaaS平台租赁各种形式的应用,这些应用正在覆盖人们生活的各个领域,通过应用及应用之间的协同工作,完成搜索、事务管理以及分析等。目前,成熟的SaaS服务提供商多采用一对多的软件交付模式,成千上万租户共享一个应用,业务数据存储在服务提供商的共享数据库中,最终用户感受不到所使用的实例在同一时间也为其他客户所共享。支持租户定制的多租户共享存储架构,实现了从操作系统到数据结构等各个级别的资源共享,充分利用了硬件、数据库等资源,然而单个节点所能支持的租户数量受到硬件限制,当租户需要更多存储空间和更高服务质量时,需要采用升级硬件的方式实现,难以实现规模的动态扩展。随着SaaS交付平台租户数目及信息数据量呈几何曲线性增长,SaaS交付平台数据管理正处于由单数据节点往云中多数据节点转变的必然阶段,而相应地对SaaS应用交付平台数据管理能力的期望值也越来越高。本文致力于SaaS应用交付平台中多租户云数据管理关键技术的研究,目标在于最大限度地支持快速开发与交付,保障SaaS应用多租户的高效运行。SaaS应用交付平台多租户云数据管理具有自身的特点,现有云数据管理方法不能有效解决以下问题:(1)SaaS平台租户数据弹性扩展问题。SaaS应用交付平台涉及到大量的SaaS应用,各应用业务领域不同,数据模式必然千差万别;每个SaaS应用拥有众多的租户,租户在同一应用下的模式类似,但业务又不尽相同;即便是同一租户在不同的发展阶段,数据模式也会有各自的特点。因此,平台要支持数据存储模型的弹性扩展,同时,还要解决因为数据管理复杂度的增加而导致的性能下降问题,保证应用的高效运转。(2)现有云数据放置策略未引入SaaS特征。面对SaaS交付平台的海量数据,云数据库分配云中的多个数据节点为其提供服务,所有SaaS应用所有租户的数据作为一个整体被分割放置到各个节点上,由于SaaS平台租户共享存储的特点,云数据库无法根据数据模式对其进行虚拟化,租户做为独立个体的特征往往被忽略,从而导致多租户数据的混合放置以及单个租户数据的分散,增加了租户数据访问及应用之间数据共享的代价,因此,需要在云数据管理中引入平台租户数据的特征,才能有效进行SaaS平台数据分割及云数据管理的弹性伸缩。(3)缺少多级别、细粒度的SaaS平台租户索引支持。现有的云数据管理机制针对每个用户建立一个虚拟数据库,意识不到SaaS应用交付平台中的应用租户,无法精确的定位到租户数据节点上;同时,在租户数据共享存储的局部节点上,传统的索引机制已经失效,无法提供有效的租户逻辑索引,使得租户的随机数据操作变的困难。本文以SaaS应用交付平台中多租户云数据管理为目标,对SaaS平台数据模型、云中放置策略、租户索引等进行了深入研究,主要贡献概括如下:1.提出一种SaaS平台多租户虚拟化方式及高效映射转换的数据分层模型,通过租户无关的应用数据模型为开发商屏蔽多租户云数据管理技术细节,通过租户逻辑模型支持租户按需定制数据模式以及各业务系统数据之间的共享关系,通过逻辑存储模型为平台运营商屏蔽了云中数据节点伸缩技术,解决了SaaS应用生命周期云数据管理技术瓶颈问题。针对SaaS平台“共享数据库、单实例多租赁、多数据节点”的需求,以及SaaS应用开发存在技术瓶颈的问题,本文建立了SaaS平台多租户虚拟化模型及数据分层模型,支持开发商面向标准SQL(Structured Query Language)编程,由平台支撑SaaS应用的按需定制及运行,能有效支持租户自主定制,数据统一管理,方便应用之间的数据共享,数据权限模型管理以及事务管理,也方便保证平台数据节点在云中的伸缩。通过原型系统验证,该多租户虚拟化模型及分层数据模型具有较高的独立性,支持开发商使用标准SQL编程;通过模式映射感知多种多租户共享存储方式,并根据元数据在各多租户存储模型之间进行切换;支持数据节点的弹性伸缩,为SaaS交付平台提供了友好数据访问模式、高一致性、高可伸缩性、高可用性。2.提出一种多稀疏表与键值对相结合的多租户数据逻辑存储模型,以及支持租户多级定制的元数据存储模型,从根本上解决了稀疏表定制能力受限以及数据操作粒度较大的问题,降低了元数据的冗余存储,简化了租户定制过程,增强了租户按需变更能力,同时,该逻辑模型便于进行数据的分割与放置,为租户数据在云中的存储奠定了模式基础。本文针对多租户共享存储模式下数据稀疏,进而导致存取性能下降的问题,以及租户定制能力受限、定制数据冗余存储的问题,通过划分多个稀疏表,提高了稀疏表的密集程度,避免了SaaS平台稀疏表中众多空值导致的存储空间浪费、存取性能下降及关系连接效率不高的情况,通过键值对的扩展存储机制提高了租户存储模型的定制能力,通过元数据的多级存储模型,解决了元数据冗余存储的问题,同时提高了定制效率。通过SaaS平台描述的租户信息,方便建立元数据驱动的数据分布策略。实验结果表明,本方案在用户视图列数呈正态分布的情况下,数据密集程度平均提高20%,关系连接效率随着元组数量增大而显著提高;定制数据冗余存储减少达56.7%,是一种行之有效的存储模型。3.提出一种面向SaaS应用交付平台的云中多租户数据分割模型及动态同步迁移策略,解决了共享存储模式下无法识别SaaS应用租户,难以使用快照、日志等数据库技术进行租户数据迁移的问题,通过SaaS平台数据层面的同步迁移策略,完成租户数据的动态移植,保证云中各数据节点的负载均衡及良好的用户体验。在云中为SaaS平台创建一个虚拟数据库,租户数据共享存储,使得云数据库无法以SaaS应用租户为单位进行数据管理,如分割、迁移、备份等。为实现数据节点的弹性伸缩,本文基于租户个体数据量较小,总体数据海量的特征,通过SaaS平台元数据驱动的租户数据分割机制,保证租户事务性操作能在单个数据节点完成,尽最大可能避免了分布式事务的处理;从数据层面构建平台的数据迁移策略,通过独立的迁移进程移植租户数据,通过数据引擎对源节点和目标节点当前事务进行同步操作,降低了宕机时间和迁移负载,保证了云中数据节点的伸缩性以及平台的整体性能。实验结果表明,本方案在数据节点数据量达到阂值50%的情况下发起数据迁移,迁移过程中租户的访问请求未受显著影响,迁移后租户的访问代价降低,平台整体性能得到了提高。4.提出一种SaaS平台多级别、细粒度索引模型,通过SaaS交付平台租户的位置编码,迅速定位到租户所属数据节点,解决了云数据管理无法识别SaaS应用租户的问题;在租户数据节点上,建立了基于键值对模式的租户逻辑索引,解决共享表存储模式下租户索引失效、定制能力不足等问题,提高了平台数据服务的响应速度。针对租户数据尚无有效的多级别、细粒度的索引支持的问题,本文通过SaaS平台租户节点索引、租户逻辑索引、关系数据库物理索引三部分构成了租户多级索引模型。通过租户节点索引解决了无法随机访问相关数据节点的问题,通过租户逻辑索引满足了租户索引定制、隔离等需求,通过关系数据库物理索引为逻辑索引提供高效访问机制,保证了较高的查询性能。针对租户逻辑索引,本文提出一种基于键值对存储方式的租户逻辑索引机制,基于键值对存储方式,提出元数据驱动的映射表索引模型,该模型根据租户定制需求,为租户业务数据形成各自的索引元数据,通过元数据驱动实现了索引数据的隔离及定制效果;给出索引的维护策略,根据租户数据访问请求进行索引切片,以逐渐细化的索引切片作为数据访问的基本单位,快速返回租户结果集。实验结果表明,本方案在数据访问分布均衡的情况下,索引维护及数据访问具有较好的总体性能。
|
全文目录
摘要 13-17 ABSTRACT 17-22 第1章 绪论 22-32 1.1 研究背景及意义 22-24 1.2 SaaS平台数据管理面临问题 24-27 1.3 研究目标与内容 27-28 1.4 论文的贡献 28-31 1.5 组织结构 31-32 第2章 相关研究 32-44 2.1 引言 32 2.2 数据管理模型 32-35 2.3 多租户数据存储模型 35-38 2.4 数据放置策略 38-40 2.5 多租户索引 40-42 2.6 小结 42-44 第3章 SaaS交付平台多租户云数据管理模型 44-64 3.1 引言 44-45 3.2 平台多租户虚拟化模型 45-46 3.3 SaaS平台数据分层模型 46-50 3.3.1 开发商视图 48 3.3.2 租户视图 48 3.3.3 逻辑存储视图 48-49 3.3.4 存储视图 49-50 3.3.5 映射机制 50 3.4 SaaS平台多租户数据模型 50-60 3.4.1 应用数据模型 50-53 3.4.2 租户数据模型 53-55 3.4.3 逻辑存储数据模型 55-58 3.4.4 云存储数据模型 58-60 3.5 平台动态运转机制 60-61 3.6 本章与后续章节的关系 61-62 3.7 小结 62-64 第4章 SaaS交付平台多租户数据逻辑存储模型研究 64-88 4.1 引言 64-66 4.2 多稀疏表与键值对结合模型 66-73 4.2.1 存储模型定义 67-71 4.2.2 模型密集度分析 71-72 4.2.3 模型正确性分析 72-73 4.3 存储模型维护 73-77 4.3.1 多稀疏表划分及分配 74-76 4.3.2 统计模型定义 76-77 4.4 元数据存储模型 77-80 4.4.1 元数据分析与建模 77-80 4.4.2 多级存储模型分析 80 4.5 相关实验与分析 80-87 4.5.1 多稀疏表操作实验 81-85 4.5.2 租户元数据存储模型实验 85-87 4.6 小结 87-88 第5章 SaaS交付平台多租户云数据分割机制研究 88-104 5.1 引言 88-89 5.2 数据分割及放置策略 89-92 5.3 数据迁移策略研究 92-97 5.3.1 迁移代价模型 93 5.3.2 迁移策略 93-97 5.4 算法分析 97-98 5.5 相关实验与分析 98-102 5.6 小结 102-104 第6章 SaaS交付平台多租户索引机制研究 104-120 6.1 引言 104-105 6.2 多级索引模型 105-107 6.2.1 租户节点索引 105-106 6.2.2 租户逻辑索引 106-107 6.3 基于键值对模式的租户逻辑索引 107-110 6.4 基于键值对模式的租户逻辑索引维护策略 110-115 6.4.1 映射表索引维护策略 112-114 6.4.2 映射表索引算法分析 114-115 6.4.3 映射表索引算法执行结果 115 6.5 实验结果与分析 115-119 6.6 小结 119-120 第7章 SaaS交付平台原型系统 120-126 7.1 引言 120 7.2 体系结构 120-123 7.2.1 系统模块组成及介绍 120-121 7.2.2 数据模块组成及介绍 121-122 7.2.3 应用生命周期管理 122-123 7.3 业务系统运转原理 123-126 7.3.1 元数据驱动的应用模式转变 124 7.3.2 多租户共享数据结构存储模式 124 7.3.3 元数据驱动的多租户数据映射机制 124-125 7.3.4 多租户云数据分割机制 125-126 第8章 总结与展望 126-128 8.1 总结 126-127 8.2 展望 127-128 参考文献 128-137 致谢 137-138 攻读学位期间发表的学术论文目录 138-139 攻读学位期间参与科研项目情况 139-140 攻读学位期间获奖情况 140-142 学位论文评阅及答辩情况表 142-144 外文论文 144-166 Paper 1 144-153 Paper 2 153-166
|
相似论文
- 海量多数据库集成系统的查询处理研究,TP311.13
- 数据资源汇聚的可视化建模技术研究与应用,TP311.52
- 基于XML的异构数据交换技术研究,TP311.13
- 异构数据库系统中的查询分解与并发控制方法研究,TP311.13
- 基于宽表的SaaS多租户数据存储机制研究,TP393.09
- 多租户环境下的数据存储模式和映射机制研究,TP393.09
- 基于模式映射的XML与关系数据库的存储技术的研究,TP311.13
- 畜产品溯源系统中异构数据整合问题研究,TP311.13
- 基于知识库的企业异构数据集成,TP311.52
- 基于XML数据库的中间件的研究与实现,TP311.52
- 异构数据集成和信息共享模式研究,TP311.52
- 企业应用系统中不确定性数据集成研究,TP311.13
- 数据集成系统中XML文档模式转换与查询的研究及实现,TP311.13
- 面向信息集成的查询转换方法的研究与实现,TP311.13
- 勘探开发数据接口系统研究与应用,TP311.52
- 基于XML的制造信息格式转换技术研究,TP311.13
- 基于主数据管理技术的企业信息集成方法研究,TP311.52
- 基于XML的异构数据转换的研究与实现,TP311.52
- 基于XML的异构数据库数据交换模型的研究与设计,TP311.13
- H.264码率/分辨率下采样转码的设计与实现,TN919.81
- 装备保障异构数据集成关键技术研究与集成环境设计,TP311.52
中图分类: > 工业技术 > 自动化技术、计算机技术 > 计算技术、计算机技术 > 计算机的应用 > 计算机网络 > 一般性问题 > 计算机网络应用程序
© 2012 www.xueweilunwen.com
|