問題タブ [spark-graphx]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
2554 参照

scala - Graphx を使用して Apache Spark でクリークまたは強く接続されたコンポーネントを見つける

無向グラフ G = (V, E) のクリーク C は、頂点のサブセット C ⊆ V であり、2 つの異なる頂点がすべて隣接しています。これは、C によって誘導される G のサブグラフが完全であるという条件と等価です。場合によっては、クリークという用語がサブグラフを直接参照することもあります。

だから、私は Apache-Spark で GraphX を使用しています。ドキュメンテーション ガイドを読みましたが、グラフ内の連結成分を見つける方法は提供されていますが、クリーク/強連結成分は提供されていません。Scalaを使用してそれを行うにはどうすればよいですか? ありがとう!

編集: コメントで示唆されているように、同じタスクを実行するために R で記述したコードは次のとおりです: (このコードを Spark で使用する際の問題は、Spark で R を使用できる最近リリースされた SparkR が制限されていることです。ライブラリの面でのサポート (たとえば、igraph). したがって、アルゴリズムが必要な GraphX と Scala を使い始めました。

0 投票する
2 に答える
1101 参照

scala - spark および graphx の問題での foreach ループでのサブグラフ化

誰かが助けてくれることを願っています。

Graphx のネットワーク内の各ノードに接続された各エッジ ID で機能を実行する必要があるプログラムを作成しようとしています。

これを行うには、各ノードを反復処理し、それに接続されているすべてのエッジを識別します。次に、関数を使用して各エッジを反復処理します。foreach ループ内で何らかの種類のサブグラフ化またはフィルタリングを行うと、私の問題が発生するようです。

たとえば、以下のコードは、ノードに接続された各エッジの ID を出力する必要があります。

ただし、収集機能を追加してrddからグラフデータを収集する場合にのみ機能します。

ネットワークが大きすぎてエッジ データを収集できないため、ご協力をお願いいたします。

0 投票する
1 に答える
1044 参照

scala - Spark Graphx で一般的なエッジの数を取得するにはどうすればよいですか?

たとえば、次のような頂点とエッジを持つ 2 つのグラフがあるとします。

エッジ属性を考慮せずに、これら 2 つのグラフ間の共通エッジの数を取得するにはどうすればよいですか? したがって、上記の例では、共通のエッジの数は 2 であり、共通のエッジは次のとおりです。 2L、3L、4)。

私はscalaでプログラミングしています。

0 投票する
1 に答える
161 参照

sql - SpqrkSQL と GraphX を組み合わせる

SparkSQL でストアド プロシージャを作成し、GraphX API を呼び出すことはできますか? このようなもの:

registerFunction("storedProcedureGraphX", model.storedProcedureGraphX _)

select * from someTable where storedProcedureGraphX(nodeX, nodeY) > 10

0 投票する
1 に答える
171 参照

java - Java から取得され、Scala で RDD を作成するために使用される List[String] の並列化中にエラーが発生しました

型の不一致;

[エラー] が見つかりました: java.util.List[String]

[エラー] 必須: Seq[文字列]

[エラー] デフォルト引数を含むアプリケーションでエラーが発生しました。

[エラー] val vertexRDD: RDD[(String)] = sc.parallelize( g.vertexArray )

0 投票する
2 に答える
4618 参照

apache-spark - HDFS を使用して Spark Graphx にグラフを保存する

Spark の GraphX でグラフを作成しました。このグラフには 10 億のノードと 100 億以上のエッジが含まれる可能性があるため、このグラフを何度も作成する必要はありません。

一度ビルドして保存し(HDFSが最適だと思います)、いくつかのプロセスを実行し、数日または数週間でアクセスし、新しいノードとエッジを追加して実行する機能が必要ですその上でさらにいくつかのプロセス。

Apache Spark の GraphX でそれを行うにはどうすればよいですか?

編集:私は潜在的な解決策を見つけたと思いますが、これが最善の方法であるかどうかを誰かに確認してもらいたいです.

たとえば、グラフがある場合、graphグラフを vertexRDD と edgeRDD 別にテキスト ファイルに格納する必要があります。その後、次のように、これらのテキスト ファイルにアクセスできます。

私が今持っている質問の 1 つは、 saveAsTextFile() または saveAsObjectFile() を使用する必要があるかどうかです。そして、後でそれらのファイルにどのようにアクセスすればよいでしょうか?

0 投票する
1 に答える
904 参照

scala - Spark Graphx で Iterable を RDD に変換する

グラフの頂点に groupBy の積があります

たとえば、頂点のグループごとに新しいグラフを作成したいと思います

問題は、それnodegroupが typeIterable[(VertexId, String)]であることです。つまり、各ノードグループはもはや RDD ではありません。

どうすればこれを乗り越えることができますか、つまり、それぞれのRDD構造を再作成するにはどうすればよいnodegroupですか? つまり、コードを機能させるために、コードを置き換えることができ...<>...ますか?

私は並列化オプションを使用しようとしましたが、私が読んだことから、それは不可能であり、これを行う正しい方法でもありません。

助けていただければ幸いです。乾杯

0 投票する
1 に答える
630 参照

scala - spark graphx -scala でグラフ オブジェクトのリストを作成する

グラフのエッジをサブグラフにしたい。次に、基準に基づいてこれらのサブグラフを結合し、クリークを形成したいと考えています。Graph基本的に、オブジェクトのリストを作成する方法を知りたいです。

Scala で Apache Spark の Graph X API を使用してこれを達成するにはどうすればよいですか?

このコードは、クラスGraphが抽象的であるため、インスタンス化できないというエラーを出します。グラフのリストを作成する方法はありますか?

Graph オブジェクトをインスタンス化する方法は私の主な質問ですか?