【问题标题】:Spark local testing reports OutOfMemoryError, how to fix?Spark本地测试报告OutOfMemoryError,如何解决?
【发布时间】:2015-11-17 12:46:19
【问题描述】:

我按照这篇文章写了一些在本地运行的火花测试:http://mkuthan.github.io/blog/2015/03/01/spark-unit-testing/

主要代码如下:

class SparkExampleSpec extends FlatSpec with BeforeAndAfter {

  private val master = "local[2]"
  private val appName = "example-spark"

  private var sc: SparkContext = _

  before {
    val conf = new SparkConf()
      .setMaster(master)
      .setAppName(appName)

    sc = new SparkContext(conf)
  }

  after {
    if (sc != null) {
      sc.stop()
    }
  }
  (...)

但我发现当我的测试增加时,它会报告OutOfMemoryError并且进程被阻塞。

如何解决?

PS:一些测试会生成一些 RDD,但不会collect 它们,例如:

val rdd = sparkContext.makeRDD(someData)

// not calling `rdd.collect()`

这是一个可能的问题吗?

【问题讨论】:

标签: scala testing apache-spark


【解决方案1】:

我无法准确回答,因为我不知道你的 spark 配置

但是,我认为内存设置可能是。

检查您的驱动程序(或执行程序)内存配置

$SPARK_PATH/conf/spark-default.conf
spark.driver.memory    
spark.executor.memory

您将能够从此页面获得帮助。

http://spark.apache.org/docs/latest/configuration.html

【讨论】:

    猜你喜欢
    • 2012-02-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-04-19
    • 2011-03-25
    • 1970-01-01
    相关资源
    最近更新 更多