1

hiveContextSpark のバージョンが 1.6.0 の IDEA を使用して Spark ローカル モデルを作成すると、プログラムは例外をスローします。例外は次のとおりです。

 Caused by: java.lang.OutOfMemoryError: PermGen space
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:800)

に気づいたjava oom permGen spaceので、permGen スペースが小さすぎるのではないかと思います。

だから私はグーグルとスタックオーバーフローで問題を検索し、permgenスペースを増やすことを提案し、次のようにスペースを増やそうとしました

val conf = new SparkConf().setMaster("local[4]").setAppName("TF")
conf.set("spark.driver.memory","4g")
conf.set("spark.executor.memory","4g")
conf.set("spark.executor.extraJavaOptions","-XX:MaxPermSize=2048m -XX:PermSize=512m")
conf.set("spark.driver.extraJavaOptions","-XX:PermSize=512m -XX:+PrintGCDetails")
val sc = new SparkContext(conf)
val hc = new HiveContext(sc)

動作しないようで、パラメータが有効にならず、エラーが引き続き発生します。spark 公式の方がおっしゃる通り、SparkConf で spark Java プロパティを設定できるので、sparkConf を使って permgen 領域を増やしたのですが、うまくいきません。

どのようにスパークでpermgenスペースを増やして効果的にするか.そして、他の同様の問題を抱えている人はいますか?それを修正する方法!

4

0 に答える 0