[发明专利]一种用于隔离多租户数据的系统、设备和方法有效
申请号: | 201610159148.9 | 申请日: | 2016-03-18 |
公开(公告)号: | CN107203575B | 公开(公告)日: | 2021-02-26 |
发明(设计)人: | 何刚 | 申请(专利权)人: | 北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司 |
主分类号: | G06F16/2455 | 分类号: | G06F16/2455;G06F16/25 |
代理公司: | 北京英赛嘉华知识产权代理有限责任公司 11204 | 代理人: | 王达佐;马晓亚 |
地址: | 100080 北京市海淀区杏石口路6*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 用于 隔离 租户 数据 系统 设备 方法 | ||
本申请公开了一种用于隔离多租户数据的系统、设备和方法。所述方法包括:接收指示租户与数据库之间的对应关系的映射信息;针对所述映射信息中包括的每个数据库创建数据库连接池;基于所述映射信息建立映射表,映射表中的每条记录指示所述映射信息中包括的每个租户与所创建的数据库连接池之间的对应关系;接收租户提出的数据访问请求,并对所述数据访问请求进行解析以获得所述租户的身份标识;根据所述租户的身份标识从所述映射表中获取与所述租户对应的数据库连接池;以及通过所获取的数据库连接池访问与所述租户对应的数据库。本申请的系统、设备和方法能有效地隔离各租户的数据、安全性高、易于维护,并能通过简单操作实现数据库的动态伸缩。
技术领域
本申请涉及计算机技术领域,尤其涉及用于隔离多租户数据的系统、设备和方法。
背景技术
在互联网应用中,为了更好地利用资源,更好地维护管理及降低开发成本,人们通常会对底层资源、基础业务逻辑或者一些行业解决方案进行封装而形成一个业务平台,从而以服务的形式提供给各个接入方。在这种情况下,为了数据安全和数据的互不干扰,必需保证每个接入方只能查看和操作自己的数据,因此数据隔离成为这样的平台必需具备的能力。
在现有的技术方案中,通常采用在表中添加一个枚举字段来标识数据身份或者事先配置好每个租户标识对应的数据库的方式来对数据进行隔离。然而,这样的数据隔离方式具有安全性差、扩展困难、维护成本高、查询数据效率低等缺点。
发明内容
本申请的目的在于提供一种用于隔离多租户数据的系统、设备和方法,来解决背景技术部分提出的技术问题。
在本申请的一个方面,提出了一种用于隔离多租户数据的方法,所述方法包括:接收指示租户与数据库之间的对应关系的映射信息;针对所述映射信息中包括的每个数据库创建数据库连接池;基于所述映射信息建立映射表,所述映射表中的每条记录指示所述映射信息中包括的每个租户与所创建的数据库连接池之间的对应关系;接收租户提出的数据访问请求,并对所述数据访问请求进行解析以获得所述租户的身份标识;根据所述租户的身份标识从所述映射表中获取与所述租户对应的数据库连接池;以及通过所获取的数据库连接池访问与所述租户对应的数据库。
可选地,所述方法还包括接收变更信息并基于所述变更信息更新所述映射表。
可选地,所述接收变更信息并基于所述变更信息更新所述映射表包括:在所述变更信息指示要增加新租户的情况下,针对所述变更信息中所指定的目标数据库建立数据库连接池,并且将所述新租户的身份标识和针对所述目标数据库创建的数据库连接池添加到所述映射表中,其中,所述目标数据库为所述变更信息中所指定的所述新租户要访问的数据库。
可选地,所述接收变更信息并基于所述变更信息更新所述映射表包括:在所述变更信息指示要删除租户的情况下,关闭对应于所述变更信息中指定的要删除的租户的数据库连接池,并从所述映射表中删除与该租户相关的记录。
可选地,所述接收变更信息并基于所述变更信息更新所述映射表包括:在所述变更信息指示要修改租户与数据库之间的对应关系的情况下,将所述映射表中与目标租户有关的记录中的数据库连接池修改为目标数据库连接池,其中,所述目标租户为所述变更信息中所指定的要执行对应关系变更的租户,所述目标数据库连接池为在执行所述变更后所述目标租户将对应的数据库连接池。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司,未经北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201610159148.9/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种运矿车紧急预警制动系统
- 下一篇:双连动刹车系统
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置