使用match、lookup、submit job统计某一边的数量,结果不一致

nebula版本是Centos 7.5的3.2.0

如标题所示,分别采用3种方法计算类型为edge_电话的边的总数时,返回结果各不相同,已知采用nebula-import进行导入,原始csv文件共1346条不重复的边
image
image

是先创建索引 ,然后导入的数据吗, 创建完索引后 有没有 rebuild一下索引

有索引,已经rebuild了
image

profile Match (m) -[e:edge_电话]-(n) return count(e) 然后帮忙贴一下










image



image





1、统计 边的数目, 应该使用 MATCH (m)-[e:edge_电话]->(n) RETURN count(e) 这样的语法,如果无向的话,是先将 对应边的起始点和目的点 做一个 union ,然后 从这个union后的 点出发,这个和 统计边的数量语义不符合

2、目前看到的是 edge_电话 这种类型的边 有437条, 可以交叉验证一下 (1)、submit job stats 然后 看一下stats中edge_电话 的数目,(2)、rebuild edge_电话的索引,然后执行 MATCH (m)-[e:edge_电话]->(n) RETURN count(e), 看看这两个数字是否一样

1、采用MATCH (m)-[e:edge_电话]->(n) RETURN count(e)带方向的查询时,返回437条,
2、但是采用submit job stats时,返回1346条,这二者是不一致的,
3、且我原始的导入的csv文件有1346条边,导入未提示失败


image

索引 rebuild 之后 还是437条吗

重新rebuild之后一致了,但是我导入数据之后也rebuild过,一般什么情况会出现这种问题呢

1、可以导入数据之后的 rebuild 可能失败了,所以需要重新rebuild索引
2、先导入部分数据,然后建立索引,然后再导入部分数据, 如果索引没有rebuild的话,创建索引之前的数据就无法被索引到

好的,谢谢