nebula Graph 2.6 关于go语句查询边的计算的问题

  • nebula 版本:2.6.0
  • 部署方式:分布式
  • 安装方式: Docker
  • 是否为线上版本:Y
  • 硬件信息
    • 磁盘 200G
    • CPU、内存信息
      4核cpu 内存16G
  • 问题的具体描述
    现在go steps 查询语句的计算方式怎么使用才能符合我们的业务场景
    我们有一个相似度的边属性 用来比较两张图片的相似度
    现在 点a 到b的相似度为0.8 点b到点c的相似度为0.99 现在用go语句查询的结果go 1 to 2 steps a over similar where similar.similar_rate >=0.99 YIELD properites($$).id, properites(edge); 按照我们的业务场景 where语句会对查询每条边都进行过滤 即 a-b 相似度为0.8不满足条件 就不会走到c 但是结果出现确是 a-c similar_rate是0.99 即采用了b到c的相似度 有什么解决办法吗?

这个语句会吧1到2步的结果做并集,然后再过滤

有没有办法就是先做过滤再做并集

分成两个go语句

go ... where | go  from $-.xxx

那就是每一条都过滤完再下一跳

但是每次要增加跳数都要增加一条语句 这效率很低

是的,不过好像没有其他办法

它的图计算是怎么样的,再走这个路径的时候能够加限制吗 或者合并的时候边的属性取路径的最低值

不行,是先扩展再过滤

也就是我必须得等扩展完才能在做其他得操作 这样对于场景来说就不可以接受 毕竟我是要找一堆相同的图片关系,而不是相似的图片关系

此话题已在最后回复的 30 天后被自动关闭。不再允许新回复。