System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本说明书一个或多个实施例涉及计算机领域,尤其涉及关系网络图的图数据存储方法和装置。
技术介绍
1、关系网络图简称为图。图是一种表示对象之间关联关系的一种结构,它使用顶点和边进行描述。其中,顶点也称为节点,用于表示对象,边也称为连接边,用于表示对象之间的关系。连接边又分为无向连接边和有向连接边,其中,若两个节点之间的连接边没有方向,则这条连接边称为无向连接边;若从一个节点到另一个节点的连接边有方向,则这条连接边称为有向连接边。通常地,节点对应有一项或多项节点属性,连接边对应有一项或多项边属性。节点属性或边属性的具体取值可能属于隐私数据。
2、图分析是在图数据所包含的对象、关系及其属性上进行的一系列复杂计算。随着图数据规模的扩大,图分析的性能常常不能满足需求,而高效的图数据管理方式是改善图分析性能的关键。其中,图数据管理主要依赖于关系网络图的图数据存储。
技术实现思路
1、本说明书一个或多个实施例描述了一种关系网络图的图数据存储方法和装置,能够实现高效的图数据管理,从而提升图分析的性能。
2、第一方面,提供了一种关系网络图的图数据存储方法,所述关系网络图包括节点和节点之间的有向连接边,方法包括:
3、获取所述关系网络图中的任意两个节点之间的连接关系信息;
4、根据所述连接关系信息,采用压缩稀疏行的方式存储所述关系网络图中各个节点标识与其出边连接节点的节点标识之间的第一对应关系,采用压缩稀疏列的方式存储各个节点标识与其入边连接节点的节点标识
5、获取所述关系网络图中的属性信息集合,所述属性信息集合包括若干项节点属性、若干项边属性和/或若干项临时信息;
6、将所述属性信息集合中同一项属性的各个属性值,采用列存储的方式存储在连续的空间里。
7、在一种可能的实施方式中,所述连接关系信息包括以下之一:邻接矩阵、邻接表。
8、在一种可能的实施方式中,所述采用压缩稀疏行的方式存储所述关系网络图中各个节点标识与其出边连接节点的节点标识之间的第一对应关系,包括:
9、将各个目标节点的节点标识存储在第一数组中;其中,对应于同一节点的各个目标节点的节点标识连续排列;
10、将第一数组中的同一节点的排在第一个的目标节点的位置索引存储在第二数组中。
11、进一步地,所述关系网络图中的各个节点的节点标识从初始数值开始顺序增加1,所述第二数组中按照节点的节点标识的数值顺序存储不同节点对应的位置索引;所述方法还包括:
12、当查询第一节点的出边对应的目标节点时,根据第一节点的节点标识,从第二数组中获取第一节点的排在第一个的目标节点的第一位置索引,以及获取第二节点的排在第一个的目标节点的第二位置索引;其中,第二节点的节点标识比第一节点的节点标识增加1;
13、根据所述第一位置索引和所述第二位置索引,确定第一索引集合;其中,所述第一索引集合包括第一位置索引和第二位置索引之间的各索引,不包括第二位置索引;
14、从所述第一数组中获取所述第一索引集合中的各索引对应的目标节点的标识,将其作为第一节点的出边对应的各目标节点的标识。
15、在一种可能的实施方式中,所述采用压缩稀疏列的方式存储各个节点标识与其入边连接节点的节点标识之间的第二对应关系,包括:
16、将各个起始节点的节点标识存储在第三数组中;其中,对应于同一节点的各个起始节点的节点标识连续排列;
17、将第三数组中的同一节点的排在第一个的起始节点的位置索引存储在第四数组中。
18、进一步地,所述关系网络图中的各个节点的节点标识从初始数值开始顺序增加1,所述第四数组中按照节点的节点标识的数值顺序存储不同节点对应的位置索引;所述方法还包括:
19、当查询第一节点的入边对应的起始节点时,根据第一节点的节点标识,从第四数组中获取第一节点的排在第一个的起始节点的第三位置索引,以及获取第二节点的排在第一个的起始节点的第四位置索引;其中,第二节点的节点标识比第一节点的节点标识增加1;
20、根据所述第三位置索引和所述第四位置索引,确定第二索引集合;其中,所述第二索引集合包括第三位置索引和第四位置索引之间的各索引,不包括第四位置索引;
21、从所述第三数组中获取所述第二索引集合中的各索引对应的起始节点的标识,将其作为第一节点的入边对应的各起始节点的标识。
22、在一种可能的实施方式中,所述采用列存储的方式存储在连续的空间里,包括:
23、根据目标项属性的配置信息,提取是否存储到磁盘的指示信息;
24、若所述指示信息为存储到磁盘,则将所述目标项属性的各个属性值存储到磁盘的连续的空间里;
25、若所述指示信息为不存储到磁盘,则将所述目标项属性的各个属性值存储到内存的连续的空间里。
26、在一种可能的实施方式中,所述方法还包括:
27、对所述关系网络图进行数据分析的过程中,根据所述第一对应关系获取第一节点的出边连接节点的节点标识,或者,根据所述第二对应关系获取第二节点的入边连接节点的节点标识。
28、第二方面,提供了一种关系网络图的图数据存储装置,所述关系网络图包括节点和节点之间的有向连接边,装置包括:
29、第一获取单元,用于获取所述关系网络图中的任意两个节点之间的连接关系信息;
30、第一存储单元,用于根据所述第一获取单元获取的连接关系信息,采用压缩稀疏行的方式存储所述关系网络图中各个节点标识与其出边连接节点的节点标识之间的第一对应关系,采用压缩稀疏列的方式存储各个节点标识与其入边连接节点的节点标识之间的第二对应关系;
31、第二获取单元,用于获取所述关系网络图中的属性信息集合,所述属性信息集合包括若干项节点属性、若干项边属性和/或若干项临时信息;
32、第二存储单元,用于将所述第二获取单元获取的属性信息集合中同一项属性的各个属性值,采用列存储的方式存储在连续的空间里。
33、第三方面,提供了一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行第一方面的方法。
34、第四方面,提供了一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现第一方面的方法。
35、通过本说明书实施例提供的方法和装置,首先获取关系网络图中的任意两个节点之间的连接关系信息;然后根据所述连接关系信息,采用压缩稀疏行的方式存储所述关系网络图中各个节点标识与其出边连接节点的节点标识之间的第一对应关系,采用压缩稀疏列的方式存储各个节点标识与其入边连接节点的节点标识之间的第二对应关系;接着获取所述关系网络图中的属性信息集合,所述属性信息集合包括若干项节点属性、若干项边属性和/或若干项临时信息;最后将所述属性信息集合中同一项属性的各个属本文档来自技高网...
【技术保护点】
1.一种关系网络图的图数据存储方法,所述关系网络图包括节点和节点之间的有向连接边,所述方法包括:
2.如权利要求1所述的方法,其中,所述连接关系信息包括以下之一:邻接矩阵、邻接表。
3.如权利要求1所述的方法,其中,所述采用压缩稀疏行的方式存储所述关系网络图中各个节点标识与其出边连接节点的节点标识之间的第一对应关系,包括:
4.如权利要求3所述的方法,其中,所述关系网络图中的各个节点的节点标识从初始数值开始顺序增加1,所述第二数组中按照节点的节点标识的数值顺序存储不同节点对应的位置索引;所述方法还包括:
5.如权利要求1所述的方法,其中,所述采用压缩稀疏列的方式存储各个节点标识与其入边连接节点的节点标识之间的第二对应关系,包括:
6.如权利要求5所述的方法,其中,所述关系网络图中的各个节点的节点标识从初始数值开始顺序增加1,所述第四数组中按照节点的节点标识的数值顺序存储不同节点对应的位置索引;所述方法还包括:
7.如权利要求1所述的方法,其中,所述采用列存储的方式存储在连续的空间里,包括:
8.如
9.一种关系网络图的图数据存储装置,所述关系网络图包括节点和节点之间的有向连接边,所述装置包括:
10.一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行权利要求1-8中任一项的所述的方法。
11.一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现权利要求1-8中任一项的所述的方法。
...【技术特征摘要】
1.一种关系网络图的图数据存储方法,所述关系网络图包括节点和节点之间的有向连接边,所述方法包括:
2.如权利要求1所述的方法,其中,所述连接关系信息包括以下之一:邻接矩阵、邻接表。
3.如权利要求1所述的方法,其中,所述采用压缩稀疏行的方式存储所述关系网络图中各个节点标识与其出边连接节点的节点标识之间的第一对应关系,包括:
4.如权利要求3所述的方法,其中,所述关系网络图中的各个节点的节点标识从初始数值开始顺序增加1,所述第二数组中按照节点的节点标识的数值顺序存储不同节点对应的位置索引;所述方法还包括:
5.如权利要求1所述的方法,其中,所述采用压缩稀疏列的方式存储各个节点标识与其入边连接节点的节点标识之间的第二对应关系,包括:
6.如权利要求5所述的方法,...
【专利技术属性】
技术研发人员:曾馨檀,刘永超,
申请(专利权)人:支付宝杭州信息技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。