[发明专利]一种saas平台多租户数据隔离方法在审
申请号: | 202010847607.9 | 申请日: | 2020-08-21 |
公开(公告)号: | CN112069210A | 公开(公告)日: | 2020-12-11 |
发明(设计)人: | 叶乃宝;杨明;敬岩;谷冠飞 | 申请(专利权)人: | 北京首汽智行科技有限公司 |
主分类号: | G06F16/2455 | 分类号: | G06F16/2455;G06F16/242;G06F21/62 |
代理公司: | 北京世誉鑫诚专利代理有限公司 11368 | 代理人: | 李世端 |
地址: | 100026 北京*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 saas 平台 租户 数据 隔离 方法 | ||
本发明公开的saas平台多租户数据隔离方法,涉及计算机技术领域,通过解析appollo分布式配置中心配置的信息并将该信息存储于本地java虚拟机中,接收用户发起的查询请求,获取查询请求对应的租户标识及租户类型,根据租户标识及租户类型,从预设的租户与业务实例之间的匹配规则中获取相应的业务实例,将业务实例写入查询请求对应的SQL语句或该查询请求,执行该查询请求对应的SQL语句或该查询请求,根据预设的业务实例与数据库之间的匹配规则,为查询请求匹配对应的数据库,从该数据库中获取数据,节省了大量人工成本及设备成本,能快速获取租户信息并获取租户要获取的数据,提高了性能及可扩展性。
技术领域
本发明涉及计算机技术领域,具体涉及一种saas平台多租户数据隔离方法。
背景技术
当前流行的Saas平台,其搭建过程必然涉及到对租户数据进行隔离。针对多租户数据隔离的方案,一般情况下分为三种方案:一、仅共享硬件;二、仅共享应用程序,对每个租户使用不同的数据库;三、共享应用程序和数据库。第三种方案为目前主流的多租户数据隔离方案,但该方案需要复杂配置及大量的运维工作,人工及设备成本较高,不能快速定位租户信息,性能较低且灵活性及扩展性较差。
发明内容
为解决现有技术的不足,本发明实施例提供了一种saas平台多租户数据隔离方法,该方法包括以下步骤:
启动SpringBoot框架的启动器starter,解析appollo分布式配置中心配置的信息并将所述信息存储于本地java虚拟机中,其中,所述信息包括预设的租户与业务实例之间的匹配规则、预设的业务实例与数据库之间的匹配规则;
接收用户发起的查询请求,利用SQL语句解析组件或Elasticsearch查询代理组件解析用户发起的查询请求,得到所述查询请求对应的租户标识及租户类型;
根据所述租户标识及所述租户类型,从预设的租户与业务实例之间的匹配规则中获取相应的业务实例;
将所述业务实例写入所述查询请求对应的SQL语句或所述查询请求;
利用Mybatis框架中SQL语句执行组件SqlExecutor,执行所述查询请求对应的SQL语句或利用Elasticsearch查询代理组件中的索引引擎indexEngine,执行所述查询请求;
根据预设的业务实例与数据库之间的匹配规则,为所述查询请求匹配对应的数据库,从所述数据库中获取数据。
优选地,预设的租户与业务实例之间的匹配规则的创建过程包括:
利用appollo分布式配置中心,为各个业务实例设置相应的标识;
利用appollo分布式配置中心,为各个租户设置相应的类型、标识;
根据业务实例的标识、租户的标识,将业务实例与租户相关联,生成预设的租户与业务实例之间的匹配规则。
优选地,预设的业务实例与数据库之间的匹配规则的创建过程包括:
利用appollo分布式配置中心,设置各个业务实例的类型;
根据数据库的类型、业务实例的类型,将数据库与业务实例相关联,生成预设的业务实例与数据库之间的匹配规则。
优选地,一个业务实例对应不同类型的租户,同一类型的租户对应同一类型的数据库及不同的租户标识。
本发明实施例提供的saas平台多租户数据隔离方法具有以下有益效果:
(1)无需复杂配置及运维工作即可完成租户组件集成过滤,简单易用,能够节省大量人工成本及设备成本;
(2)能快速获取租户信息并获取租户要获取的数据,性能较高;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京首汽智行科技有限公司,未经北京首汽智行科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010847607.9/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置