【技术实现步骤摘要】
一种支持数据模型切换的多租户数据库系统
[0001]本专利技术涉及数据存储
,具体涉及一种支持数据模型切换的多租户数据库系统。
技术介绍
[0002]在SaaS多租户应用系统中,虽然一个多租户应用实例为多个相同或者类似的租户逻辑应用提供服务,但租户对应用业务的需求存在差异,这种差异使得SaaS多租户应用对数据存储服务的需求存在差异。安全性、可靠性以及可配置性是租户在租赁SaaS多租户应用时最关心的因素,租户对这些因素要求的不同体现在SaaS多租户应用对多租户数据存储服务要求的不同。
[0003]对于数据存储服务而言,租户对应用的安全性需求体现在数据的隐私性上。数据是企业的资产,因此,租户在租用SaaS服务时,对数据的隐私性及时要求程度各不相同,其对于非涉密、可公开的数据可以共享存储,而对于敏感数据,则要求独立存储。对于数据存储服务而言,租户对应用的可靠性要求体现在租户对数据库查询性能以及数据库故障恢复能力上。查询性能方面,不同租户对应用处理业务的速度往往有着不同的要求,对于负载较重的租户应用,其需要多租户数据库提供较高查询处理能力以及较高数据吞吐能力。故障恢复能力方面,不同租户对数据库受到攻击、发生人为或系统错误后恢复可用的速度要求也不尽相同。对于数据存储服务而言,租户对应用的可配置性要求体现在租户对数据结构可自定义程度上。SaaS多租户应用在租赁应用后,部分租户需要经常对业务流程进行调整与修改,这就要求SaaS多租户应用具有一定的可配置性,应用业务的改变往往需要对支撑业务的数据的逻辑结构进行调整,而对 ...
【技术保护点】
【技术特征摘要】
1.一种支持数据模型切换的多租户数据库系统,其特征在于,包括:数据库存储层,设置了多个包含不同的数据模型的数据库实例存储空间,以及租户元数据数据库实例;系统根据租户存储需求以及系统决策因素,为租户选择适当的数据存储模型,并根据租户的数据集实例将该租户元数据存储到租户元数据数据库实例中;数据库驱动层,为租户应用的数据查询提供查询重写功能;对于非共享表数据模型,由于其物理存储表结构与租户逻辑表结构一致,因此查询无需经过重写即可执行;而对于共享表数据模型,其面向租户查询则需要重写,并且查询的结果需要经过构造才返回给多租户应用;数据库转换层,包括数据模型转换模块和数据库管理监控模块;所述数据库管理监控模块包括管理器和监控器;管理器具有租户需求管理和数据库实例空间管理功能;监控器具有监控数据库实例功能和监控租户数据功能;所述数据模型转换模块采用数据热迁移,通过为租户数据集中每一个元组增加迁移标记,根据迁移标记的状态对租户的数据进行从源数据模型到目标数据模型的映射,映射后的数据进行顺序迁移,而对于迁移过程中租户发起的查询请求,则根据查询标记状态,对查询涉及的数据进行主动请求迁移,最后使得租户源数据与目标数据达到数据逻辑无异;管理器的租户需求管理功能为上层应用提供租户数据存储需求设置接口,当租户改变其需求时,管理器会将更新的租户需求存储在元数据数据库中,并向数据模型转换模块发出请求;数据模型转换模块接收到请求后,会通过监视器的数据库实例监控功能和租户数据监控功能提供的接口获取数据模型转换策略所需的信息;若数据模型转换模块需要对数据库实例进行调整,会调用管理器数据库实例空间管理功能的提供的接口,由管理器完成数据库实例的调整。2.根据权利要求1所述的支持数据模型切换的多租户数据库系统,其特征在于,所述数据库存储层包含私有表数据模型数据库实例空间、通用表数据模型数据库实例空间、多级块表数据模型数据库实例空间、透视图数据模型数据库实例空间以及租户元数据数据库实例。3.根据权利要求1所述的支持数据模型切换的多租户数据库系统,其特征在于,所述数据库驱动层中查询重写的过程如下:SaaS应用向租户对应的逻辑数据库发出基于租户逻辑数据库表的查询语句,多租户数据库系统的查询重写器根据租户ID,查找对应的租户元数据数据库,根据查询得到的数据库和列名的映射信息,将查询语句进行重写,并向相应的数据库实例发起查询请求,得到查询结果后进一步判断是否进行格式转换,最终将查询结果返回给SaaS应用。4.根据权利要求1所述的支持数据模型切换的多租户数据库系统,其特征在于,所述数据模型转换模块实现的数据热迁移包含三个阶段,分别为:一、迁移准备阶段;该阶段完成存储标志位的初始化以及用于存储迁移后数据的数据表的建立;对存储在源实例空间S
src
上、源虚拟机VM
src
中、源数据库DB
src
中、源租户数据集DS
src
(model
src
)中所有的数据元组的mFlag置为false;若目标实例空间S
dst
上、目标虚拟机VM
dst
中、目标数据库DB
dst
中的用于存储租户数据DS
dst
(model
dst
)的数据表未建立,则建立其数据表;在准备阶段中,数据库依然处理数据查询请求;
二、双线迁移阶段;这一阶段完成DS
src
(model
src
)到DS
dst
(model
dst
)的迁移,分为顺序迁移过程和查询请求迁移过程;顺序迁移...
【专利技术属性】
技术研发人员:陈昕,郑伟平,闫雪梅,
申请(专利权)人:砺剑防务技术新疆有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。