簡體   English   中英

錯誤 SparkContext:初始化 SparkContext 時出錯。 java.lang.IllegalArgumentException: 系統內存 259522560 必須至少為 471859200

[英]ERROR SparkContext: Error initializing SparkContext. java.lang.IllegalArgumentException: System memory 259522560 must be at least 471859200

所以我是新來的火花。 我的版本是:Spark 2.1.2,Scala 版本 2.11.8(Java HotSpot(TM) 64 位服務器 VM,Java 1.8.0_131)。 我在 Windows 10 (x64) 上使用 IntellijIdea 2018 社區。 每當我嘗試運行一個簡單的字數統計示例時,我都會收到以下錯誤:

18/10/22 01:43:14 錯誤 SparkContext:初始化 SparkContext 時出錯。 java.lang.IllegalArgumentException:系統內存 259522560 必須至少為 471859200。請使用 --driver-memory 選項或 Spark 配置中的 spark.driver.memory 增加堆大小。 在 org.apache.spark.memory.UnifiedMemoryManager$.getMaxMemory(UnifiedMemoryManager.scala:216) 在 org.apache.spark.memory.UnifiedMemoryManager$.apply(UnifiedMemoryManager.scala:198) 在 org.apache.spark.SparkEnv$。 create(SparkEnv.scala:330) at org.apache.spark.SparkEnv$.createDriverEnv(SparkEnv.scala:174) at org.apache.spark.SparkContext.createSparkEnv(SparkContext.scala:257) at org.apache.spark。 SparkContext.(SparkContext.scala:432) 在 WordCount$.main(WordCount.scala:5) 在 WordCount.main(WordCount.scala)

PS:以wordcounter的代碼為例:

import org.apache.spark.{SparkConf,SparkContext}
object WordCount {
def main(args: Array[String]) {
val conf = new SparkConf().setAppName("mySpark").setMaster("local")
val sc = new SparkContext(conf)
val rdd = sc.textFile(args(0))
val wordcount = rdd.flatMap(_.split("\t") ).map((_, 1))
  .reduceByKey(_ + _)
for (arg <- wordcount.collect())
  print(arg + " ")
println()
//    wordcount.saveAsTextFile(args(1))
//    wordcount.saveAsTextFile("myFile")
sc.stop()
}
}

所以我的問題是如何擺脫這個錯誤。 我搜索了解決方案並嘗試安裝不同版本的 Spark、JDK 和 Hadoop,但沒有幫助。 我不知道可能是哪里出了問題。

如果您在 IntelliJ 中,您可能會遇到很多困難,我所做的並且有效的是我在 SparkSession 之前通過執行初始化了 SparkContext

  1. val conf:SparkConf = new SparkConf().setAppName("name").setMaster("local") .set("spark.testing.memory", "2147480000")

  2. val sc:SparkContext = new SparkContext(conf)

也許有更好的解決方案,因為在這里我實際上不需要初始化 SparkContext,因為它是通過初始化 SparkSession 隱式完成的。

轉到設置 - 運行/調試配置 -> 並為 VM 選項放置

-Xms128m -Xms512m -XX:MaxPermSize=300m -ea

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM