本发明实施例涉及云计算,尤其涉及一种数据存储系统、方法、数据获取方法及相关装置。
背景技术:
1、saas(software as a service,软件即服务)是新的软件应用模式,它以软件租用、在线使用的方式提供服务,这种服务随着软件版本的更新随时更新,给租户最新最好的体验,租户无需进行任何维护和升级便可以根据自己的实际需求,订购所需的应用软件服务,因此,在同一saas化产品,会有很多的租户。
2、为了保证租户的数据安全,需要保证个租户的数据之间的隔离,而随着租户数据的增多,以及安全性要求的提高,需要进行隔离方案的调整。
3、因此,如何满足租户对于不同级别的隔离方案的需求,就成为本领域技术人员亟需解决的技术问题。
技术实现思路
1、本发明实施例解决的技术问题是如何满足租户对于不同级别的隔离方案的需求。
2、为解决上述问题,本发明实施例提供如下技术方案。
3、第一方面,本发明实施例提供一种数据存储系统,包括:
4、路由信息表,用于存储租户的数据与存储区域的对应关系,所述对应关系包括租户与分区的第一对应关系、所述租户与物理机的第二对应关系以及所述租户与物理机集群的第三对应关系;
5、分区,用于根据所述第一对应关系,存储所述租户的数据;
6、物理机,用于根据所述第二对应关系,存储所述租户的数据;
7、物理机集群,用于根据所述第三对应关系,存储所述租户的数据。
8、第二方面,本发明实施例还提供一种数据存储方法,应用于如第一方面任一项所述的数据存储系统,包括:
9、获取将数据存储目标租户的租户数据存储至指定存储区域的存储请求,所述指定存储区域包括分区、物理机和物理机集群;
10、根据所述指定存储区域的等级,更新所述数据存储系统的路由信息表的对应关系,并将所述租户数据存储至所述指定存储区域。
11、第三方面,本发明实施例还提供一种数据获取方法,应用于如第一方面任一项所述的数据存储系统,包括:
12、接收数据获取目标租户的数据获取请求,所述数据获取请求包括所述数据获取目标租户的租户信息;
13、根据所述租户信息从所述数据存储系统的路由信息表的对应关系获取所述数据获取目标租户的存储区域,所述存储区域包括分区、物理机或物理机集群;
14、从所述存储区域获取所述数据获取目标租户的数据。
15、第四方面,本发明实施例还提供一种数据存储装置,应用于如第一方面任一项所述的数据存储系统,包括:
16、存储请求获取单元,适于获取将数据存储目标租户的租户数据存储至指定存储区域的存储请求,所述指定存储区域包括分区、物理机和物理机集群;
17、数据存储单元,适于根据所述指定存储区域的等级,更新所述数据存储系统的路由信息表的对应关系,并将所述租户数据存储至所述指定存储区域。
18、第五方面,本发明实施例还提供一种数据获取装置,应用于如第一方面任一项所述的数据存储系统,包括:
19、数据获取请求获取单元,适于接收数据获取目标租户的数据获取请求,所述数据获取请求包括所述数据获取目标租户的租户信息;
20、存储区域获取单元,适于根据所述租户信息从所述数据存储系统的路由信息表的对应关系获取所述数据获取目标租户的存储区域,所述存储区域包括分区、物理机或物理机集群;
21、数据获取单元,适于从所述存储区域获取所述数据获取目标租户的数据。
22、与现有技术相比,本发明实施例的技术方案具有以下优点:
23、本发明实施例提供的数据存储系统,包括路由信息表、分区、物理机和物理机集群,其中,路由信息表用于存储租户的数据与存储区域的对应关系,所述对应关系包括租户与分区的第一对应关系、所述租户与物理机的第二对应关系以及所述租户与物理机集群的第三对应关系,分区用于根据所述第一对应关系,存储所述租户的数据,物理机用于根据所述第二对应关系,存储所述租户的数据,物理机集群用于根据所述第三对应关系,存储所述租户的数据。
24、这样,本申请所提供的数据存储系统,不仅包括不同等级的存储区域,而且不同等级的存储区域均可以与租户形成对应关系,从而不仅可以实现不同租户之间的隔离,保证租户数据的安全;而且可以根据租户的要求,提供不同级别的隔离,实现租户对于数据隔离的字段隔离、分区隔离、物理机隔离以及物理机集群隔离的需要,实现数据隔离的多样性;进一步地还可以满足租户在不同阶段对于数据隔离等级的变化要求,通过对租户数据的存储区域的改变以及路由信息表的调整,实现对于租户数据的一个隔离等级变化至另一个隔离等级的需要。
25、在一种具体实施方式中,本申请实施例所提供的数据存储系统的所述分区表和所述集群路由表均包括租户标识字段,所述租户标识字段的租户标识用于唯一标记所述数据所属的租户,所述数据存储系统还包括:元数据驱动数据表和元数据表,元数据驱动数据表用于存储所述租户的数据,且基于所述对应关系存储于所述分区、所述物理机或所述物理机集群,包括所述租户标识字段;元数据表,用于存储所述租户的数据的模型定义,存储于元数据数据库,包括租户标识字段。元数据驱动数据表、元数据表以及租户标识字段的使用,对应的查询和写入请求会感应模型的变化,写入时解析字段的值存储到对应的数据表中,查询时解析字段的值还原输出,不仅可以使得各个租户之间的数据的模型升级时互不影响,且不需停机,并且数据存储系统所在的平台升级时,也可以不影响租户的数据模型;而且还可以实现数据的弹性隔离。
1.一种数据存储系统,其中,包括:
2.如权利要求1所述的数据存储系统,其中,所述路由信息表包括:
3.如权利要求2所述的数据存储系统,其中,所述分区表和所述集群路由表均包括租户标识字段,所述租户标识字段的租户标识用于唯一标记所述数据所属的租户,所述数据存储系统还包括:
4.如权利要求3所述的数据存储系统,其中,所述元数据表包括:
5.如权利要求3所述的数据存储系统,其中,所述分区表和所述集群路由表均还包括用于确定所述租户的数据的存储区域的自定义存储区域关联字段,所述第一对应关系包括所述租户的所述自定义存储区域关联字段的实例值与所述分区的第一子对应关系;所述第二对应关系包括所述租户的所述自定义存储区域关联字段的实例值与所述物理机的第二子对应关系;所述第三对应关系包括所述租户的所述自定义存储区域关联字段的实例值与所述物理机集群的第三子对应关系。
6.一种数据存储方法,其中,应用于如权利要求1-5任一项所述的数据存储系统,包括:
7.如权利要求6所述的数据存储方法,其中,所述路由信息表包括用于存储租户与分区的第一对应关系以及租户与物理机的第二对应关系的分区表和用于存储所述租户与物理机集群的第三对应关系的集群路由表;所述根据所述指定存储区域的等级,更新所述数据存储系统的路由信息表的对应关系,包括:
8.如权利要求7所述的数据存储方法,其中,所述分区表和所述集群路由表均包括租户标识字段,所述根据所述指定存储区域的等级,更新分区表的所述数据存储目标租户与所述分区的第一对应关系、所述数据存储目标租户与所述物理机的第二对应关系或所述集群路由表的所述数据存储目标租户与所述物理机集群的第三对应关系,包括:
9.如权利要求6所述的数据存储方法,其中,所述将所述租户数据存储至所述指定存储区域包括:
10.一种数据获取方法,其中,应用于如权利要求1-5任一项所述的数据存储系统,包括:
11.如权利要求10所述的数据获取方法,其中,所述租户信息包括租户标识,所述租户标识用于唯一标记所述数据所属的租户;
12.如权利要求11所述的数据获取方法,其中,所述租户信息还包括自定义存储区域;
13.一种数据存储装置,其中,应用于如权利要求1-5任一项所述的数据存储系统,包括:
14.一种数据获取装置,其中,应用于如权利要求1-5任一项所述的数据存储系统,包括: