1.开发环境准备
- 安装scala
windows下安装scala-2.11.8
- jdk
jdk版本为1.8
- 安装eclipse-scala插件
下载eclipse开发scala的插件,也可以下载scala专用的eclipse版本.
- 创建maven工程
新建maven工程,新建后显示为Java工程,项目右键>>>configure>>>convert to maven project.
之后会变成scala工程.
- pom.xml配置依赖
<dependency>
<groupId>org.apache.spark</groupId>
<artifactId>spark-core_2.11</artifactId>
<version>2.2.2</version>
<scope>provided</scope>
</dependency>
- 配置windows下的hadoop环境
windows下不必实际安装,有相关环境即可.
下载hadoop-2.7.2.tar.gz
下载hadoop2.7.2-bin.zip/https://download.csdn.net/download/u014659995/10164465
将tar包解压到安装目录,将hadoop2.7.2-bin.zip的bin中的内容拷贝到hadoop-2.7.2的bin中.
配置环境变量%HADOOP_HOME%,将%HADOOP_HOME%/bin配置到Path中.
2.代码示例(单词计数)
object WordCount {
def main(args: Array[String]): Unit = {
val conf = new SparkConf().setMaster("local").setAppName("My App")
val sc = new SparkContext(conf)
// 创建一个Scala版本的Spark Context
// 读取我们的输入数据
val input = sc.textFile("d:/hello.txt")
// 把它切分成一个个单词
val words = input.flatMap(line => line.split(" "))
// 转换为键值对并计数
val counts = words.map(word => (word, 1)).reduceByKey { case (x, y) => x + y }
// 将统计出来的单词总数存入一个文本文件,引发求值
counts.saveAsTextFile("d:/z_output_" + System.currentTimeMillis())
}
}
运行结果:
(Spark,1)
(Java,1)
(hello,3)
(Scala,1)