【技术实现步骤摘要】
一种SaaS多租户的元数据运行方法、系统、设备及介质
[0001]本申请涉及
SaaS
元数据管理的
,尤其涉及一种
SaaS
多租户的元数据运行方法
、
系统
、
设备及介质
。
技术介绍
[0002]软件运营服务(
Software as a Service
,简称
SaaS
)是让用户能够通过互联网连接和使用基于云的应用程序
。
常见示例有电子邮件
、
日历和办公工具
。
在现有技术中,数据库的隔离方式包括多数据库实例的隔离方式和同一数据库不同租户
id
的数据隔离方式两种方式
。
多数据库实例的隔离方式一般会将元数据信息存储在各自独立的数据库中,这种方式便于多租户数据的隔离管理以及不同租户进行二次开发产生的元数据保存,但是对于
SaaS
多租户服务的资源占用和元数据更新将会造成极大的困难
。
将会增加服务器的资源开销以及内存占用,在更新时,每次标准产品的迭代更新都需要对每个租户进行升级操作,从而更新每个租户数据库中的元数据信息,工作量很大,风险较高
。
同一数据库通过租户
id
的数据隔离方式,其优点在于多租户的数据存储在同一个数据库内,便于
SaaS
多租户服务的元数据更新和表结构更新,但是多租户数据没有实现数据库实例级别的隔离,存在数据隔离 ...
【技术保护点】
【技术特征摘要】 【专利技术属性】
1.
一种
SaaS
多租户的元数据运行方法,其特征在于,所述方法包括:连接租户数据库和
meta
标准元数据管理库;其中,所述租户数据库包括租户业务数据和租户私有元数据,所述
meta
标准元数据管理库包括租户信息表
、
公共标准元数据
、
元数据描述文件和对象注册表;根据所述租户信息表判断所述租户是否匹配最新的公共标准元数据;在所述租户没有匹配最新的公共标准元数据时,基于预设的
meta
数据库更新算法更新所述
meta
标准元数据管理库和租户数据库;在所述租户匹配最新的公共标准元数据时,基于预设的加载算法加载所述
meta
标准元数据管理库和租户数据库;在租户需要更新租户数据库时,基于预设的租户数据库更新算法更新所述租户数据库
。2.
根据权利要求1所述的一种
SaaS
多租户的元数据运行方法,其特征在于,在根据所述租户信息表判断所述租户是否匹配最新的公共标准元数据前,所述方法还包括基于预设的
lua
脚本查询
meta
标准元数据管理库中的租户信息表,并在所述租户信息表未过期时,允许所述租户访问,具体包括:连接
nginx
代理服务器并获取连接所述
nginx
代理服务器的连接时间;基于
lua
脚本查询所述
meta
标准元数据管理库中的租户信息表;其中,所述租户信息表包括租户名称
、
租户类型
、
租户访问域名
、
租户创建日期
、
租户过期日期
、
匹配的公共标准元数据版本;基于所述连接时间,匹配租户信息表中的租户过期日期,以判断所述租户是否过期;在所述租户过期时,拒绝所述租户访问,并提醒所述租户已过期;在所述租户未过期时,允许所述租户访问
。3.
根据权利要求1所述的一种
SaaS
多租户的元数据运行方法,其特征在于,根据所述租户信息表判断所述租户是否匹配最新的公共标准元数据,具体包括:基于所述
meta
标准元数据管理库的元数据描述文件,获取所述
meta
标准元数据管理库的公共标准元数据的版本;基于所述租户信息表中匹配的公共标准元数据的版本,匹配所述
meta
标准元数据管理库的公共标准元数据的版本,以判断所述租户是否匹配最新的公共标准元数据
。4.
根据权利要求1所述的一种
SaaS
多租户的元数据运行方法,其特征在于,在所述租户没有匹配最新的公共标准元数据时,基于预设的
meta
数据库更新算法更新所述
meta
标准元数据管理库和租户数据库,具体包括:获取所述
meta
标准元数据管理库更新包和
meta
标准元数据管理库的
json
元数据信息更新包;将所述
json
元数据信息更新包解析为所述
meta
标准元数据管理库的数据存储格式,并将解析后的所述
json
元数据信息更新包存储于所述
meta
标准元数据管理库更新包,以获取官方更新包;添加所述官方更新包至所述
meta
标准元数据管理库,以更新所述
meta
标准元数据管理库;以预设的数据库存储数据的最小
key
为标准,通过预设的元数据对比工具,基于所述官
方更新包匹配所述
meta
标准元数据管理库和租户数据库,以获取差异化更新包;获取所述租户数据库中匹配的公共标准元数据的版本号;插入所述匹配的公共标准元数据的版本号至所述差异化更新包,以获取差异更新数据包;整合所述差异更新数据包至所述租户数据库,以更新所述租户数据库
。5.
根据权利要求1所述的一种
SaaS
多租户的元数据运行方法,其特征在于,在所述租户匹配最新的公共标准元数据时,基于预设的加载算法加载所述
meta
标准元数据管理库和租户数据库,具体包括:获取租户发送的加载请求,并构建多个进程;其中,所述进程包括公共通道和私有通道;基于预设的多进程参数控制算法处理所述加载请求,以判断所述加载请求是否满足预设的要求;在所述加载请求满足预设的要求时,添加所述
meta
标准元数据管理库的公共标准元数据至所述进程的公共通道中;基于所述加载请求获取租户名称,并基于所述租户名称获取所述租户私有元数据;添加所述租户私有元数据至所述私有通道中,以加载所述
meta
标准元数据管理库和租户数据库
。6.
根据权利要求5所述的一种
技术研发人员:郑伟波,邬柏,许世鹏,孙鹏,郭蕾,
申请(专利权)人:浪潮通用软件有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。