System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种多租户数据访问方法、装置、电子设备及存储介质制造方法及图纸_技高网

一种多租户数据访问方法、装置、电子设备及存储介质制造方法及图纸

技术编号:43052888 阅读:7 留言:0更新日期:2024-10-22 14:35
本申请提供一种多租户数据访问方法、装置、电子设备及存储介质,所述方法包括:获得访问请求,访问请求包括租户的租户标识;根据租户标识在图数据库中对租户对应的数据进行访问;图数据库包括多个租户对应的节点,图数据库是通过在节点对应的节点名称中增加租户标识,并根据租户标识对节点进行分组获得;其中,每一分组的节点用于存储对应的租户的数据。多租户数据持久化在一个图数据库实例中,可充分利用资源。租户的数据量影响被限制在自身的分组节点类型实例以内,不影响其他租户的节点类型实例访问。通过租户标识对数据进行访问,实现对各租户的数据的隔离,在避免数据被泄露,提高数据存储的安全性的同时,提高了资源利用率,节约成本。

【技术实现步骤摘要】

本申请涉及数据处理领域,具体而言,涉及一种多租户数据访问方法、装置、电子设备及存储介质


技术介绍

1、多租户管理技术,是云平台使能技术之一,通过虚拟化、数据库隔离、容器等技术实现不同租户应用和服务的隔离,保护其隐私与安全。为了保证各租户的数据安全,目前的多租户的数据存储方法为部署多套neo4j图数据库实例,分别在不同实例中储存单一租户的数据方式实现对租户数据的隔离。这种方式增大了数据库的安装数量,随之增加了存储数据的成本,且数据库资源利用率较低。


技术实现思路

1、本专利技术实施例的目的在于一种多租户数据访问方法、装置、电子设备及存储介质,不同租户的数据分别存储在不同的分组节点类型中,通过租户标识对数据进行访问,每一租户仅能够访问各自节点中存储的数据,提高了资源利用率。

2、第一方面,本申请实施例提供了一种多租户数据访问方法,包括:获得访问请求,访问请求包括租户的租户标识;根据租户标识在图数据库中对租户对应的数据进行访问;图数据库包括多个租户对应的节点,图数据库是通过在节点对应的节点名称中增加租户标识,并根据租户标识对节点进行分组获得;其中,每一分组的节点用于存储租户标识对应的租户的数据。

3、在上述的实现过程中,多租户数据持久化在一个图数据库实例中,可充分利用资源,不同租户的数据分别存储在不同的分组节点类型中,且根据租户标识对节点进行分组,一个租户对应一个分组,对图数据库的节点进行更高效的管理。租户的数据量影响被限制在自身的分组节点类型实例以内,不影响其他租户的节点类型实例访问。通过租户标识对数据进行访问,每一租户仅能够访问各自节点中存储的数据,无法访问其他租户的数据,实现对各租户的数据的隔离,在避免数据被泄露,提高数据存储的安全性的同时,提高了资源利用率,节约成本。

4、可选的,在本申请实施例中,节点包括节点标签和关系标签;在根据租户标识在图数据库中对租户对应的数据进行访问之前,方法还包括:将每一租户的租户标识分别添加至对应的节点的节点标签和节点的关系标签中,节点用于存储与租户标识对应的租户的数据;通过租户标识对节点进行分组,获得分组数据;其中,每一分组对应一个租户;根据节点的节点标签、关系标签以及分组数据,生成图数据库。

5、在上述的实现过程中,多租户数据持久化在同一图数据库实例中,将节点和节点对应的关系类型进行分组,一个租户对应一个分组,租户下的数据按租户分组分别存储在不同的节点分组中,提高对数据库中的利用率。通过分组的方式对租户的数据进行隔离,部分组户数据量增加时,降低对其他租户性能的影响。

6、可选的,在本申请实施例中,在将每一租户的租户标识分别添加至节点的节点标签和关系标签中之后,方法还包括:根据租户标识,对节点标签创建唯一性索引。

7、在上述的实现过程中,节点实例的主键需创建唯一性索引,保证各租户下节点类型实例的主键的唯一性。以及通过创建唯一性索引,可以保证数据库表中每一行数据的唯一性,通过对租户对应的节点分别创建索引,大大加快数据的检索速度,提高数据的安全性。

8、可选的,在本申请实施例中,获得访问请求,包括:获得租户的初始访问请求,初始访问请求包括查询语句;通过动态代理方法,将查询语句和租户的租户标识进行拼接,生成访问请求。

9、在上述的实现过程中,在对查询语句拼接上租户标识之后,每一租户只能访问该租户对应的分组中的数据,而不能访问其他租户的数据,实现对各租户的数据进行隔离,避免租户的数据被泄露的问题,提高数据的安全性。

10、可选的,在本申请实施例中,其中,每一分组对应的节点中存储的数据,仅由分组对应的租户进行访问。

11、在上述的实现过程中,每一租户只能访问该租户对应的分组中的数据,而不能访问其他租户的数据,实现对各租户的数据进行隔离,避免租户的数据被泄露的问题,提高数据的安全性。

12、可选的,在本申请实施例中,其中,每一分组中节点的属性字段是相同的。

13、在上述的实现过程中,每一租户都有系统定义的全部节点类型,即一整套节点。每一分组中节点的属性字段是相同的,节点的属性字段包括节点定义的数据类型等。

14、可选的,在本申请实施例中,方法还包括:若访问请求中不包括租户标识,则无法对租户对应的数据进行访问;访问请求包括查询节点实例、创建节点实例和修改节点实例。

15、在上述的实现过程中,每一租户只能访问该租户对应的分组中的数据,若查询语句没有拼接标识则无法对数据进行访问,避免租户的数据被泄露的问题,提高数据的安全性。

16、第二方面,本申请实施例还提供了一种多租户数据访问装置,包括:获得模块,用于获得访问请求,访问请求包括租户的租户标识;访问模块,用于根据租户标识在图数据库中对租户对应的数据进行访问;图数据库包括多个租户对应的节点,图数据库是通过在节点对应的节点名称中增加租户标识,并根据租户标识对节点进行分组获得;其中,每一分组的节点用于存储租户标识对应的租户的数据。

17、第三方面,本申请实施例还提供了一种电子设备,包括:处理器和存储器,存储器存储有处理器可执行的机器可读指令,机器可读指令被处理器执行时执行如上面描述的方法。

18、第四方面,本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上面描述的方法。

19、采用本申请提供多租户数据访问方法、装置、电子设备及存储介质,多租户数据持久化在一个图数据库实例中,可充分利用资源,不同租户的数据分别存储在不同的分组节点类型中,且根据租户标识对节点进行分组,一个租户对应一个分组,租户的数据量影响被限制在自身的分组节点类型实例以内,不影响其他租户的节点类型实例访问。通过租户标识对数据进行访问,每一租户仅能够访问各自节点中存储的数据,无法访问其他租户的数据,实现对各租户的数据的隔离,避免数据被泄露,提高数据存储的安全性。

本文档来自技高网...

【技术保护点】

1.一种多租户数据访问方法,其特征在于,包括:

2.根据权利要求1所述的方法,其特征在于,所述节点包括节点标签和关系标签;在根据所述租户标识在图数据库中对所述租户对应的数据进行访问之前,所述方法还包括:

3.根据权利要求2所述的方法,其特征在于,在将每一所述租户的租户标识分别添加至所述节点的节点标签和关系标签中之后,所述方法还包括:

4.根据权利要求1所述的方法,其特征在于,所述获得访问请求,包括:

5.根据权利要求1所述的方法,其特征在于,其中,每一分组对应的节点中存储的数据,仅由所述分组对应的租户进行访问。

6.根据权利要求1任一所述的方法,其特征在于,其中,所述每一分组中节点的属性字段是相同的。

7.根据权利要求1-6任一所述的方法,其特征在于,所述方法还包括:

8.一种多租户数据访问装置,其特征在于,包括:

9.一种电子设备,其特征在于,包括:处理器和存储器,所述存储器存储有所述处理器可执行的机器可读指令,所述机器可读指令被所述处理器执行时执行如权利要求1至7任一所述的方法。</p>

10.一种计算机可读存储介质,其特征在于,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如权利要求1至7任一所述的方法。

...

【技术特征摘要】

1.一种多租户数据访问方法,其特征在于,包括:

2.根据权利要求1所述的方法,其特征在于,所述节点包括节点标签和关系标签;在根据所述租户标识在图数据库中对所述租户对应的数据进行访问之前,所述方法还包括:

3.根据权利要求2所述的方法,其特征在于,在将每一所述租户的租户标识分别添加至所述节点的节点标签和关系标签中之后,所述方法还包括:

4.根据权利要求1所述的方法,其特征在于,所述获得访问请求,包括:

5.根据权利要求1所述的方法,其特征在于,其中,每一分组对应的节点中存储的数据,仅由所述分组对应的租户进行访问。

【专利技术属性】
技术研发人员:崔光浩
申请(专利权)人:北京神州泰岳软件股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1