spark初见
2017-04-15 本文已影响42人
大龄程序员在帝都
下载后解压:
Paste_Image.png
由于我的hadoop集群搭建采用的是2.7.3版本,所以我选择了spark的2.0.2版本
tar -xzvf spark-2.0.2-bin-hadoop2.7.tgz
解压后,到bin目录下,让spark以standalone的模式运行
bin/spark-shell
运行成功后如下:
Paste_Image.png如上图,spark以standalone的方式运行成功
注意红色箭头指向的方向:
spark context 初始化为变量 sc,
这是一个命令行交互窗口,可以直接在里面进行命令行编程:
如下读取本机文件/root/ww/test文件
装入spark中,获取文件的行数:
为3
如果让spark运行在hadoop的 yarn上:
可以采用如下命令:
bin/spark-shell --master yarn-client
执行后提示如下错误:
[root@node1 spark-2.0.2-bin-hadoop2.7]# bin/spark-shell --master yarn-client
Exception in thread "main" java.lang.Exception: When running with master 'yarn-client' either HADOOP_CONF_DIR or YARN_CONF_DIR must be set in the environment.
at org.apache.spark.deploy.SparkSubmitArguments.validateSubmitArguments(SparkSubmitArguments.scala:256)
at org.apache.spark.deploy.SparkSubmitArguments.validateArguments(SparkSubmitArguments.scala:233)
at org.apache.spark.deploy.SparkSubmitArguments.<init>(SparkSubmitArguments.scala:110)
at org.apache.spark.deploy.SparkSubmit$.main(SparkSubmit.scala:117)
at org.apache.spark.deploy.SparkSubmit.main(SparkSubmit.scala)
如上错误是因为: 没有指定hadoop的配置文件目录:
设置hadoop的配置文件目录,我的配置目录为:
Paste_Image.png设置如下:
export HADOOP_CONF_DIR=/home/hadoop/etc/hadoop
设置完成后,重新启动
bin/spark-shell --master yarn-client
Paste_Image.png
如上图所示,spark在hadoop yarn上启动了。
登陆yarn可以看到对应的信息:
Paste_Image.png点击进去可以看到spark的管理界面:
Paste_Image.png Paste_Image.png Paste_Image.png如上spark 在yarn上进行资源调度和管理了
可以看到有两个Executor
Paste_Image.png