0

spark scalaストリーミングアプリケーションでJVM占有メモリをクリーニングする方法。私は時間の60秒間隔でストリーミングジョブを実行しています。私の最初の6時間はそれ以降は問題はなかったが、私はJVMヒープメモリの問題に直面している。プログラム上、spark scalaでGCまたはJVMメモリをクリーニングする方法はありますか?spark scalaまたはpysparkでJVMヒープメモリをクリーニングする方法

私のアプリケーションでは、私はDataframe、registertemptableも使用しています。私のプログラムの終わりには、結果をHDFSに書き出しています。現在、私のアプリケーションでは、SQL文脈レベルを起動しています。私はキャッシュを解除しています。他の方法でメモリを解放できますか?

エラーメッセージ:スレッドの例外「ダグ・スケジューラ・イベント・ループ」java.lang.OutOfMemoryErrorを:Javaヒープスペース

おかげ

ヴェンカト

答えて

0

私はそこかどうかを確認するためにあなたをお勧めしますアプリケーションのスレッドリークです。 エグゼキュータログの近くのアプリケーションマスターでスレッドダンプを見ることができます。

このパラメータを設定してください。 --conf spark.cleaner.ttl = 10000。

キャッシュを使用している場合は、メモリとディスクの両方でpersist()を使用することをお勧めします。

関連する問題