提高in()out()和()

时间:2016-01-23 14:44:52

标签: graph orientdb orientdb-2.1

考虑我们有Vertex User,Post和Edge FriendsWith,HasPost。 FriendsWith可以在两个方向上进出(通常是在两个用户之外或之间)。用户是Post的所有者。

我们有60万用户和7500万帖子

我用以在查询后获得用户朋友:

SELECT both('FriendsWith') FROM #12:1

并获得朋友帖子

SELECT both('FriendsWith').out('HasPost') FROM #12:1 LIMIT 50

但是如果一个用户有很多朋友(~1000),那么表现并不是最好的(获得朋友约400毫秒,获得帖子约1-5秒)

有没有办法改善这些查询?

谢谢。

更新

select from (select expand(both('FriendsWith').out('HasPost')) from #12:1) LIMIT 50 共找到50个条目。查询在7.08秒内执行。

0 个答案:

没有答案