私は、誰かが次のことについていくつかの提案をしてくれることを望んでいました。最近、同様の(っぽい)問題でここで本当に大きな助けがあり、それを拡張したかったのです。
私は現在、次のようなgraphxを使用して構築されたネットワークを持っています(頂点とエッジの数がはるかに多い場合のみ)
頂点 ID、属性 1、属性 2
1001、2、0
1002、1、0
1003、2、1
1004、3、2
1006, 4, 0
1007、5、1
エッジ ソース、宛先、属性
1001、1002、7
1002、1003、7
1003、1004、7
1004、1005、3
1002、1006、5
1006、1007、5
頂点ごとに、エッジ属性に基づいて接続された各コンポーネントにチェーンを下ってメッセージを送信し、チェーンに沿って別の頂点属性に一致する頂点属性の数をカウントします。
例: 頂点 1004 の接続エッジ属性は 7 であるため、エッジ属性 7 によって 1004 に接続されている各コンポーネントを識別したい場合、この場合は 1001->1002->1003->1004 となり、パターン1004 (この場合は 2) から 2 番目の頂点属性を、チェーンに沿って一致する最初の頂点属性に一致させます (この場合、1003 および 1001 と一致し、合計カウントが 2 になります)。
私は解決策が各頂点になると考えていました:
- それに接続するすべてのエッジ プロパティによるサブグラフ
- これらのサブグラフのそれぞれに沿って、一致するすべての頂点プロパティをカウントします
- 各頂点の最後にカウントを生成します
このタスクを達成するための最善の方法についての提案は大歓迎です。たとえば、Pregel のようなものを使用してこれを行うことは可能でしょうか?