繁体   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