图数据库的数据存储方法及装置与流程

文档序号:37829582发布日期:2024-04-30 17:39阅读:38来源:国知局
图数据库的数据存储方法及装置与流程

本说明书一个或多个实施例涉及数据处理领域,尤其涉及一种图数据库的数据存储方法及装置。


背景技术:

1、在一些图数据库的存储引擎中,为了方便数据查询,通?;峤际菘庵械耐际?,存储在该存储引擎所管理的内存中。由于内存的存储空间有限,因此采用这种处理方式,势必会限制图数据库的数据规模,使得图数据库无法应对大规模的图数据分析的场景。

2、为了解决这个问题,在相关技术中,可以将所有的图数据均存储到存储引擎所管理的磁盘中,只在内存中保存图数据在磁盘中的磁盘地址。然而,采用这种处理方式,在进行数据查询的过程中,需要频繁针对磁盘进行io访问来读取数据,严重影响了查询的效率。


技术实现思路

1、有鉴于此,本说明书一个或多个实施例提供一种图数据库的数据存储方法及装置,以解决相关技术中存在的问题。

2、为实现上述目的,本说明书一个或多个实施例提供技术方案如下:

3、根据本说明书一个或多个实施例的第一方面,提出了一种图数据库的数据存储方法,所述方法包括:

4、获取待存储的图数据,所述图数据包含与图数据对象对应的检索信息和属性信息;其中,所述检索信息用于针对所述图数据进行检索查询;

5、将所述属性信息保存到与所述图数据库对应的存储引擎所管理的磁盘中,并获取所述属性信息在所述磁盘中的存储位置;

6、将与所述图数据对象对应的检索信息和所述存储位置进一步保存到所述存储引擎所管理的内存中,以使用户基于所述内存中的检索信息对所述图数据发起查询。

7、根据本说明书一个或多个实施例的第二方面,提出了一种图数据库的数据存储装置,包括:

8、数据获取???,用于获取待存储的图数据,所述图数据包含与图数据对象对应的检索信息和属性信息;其中,所述检索信息用于针对所述图数据进行检索查询;

9、磁盘???,用于将所述属性信息保存到与所述图数据库对应的存储引擎所管理的磁盘中,并获取所述属性信息在所述磁盘中的存储位置;

10、内存???,用于将与所述图数据对象对应的检索信息和所述存储位置进一步保存到所述存储引擎所管理的内存中,以使用户基于所述内存中的检索信息对所述图数据发起查询。

11、根据本说明书一个或多个实施例的第三方面,提出了一种电子设备,包括:

12、处理器;

13、用于存储处理器可执行指令的存储器;

14、其中,所述处理器通过运行所述可执行指令以实现如第一方面所述的方法。

15、根据本说明书一个或多个实施例的第四方面,提出了一种计算机可读存储介质,其上存储有计算机指令,该指令被处理器执行时实现如第一方面所述方法的步骤。

16、基于上述实施例,一方面,通过在存储引擎所管理的内存中保存与图数据对象对应的检索信息和图数据中包含的属性信息在磁盘中的存储位置,而将需要占用大量存储空间的图数据中包含的属性信息保存到磁盘中,使得用户可以基于所述检索信息在内存中就可以针对所述图数据快速的发起查询,从而可以降低访问磁盘读取图数据的概率,提高对图数据的查询效率;另一方面,由于存储引擎所管理的内存中并不需要存储图数据包含的属性信息,只需要存储占用少量存储空间的检索信息和存储位置,因此并不会限制图数据库的数据规模,使得该图数据库可以应对大规模的图数据分析场景。



技术特征:

1.一种图数据库的数据存储方法,其特征在于,所述方法包括:

2.根据权利要求1所述的方法,其特征在于,所述存储引擎所管理的内存中包含预先定义的用于存储图数据的内存对象;

3.根据权利要求2所述的方法,其特征在于,所述图数据对象包括节点和边;所述图数据包含与所述节点对应的节点数据和与所述边对应的边数据;所述节点数据包含节点检索信息和节点属性信息;所述边数据包含边检索信息和边属性信息。

4.根据权利要求3所述的方法,其特征在于,所述存储引擎所管理的内存中预先定义了与所述节点对应的第一内存对象和与所述边对应的第二内存对象;

5.根据权利要求4所述的方法,其特征在于,所述内存对象为数组;所述存储引擎所管理的内存中预先定义的与所述节点对应的第一数组的数组下标为所述节点的节点标识;所述存储引擎所管理的内存中预先定义的与所述边对应的第二数组的数组下标为所述边的起始节点的节点标识;其中,所述节点标识为针对与节点对应的标识数据进行规范化处理之后得到的数值型的id;

6.根据权利要求5所述的方法,其特征在于,所述第一数组包含第一数组元素和第二数组元素,第一数组元素用于存储所述节点对应的节点检索信息,所述第二数组元素用于存储所述第一存储位置;所述第一存储位置包含所述磁盘中用于保存所述节点的节点属性信息的第一文件的文件标识和所述节点属性信息在所述第一文件中的偏移量;所述第二数组包含与所述起始节点连接的至少一个边分别对应的至少一个第三数组元素,所述第三数组元素用于存储所述边检索信息和第二存储位置;所述第二存储位置包含所述磁盘中用于保存所述边的边属性信息的第二文件的文件标识和所述边属性信息在所述第二文件中的偏移量;其中,所述文件标识为进行规范化处理之后得到的数值型的id;所述偏移量为进行规范化处理之后得到的数值型的id。

7.根据权利要求6所述的方法,其特征在于,所述节点检索信息包含节点标签的标签标识;所述边检索信息包含边标签的标签标识;第一数组元素用于存储所述节点对应的节点标签的标签标识;所述第三数组元素用于存储所述边对应的边标签的标签标识和第二存储位置。

8.根据权利要求7所述的方法,其特征在于,所述磁盘中保存有与不同的边标签分别对应的多个第二文件;

9.根据权利要求7或8所述的方法,其特征在于,所述方法还包括:

10.根据权利要求9所述的方法,其特征在于,所述节点检索信息还包括与所述节点的维护时刻对应第一时间戳;所述第一数组元素中还存储了所述第一时间戳;所述第一时间戳为针对与时间对应的标识数据进行规范化处理之后得到的数值型的id;

11.根据权利要求9所述的方法,其特征在于,在从所述内存保存的第一数组中查询到所述第一目标数组之后,所述方法还包括:

12.根据权利要求9所述的方法,其特征在于,在从所述第二目标数组包含的所述第三数组元素中查询到所述第三目标数组元素之后,所述方法还包括:

13.一种图数据库的数据存储装置,其特征在于,包括:

14.一种电子设备,其特征在于,包括:

15.一种计算机可读存储介质,其特征在于,其上存储有计算机指令,该指令被处理器执行时实现如权利要求1-12中任一项所述方法的步骤。


技术总结
本说明书一个或多个实施例提供一种图数据库的数据存储方法及装置。该方法包括:获取待存储的图数据,所述图数据包含与图数据对象对应的检索信息和属性信息;其中,所述检索信息用于针对所述图数据进行检索查询;将所述属性信息保存到与所述图数据库对应的存储引擎所管理的磁盘中,并获取所述属性信息在所述磁盘中的存储位置;将与所述图数据对象对应的检索信息和所述存储位置进一步保存到所述存储引擎所管理的内存中,以使用户基于所述内存中的检索信息对所述图数据发起查询。

技术研发人员:吴涛
受?;さ募际跏褂谜撸?/b>支付宝(杭州)信息技术有限公司
技术研发日:
技术公布日:2024/4/29
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1
imtoken助记词怎么填-imtoken钱包没有收益-imtoken矿工费太贵了-im钱包官网:token.im