编译完成后,我们能看到会多出一个target目录,里面就包括了编译后的.class文件和打好的jar包:
[hadoop@master spark-wordcount]$ sbt/sbt clean compile package [hadoop@master spark-wordcount]$ ls target/scala-2.10/ classes wordcount_2.10-1.0.0.jar 在YARN上运行WordCount在hdfs上首先上传一些待处理的文本:
[hadoop@master spark-wordcount]$ $HADOOP_HOME/bin/hdfs dfs -put ~/test.txt input编写如下启动脚本,将Spark WordCount提交到YARN上运行:
12
3
4
5
6
7
8
9
10
11
12
13
14
15
16 #!/usr/bin/env bash
PROJECT_HOME=/home/hadoop/project/spark-wordcount
#以防万一,确保删除输出目录
$HADOOP_HOME/bin/hdfs dfs -rmr /user/hadoop/output
$SPARK_HOME/bin/spark-submit \
--class WordCount \
--master yarn-cluster \
--num-executors 2 \
--driver-memory 1g \
--executor-memory 1g \
--executor-cores 1 \
$PROJECT_HOME/target/scala-2.10/wordcount_2.10-1.0.0.jar \
hdfs://master:9000/user/hadoop/input \
hdfs://master:9000/user/hadoop/output
这里采用的是yarn-cluster部署模式,num-executors指定启动的executor数量,driver-memory指定drive端所需内存大小,executor-memory指定executor所需内存大小,executor-cores指定每个executor使用的内核数。运行如上脚本后,打开Hadoop的web页面可以看到运行正常,如下图所示:
更多Spark相关教程见以下内容:
CentOS 7.0下安装并配置Spark
CentOS 6.2(64位)下安装Spark0.8.0详细记录
Spark简介及其在Ubuntu下的安装使用