それぞれ 8 つの CPU コアと 30GB のメモリを持つ 5 つのモードがあります。5GB のデータセット 1 と 65GB のデータセット 2 があるので、それらを結合して s3 ファイル システムに保存し、次のパラメータを設定する必要があります。
--num-executors 4 --spark.driver.memory 8g --executor-cores 5 --executor-memory 27g --conf spark.yarn.executor.memoryOverhead=824m
しかし、どこでも検索してさまざまなパラメーターを試しましたが、それでもメモリエラーが発生しています。GC オーバーヘッドの制限を超えました。
Javaコードでもこれを使用しました:
conf.set("spark.serializer", "org.apache.spark.serializer.KryoSerializer");
conf.set("spark.kryo.registrator", AvgRegistrator.class.getName());
conf.set("spark.driver.maxResultSize", "5g");
conf.set("spark.broadcast.compress", "true");
conf.set("spark.shuffle.compress", "true");
スタックオーバーフローの解決策はありません。誰でもこの問題を解決するためのより良い解決策を教えてください。
Spark java.lang.OutOfMemoryError: Java heap space
そしていつか私はこれを得ています:
java.lang.OutOfMemoryError: GC overhead limit exceeded