5.1.3 使用SBT构建Spark程序
用户也可以直接使用SBT构建Spark应用。在这个应用中,以统计包含“Hello”字符的行数为案例。
(1)构建开发环境
1)下载并解压Spark 1.0.0程序包或者通过git clone https://github.com/apache/spark命令将项目克隆到Spark根目录。
2)运行sbt/sbt assembly构建项目。
3)为了使用SBT成功构建Spark,预先安装SBT。
(2)开发应用程序
在构建Spark以后,就可以开始开发应用了。
1)创建目录mkdir HelloWorld。
2)创建一个.sbt文件,在目录HelloWorld中创建simple.sbt文件。
3)在.sbt文件中加入如下配置项配置应用名,版本和依赖等信息。
- name := "HelloWorld Project"
- version := "1.0"
- scalaVersion := "2.10.3"
- libraryDependencies += "org.apache.spark" %% "spark-core" % "0.9.1"
- resolvers += "Akka Repository" at "http://repo.akka.io/releases/
(3)创建代码文件
- HelloWorld/src/main/scala/HelloWorld.scala
- import org.apache.spark.SparkContext
- import org.apache.spark.SparkContext._
- object HelloWorld {
- def main(args: Array[String]) {
- val logFile = "src/data/sample.txt"
- val sc = new SparkContext("local", "Simple App", "/path/to/spark-1.0.0-incubating",
- List("target/scala-2.10/simple-project_2.10-1.0.jar"))
- val logData = sc.textFile(logFile, 2).cache()
- val numHello = logData.filter(line => line.contains("Hello")).count()
- println("Lines with the: %s".format(numHello))
- }
- }
(4)运行程序
1)程序创建后,返回到HelloWorld根目录。
2)运行sbt package进行构建与打包。
3)运行sbt run,系统执行构建好的程序。