我正在开发一个应用程序,我需要在其中显示两个人之间的关系路径。
在我的应用程序中,我有用户的 Facebook、Twitter、Linked In 和其他社交网络帐户数据。我有我的用户朋友/关注/连接个人资料。并从我的应用程序用户搜索朋友[或随机人的朋友的朋友]。在我的 neo4j 中,我正在搜索我的用户的 1 度联系人 [朋友],然后在我的朋友的朋友列表中和 [2 度] , 与 2 度好友[3 度] 相同的搜索。最后搜索到的人名的结果集合将显示连接路径 [在好友之间]
示例:搜索 Mark Nevil 结果:使用我的算法
路径 1 我---->我的“我的 FB”朋友 [将其命名为 B]----->B 的已链接朋友 [C] ----->将 Nevil 标记为 [C] 的 Twitter 朋友。
我有这样的道路-->马克·内维尔。因此,对于将来,我需要将此类路径存储在某个地方[可能在 MongoDB 中,或者请建议一个好的路径]。并且希望在数据库中添加朋友时更新这些路径
当用户查询时,此搜索会在 DB 上自由运行。但这需要时间,并且要一次又一次地计算相同的搜索路径。
请建议存储路径的好方法或任何算法来执行此类过程。