hiveContext
Spark のバージョンが 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スペースを増やして効果的にするか.そして、他の同様の問題を抱えている人はいますか?それを修正する方法!