新しいEMRクラスタをスピンアップした後、スパークアプリケーションを2回正常に実行しました。異なるSparkアプリケーションを数回実行してメモリ不足が発生した後、最初のスパークアプリケーションを再度実行してメモリエラーが発生しました。Sparkアプリケーションを数回実行した後でも、メモリエラーが発生するのはなぜですか?
この一連のイベントを3回繰り返し、毎回発生します。何が起こっているのでしょうか?実行の間にすべてのメモリを解放してはいけませんか?
新しいEMRクラスタをスピンアップした後、スパークアプリケーションを2回正常に実行しました。異なるSparkアプリケーションを数回実行してメモリ不足が発生した後、最初のスパークアプリケーションを再度実行してメモリエラーが発生しました。Sparkアプリケーションを数回実行した後でも、メモリエラーが発生するのはなぜですか?
この一連のイベントを3回繰り返し、毎回発生します。何が起こっているのでしょうか?実行の間にすべてのメモリを解放してはいけませんか?
スパークプログラムが完了した後、一時ディレクトリが生成され、tempディレクトリに残っているため、いくつかのスパークアプリケーションが実行された後にメモリエラーが発生する可能性があります。この問題を解決できるいくつかのクリーンアップオプションがあります。
spark.worker.cleanup.enabled
(デフォルト値はfalse)、,spark.worker.cleanup.appDataTtl
これらの詳細については、このドキュメントを参照してください。
http://spark.apache.org/docs/latest/spark-standalone.html#cluster-launch-scripts
これはメモリ不足のエラーにどのように寄与しますか?私はそれがディスクスペースの問題であると想像することができます。 –
このtempディレクトリがメモリを占有していてメモリ不足の問題が発生したとき...私はこのtempディレクトリをクリアしてプログラムを実行しようと提案しました。 –
それはなぜあなたはメモリ不足エラーがその上のスタックトレースを行うと、おそらくしようとしている正確に何についてのいくつかのより多くの情報がなくても把握することは困難です。 –