【发布时间】:2015-10-02 13:33:56
【问题描述】:
在 Spark 中,有 3 种主要方法可以指定用于创建 SparkContext 的 SparkConf 的选项:
- 作为 conf/spark-defaults.conf 中的属性
- 例如,线路:
spark.driver.memory 4g
- 例如,线路:
- 作为 spark-shell 或 spark-submit 的参数
- 例如,
spark-shell --driver-memory 4g ...
- 例如,
- 在您的源代码中,在使用
SparkConf实例创建SparkContext之前配置它:- 例如,
sparkConf.set( "spark.driver.memory", "4g" )
- 例如,
但是,当使用 spark-shell 时,在您收到 shell 提示时,已经在名为 sc 的变量中为您创建了 SparkContext。使用 spark-shell 时,如果在您有机会执行任何 Scala 语句之前已经创建了 SparkContext,您如何使用上面列表中的选项 #3 来设置配置选项?
特别是,我正在尝试使用 Kyro 序列化和 GraphX。将 Kryo 与 GraphX 一起使用的规定方法是在自定义 SparkConf 实例时执行以下 Scala 语句:
GraphXUtils.registerKryoClasses( sparkConf )
在运行spark-shell 时如何实现这一点?
【问题讨论】:
标签: scala apache-spark serialization kryo