0

Spark 1.4 ( https://github.com/soundcloud/cosine-lsh-join-spark/tree/master/src/main/scala/com/soundcloud/lsh ) で LSH アルゴリズムを適用し、テキスト ファイル (4GB ) LIBSVM 形式 ( https://www.csie.ntu.edu.tw/~cjlin/libsvm/ ) で重複を見つけます。まず、36 コアのエグゼキューターを 1 つだけ使用して、サーバーで scala スクリプトを実行しました。1.5時間で結果を取得しました。

結果をより速く取得するために、各ノードに 20 コアと 64 GB のメモリがある 3 つのノードを持つ hpc の糸を介して、hadoop クラスターでコードを実行しようとしました。私は hpc でコードを実行した経験があまりないので、ここにある提案に従いました: https://blog.cloudera.com/blog/2015/03/how-to-tune-your-apache-spark-jobs-part -2/

その結果、私は以下のように火花を提出しました:

spark-submit --class com.soundcloud.lsh.MainCerebro --master yarn-cluster --num-executors 11 --executor-memory 19G --executor-cores 5 --driver-memory 2g cosine-lsh_yarn.jar 

私が理解しているように、ノードごとに 3 つのエグゼキューターを割り当て、各エグゼキューターに 19 GB を割り当てました。

しかし、2時間以上経過しても結果が得られませんでした。

私のスパーク構成は次のとおりです。

val conf = new SparkConf()
      .setAppName("LSH-Cosine")
      .setMaster("yarn-cluster")
      .set("spark.driver.maxResultSize", "0");

この問題をどのように掘り下げることができますか? 計算時間を改善するには、どこから始めればよいですか?

編集:

1)

私は合体が糸ではるかに遅いことに気づきました

  entries.coalesce(1, true).saveAsTextFile(text_string)

2)

HPC のエグゼキューターとステージ:

ここに画像の説明を入力 ここに画像の説明を入力

サーバーからの実行者とステージ:

ここに画像の説明を入力

ここに画像の説明を入力

4

1 に答える 1