SaaS应用的多租户数据架构关键技术的研究.pdf

SaaS应用的多租户数据架构关键技术的研究.pdf

ResearchonkeyTechnologyin Multi-Tenant Data Architecture for SaaS Application A Thesis Submitted to Chongqing University in Partial Fulfillment of the Requirement for the Doctor ‘s Degree of Engineering By Li Heng Supervised by Prof. Dan Yang Assistant Supervised by Prof. XiaohongZhang Specialty:Compter Application Technology College of Computer Science, Chongqing University, Chongqing, China. April, 2013 中文摘要 摘 要 随着云计算技术的不断发展,SaaS(Software as service)作为云计算的三种服务 模式之一,正逐渐被人们关注和接受。SaaS 凭借其按需租用、不需维护、便于扩 展等优势改变了用户使用软件和软件厂商提供软件的传统模式,被认为是能够促 进企业信息化建设的强有力武器,具有广阔的发展前景。 多租户技术(Multi-tenancy)是实现 SaaS 的核心技术之一,在多租户架构下, SaaS 应用程序为租户提供集中的,基于网络访问的数据。但随之带来的问题是, 数据作为租户最为重要的资产,如何设计一个灵活、可靠和安全的SaaS 数据架构, 一方面满足租户重要业务数据存储和保密性,另一方面又能满足租户的个性化定 制需求,同时还能在较少的成本下,高效的管理和维护这个数据架构。 本文以实现第四级成熟度(―可伸缩、可配置、高性能‖) 的 SaaS 系统为目标, 结合多租户数据架构中―隔离性、可定制性、可扩展性和安全性‖需求,对多租户数 据架构的中关键技术进行了研究,主要研究内容和创新成果包含以下四个方面: (1) 提出了一种基于元数据的多租户共享存储模式 目前,SaaS 应用的重要特征是允许租户自定义数据模式,之前的研究者先后 提出了七种多租户数据存储模式,每种模式均有自身的特点和适用场景,但无法 很好的在性能和可定制性上取得平衡。针对以上问题,本文提出的一种基于元数 据的多租户共享存储模式,通过划分―共享表‖ 、―元数据表‖和―数据表‖,将租户共 享数据和定制数据分开存储,一方面满足了租户的定制需求,实现对共享关系的 属性扩展和数据对象的自定义,另一方面消除了空值的存储,提高了存储效率。 同时,为了简化租户的定制流程,本文提出了一种基于本体的定制策略,通过构 建本体模板,租户在模板的基础上检索和定制模板组件,提高了数据定制的效率 和规范性。最后,针对租户在进行定制数据检索时,因依赖元数据而影响查询效 率的问题,本文构建了查询优化树,减少了数据表间的连接项,并通过缓存存储 查询结果,减少了数据库的IO 次数,提升了检索效率。 (2) 提出了一种多租户数据库的分布式索引机制 建立合适的索引对于提升数据库的性能非常重要,而传统索引机制在多租户 共享数据库下已经失效,在大量并发访问的情况下,如果一个数据库的操作不能 有效的利用索引,则必须面对一个庞大的数据表的扫描,这样会对整个数据库的 综合性能造成极大的影响。本文分析了传统索引机制在多租户共享数据库下失效 的原因,并构建了一种基于多租户共享数据库的分布式索引机制。研究并建立了 的两级索引架构,使得不同租户的索引彼此能良好的隔离,又具有较高的检索效 I 重庆大学博士学位论文 率。通过 B+树存储全局索引,并采用一致性 Hash

文档评论(0)

1亿VIP精品文档

相关文档