图数据库子图遍历与性能优化
1. 构建子图遍历
在明确相关基础后,我们可以对构建子图遍历。通过分析所需完成的步骤,可得到以下遍历代码:
sg.V().
hasLabel('review').
out('about').
where(out('within').has('city','name',city_name))
该遍历会输出类似如下结果:
==>v[254]
...
==>v[184]
这里需要注意的是,我们使用 sg (子图的 GraphTraversalSource ) 而非通常遍历中的 g 变量。
以下遍历可以回答“基于我朋友的评价评分,这个地区对我来说最好的餐厅有哪些?”这一问题。我们只需将结果格式化为合理的输出即可。之前我们已经实现过相关代码,因此可以复用。将投影代码与遍历代码结合,得到如下代码:
sg.V().hasLabel('review').
out('about').
where(out('within').has('city','name',city_name)).
where(__.in('about')).
group().
by(identity()).
by(
超级会员免费看
订阅专栏 解锁全文

2024

被折叠的 条评论
为什么被折叠?



