本节将介绍如何实际动手进行 RDD 的转换与操作,以及如何编写、编译、打包和运行 Spark 应用程序。
启动 Spark Shell
Spark 的交互式脚本是一种学习 API 的简单途径,也是分析数据集交互的有力工具。Spark 包含多种运行模式,可使用单机模式,也可以使用分布式模式。为简单起见,本节采用单机模式运行 Spark。
无论采用哪种模式,只要启动完成后,就初始化了一个 SparkContext 对象(SC),同时也创建了一个 SparkSQL 对象用于 SparkSQL 操作。进入 Scala 的交互界面中,就可以进行 RDD 的转换和行动操作。
进入目录 SPARK_HOME/bin 下,执行如下命令启动 Spark Shell。
$./spark-shell
Spark Shell 使用
假定本地文件系统中,文件 home/hadoop/SparkData/WordCount/text1 的内容如下。
hello world
hello My name is john I love Hadoop programming
下面我们基于该文件进行 Spark Shell 操作。
1)利用本地文件系统的一个文本文件创建一个新 RDD。
scala>var textFile = sc.textFile(“file://home/Hadoop/SparkData/WordCount/text1”);
textFile:org.apache.spark.rdd.RDD[String] = MappedRDD[1] at textFile at
<console>:12
2)执行动作操作,计算文档中有多少行。
scala>textFile.count() //RDD中有多少行
17/05/17 22:59:07 INFO spark.SparkContext:Job finished:count at<console>:15, took 5.654325469 s
resl:Long = 2
返回结果表明文档中有“2”行。
3)执行动作操作,获取文档中