[发明专利]一种提高Janusgraph路径探索性能的方法在审
申请号: | 201910973922.3 | 申请日: | 2019-10-14 |
公开(公告)号: | CN110765319A | 公开(公告)日: | 2020-02-07 |
发明(设计)人: | 解一豪;周庆勇;赵振修 | 申请(专利权)人: | 浪潮软件股份有限公司 |
主分类号: | G06F16/901 | 分类号: | G06F16/901;G06F16/903 |
代理公司: | 37100 济南信达专利事务所有限公司 | 代理人: | 姜明 |
地址: | 250100 山东*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 路径探索 遍历 遍历算法 存储内存 大数据量 方法使用 广度优先 目标节点 实时计算 应用数据 图计算 原节点 响应 迭代 消耗 挖掘 | ||
1.一种提高Janusgraph路径探索性能的方法,其特征在于:该方法使用双向广度优先遍历算法,将从原节点出发逐步向目标节点过度的过程改为从两个节点同时出发进行遍历,所需要遍历的顶点总数变少,减少迭代的次数。
2.根据权利要求1所述的提高Janusgraph路径探索性能的方法,其特征在于:具体包括以下步骤:
S1、定义集合v1、集合v2;
S2、通过源节点和目标节点遍历源顶点和目标顶点,取出源节点装入集合v1,取出目标节点装入集合v2;
S3、遍历集合v1,取出每个顶点v;
S4、扩展顶点v,找到节点路径,将符合的顶点装入v1a,判断v1a与v2是否存在重合交集,若存在跳转至S9,否则执行步骤S5;
S5、用v1a的内容代替v1;
S6、遍历集合v2,取出每个顶点v;
S7、扩展顶点v,找到节点路径,将符合的顶点装入v2a,判断v2a与v1是否存在重合交集,若存在跳转至S9,否则执行步骤S8;
S8、用v2a的内容代替v2;
S9、跳转至步骤S4;
S10、将v2的节点路径与v1做连接,输出路径结果。
3.根据权利要求2所述的提高Janusgraph路径探索性能的方法,其特征在于:该方法中采用并行节点扩展,将双向广度优先遍历对顶点扩展步骤S4和步骤S7进行并行操作,将多个节点的展开作为多个任务同时执行。
4.根据权利要求3所述的提高Janusgraph路径探索性能的方法,其特征在于:限制路径长度,为查询路径设置最大步长,超过最大步长后还未找到节点的路径时算作路径不存在。
5.根据权利要求4所述的提高Janusgraph路径探索性能的方法,其特征在于:超级节点和热数据优化,存在数量较多的边的节点的边在内存做额外的缓存。
6.根据权利要求5所述的提高Janusgraph路径探索性能的方法,其特征在于:对超级节点和热数据进行缓存,减少对图数据库的访问和占用时间。
7.根据权利要求6所述的提高Janusgraph路径探索性能的方法,其特征在于:步骤S4中,扩展顶点v,如果为有向图,根据方向对边过滤,找到节点路径,将符合的顶点装入v1a,判断v1a与v2是否存在重合交集。
8.根据权利要求7所述的提高Janusgraph路径探索性能的方法,其特征在于:步骤S7中,扩展顶点v,如果为有向图,根据方向对边做方向过滤,找到节点路径,将符合的顶点装入v2a,判断v2a与v1是否存在重合交集。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浪潮软件股份有限公司,未经浪潮软件股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910973922.3/1.html,转载请声明来源钻瓜专利网。