私は、大きなグラフ (大きすぎてメモリに収まらない) で RandomWalk を使用するプロジェクトに取り組んでいます。networkx を使用して Python でコーディングしましたが、すぐにグラフが大きくなりすぎてメモリに収まらなくなり、分散システムに切り替える必要があることに気付きました。だから、私は次のことを理解しています:
- そのようなグラフデータベースを使用する必要があります(Titan、neo4jなど)
- hadoop 上の Apache Giraph/spark 上の graphx などのグラフ処理フレームワーク。
まず、Python でコーディングを続けるのに十分な API はありますか、それとも Java に切り替える必要がありますか?
第二に、Random Walk アルゴリズムを実装するために (Giraph または Graphx のいずれかで) トラバーサルのカスタム関数を作成する方法に関する正確なドキュメントを見つけることができませんでした。