前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Spark2.3.0 初始化

Spark2.3.0 初始化

作者头像
smartsi
发布2019-08-07 14:21:43
9970
发布2019-08-07 14:21:43
举报
文章被收录于专栏:SmartSi

1. 初始化

Spark 程序必须做的第一件事是创建一个 JavaSparkContext 对象(Scala和Python中是SparkContext对象),这告诉了 Spark 如何访问集群。要创建 SparkContext,你首先需要构建一个包含有关应用程序信息的 SparkConf 对象。

Java版本:

代码语言:javascript
复制
private static String appName = "JavaWordCountDemo";
private static String master = "local";

// 初始化Spark
private static SparkConf conf = new SparkConf().setAppName(appName).setMaster(master);
private static JavaSparkContext sc = new JavaSparkContext(conf);

Scala版本:

代码语言:javascript
复制
val conf = new SparkConf().setAppName(appName).setMaster(master)
new SparkContext(conf)

每个 JVM 只能有一个 SparkContext 处于活跃状态。在创建新的 SparkContext 之前,必须先调用 stop() 方法停止之前活跃的 SparkContext。

Python版本:

代码语言:javascript
复制
conf = SparkConf().setAppName(appName).setMaster(master)
sc = SparkContext(conf=conf)

appName 参数是应用程序在集群UI上显示的名称。master 是 Spark,Mesos 或 YARN 集群的 URL,或以本地模式运行的特殊字符串 local。实际上,当在集群上运行时,你不需要在程序中写死 master,而是使用 spark-submit 启动应用程序并以参数传递进行接收。但是,对于本地测试和单元测试,你可以通过 local 来运行 Spark 进程。

2. 使用Shell

在 Spark shell 中,已经为你创建了一个专有的 SparkContext,可以通过变量 sc 访问。你自己创建的 SparkContext 将无法工作。可以用 --master 参数来设置 SparkContext 要连接的集群,用 --jars 来设置需要添加到 classpath 中的 JAR 包,如果有多个 JAR 包使用逗号分割符连接它们。你还可以通过 --packages 参数提供逗号分隔的 maven 坐标列表,将依赖关系(例如Spark Packages)添加到 shell 会话中。依赖项存在的任何可选存储库(例如Sonatype)可以传递给 --repositories 参数。例如:在一个拥有 4 核的环境上运行 bin/spark-shell,使用:

代码语言:javascript
复制
./bin/spark-shell --master local[4]

或者,还可以将 code.jar 添加到其 classpath 中,请使用:

代码语言:javascript
复制
./bin/spark-shell --master local[4] --jars code.jar

使用maven坐标来包含依赖项:

代码语言:javascript
复制
./bin/spark-shell --master local[4] --packages "org.example:example:0.1"

可以执行 spark-shell --help 获取完整的选项列表。spark-shell 调用的是更常用的spark-submit脚本

Spark 版本: 2.3.0

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2018-03-12,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1. 初始化
  • 2. 使用Shell
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档