学习 Spark 2(一):初始化 SparkContext

栏目: 编程工具 · 发布时间: 9年前

内容简介:学习 Spark 2(一):初始化 SparkContext

架构

Spark 应用通过 SparkContext 连接到 ClusterManager 与 Executor 建立联系:

学习 Spark 2(一):初始化 SparkContext

利用 SparkContext 可以在集群上创建 RDD、广播和累加器

WARNNING:一个 JVM 进程,仅仅创建一个 SparkContext 实例

参数

SparkContext 可以通过 SparkConf 进行配置:

val conf = new SparkConf()  
    .setMaster("local[*]")
    .setAppName("FirstSparkApp")
val sc = new SparkContext(conf)

默认情况下,SparkConf 会加载系统属性中 spark. * 的属性

配置方式:

  • 编辑 %SPARK_HOME%/conf/spark-defaults.conf 文件(全局级别)
  • spark-submit 提交应用时,通过 --conf 参数指定(应用级别)

其中, MasterAppName 参数是必填项

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

master

表示要连接的集群管理器,以下是 marster URL 格式:

  • local 本地执行,启动一个 Worker 线程(本地测试)
  • local[K] 本地执行,启动 K 个 Worker 线程(本地测试)
  • local[*] 本地执行,启动机器 CPU 核数个 Worker 线程(本地测试)
  • spark://HOST:PORT 连接到 Spark Standalone 集群
  • mesos://HOST:PORT 连接到 Mesos 集群
  • yarn 连接到 YARN 集群(通过环境变量 HADOOP_CONF_DIR,读取 YARN 信息)

方法

日志级别

Spark 使用 Log4J 日志框架,支持的日志级别:

  • ALL
  • DEBUG
  • ERROR
  • FATAL
  • INFO
  • OFF
  • TRACE
  • WARN
sc.setLogLevel("WARN")

应用骨架

一个完整的 Spark 应用的代码结构如下:

object Application {

  def main(args: Array[String]): Unit = {
    /*
     * 处理 args 参数
     */

    /*
     * 初始化 SparkContext
     */
    val conf = new SparkConf()
        .setMaster(master)
        .setAppName(appName)
    // 其它配置项
    val sc = new SparkContext(conf)

    /*
     * 数据处理
     */

    /*
     * 清理
     */
    sc.close
  }

}

以上所述就是小编给大家介绍的《学习 Spark 2(一):初始化 SparkContext》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

超简单!一学就懂的互联网金融

超简单!一学就懂的互联网金融

视觉图文 / 人民邮电出版社 / 2015-2-1 / 45.00元

零基础、全图解,通过130多个精辟的知识点、220多张通俗易懂的逻辑图表,让您一书在手,即可彻底看懂、玩转互联网金融从菜鸟成为达人,从新手成为互联网金融高手! 本书主要特色:最简洁的版式+最直观的图解+最实用的内容。 本书细节特色:10章专题内容详解+80多个特别提醒奉献+130多个知识点讲解+220多张图片全程图解,深度剖析互联网金融的精华之处,帮助读者在最短的时间内掌握互联网金融知......一起来看看 《超简单!一学就懂的互联网金融》 这本书的介绍吧!

随机密码生成器
随机密码生成器

多种字符组合密码

XML、JSON 在线转换
XML、JSON 在线转换

在线XML、JSON转换工具

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换