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文件中加入如下配置项配置应用名,版本和依赖等信息。


  1. name := "HelloWorld Project"
  2. version := "1.0"
  3. scalaVersion := "2.10.3"
  4. libraryDependencies += "org.apache.spark" %% "spark-core" % "0.9.1"
  5. resolvers += "Akka Repository" at "http://repo.akka.io/releases/

(3)创建代码文件


  1. HelloWorld/src/main/scala/HelloWorld.scala
  2. import org.apache.spark.SparkContext
  3. import org.apache.spark.SparkContext._
  4. object HelloWorld {
  5. def mainargs Array[String]) {
  6. val logFile = "src/data/sample.txt"
  7. val sc = new SparkContext"local" "Simple App" "/path/to/spark-1.0.0-incubating"
  8. List"target/scala-2.10/simple-project_2.10-1.0.jar"))
  9. val logData = sc.textFilelogFile 2).cache()
  10. val numHello = logData.filterline => line.contains"Hello")).count()
  11. println"Lines with the: %s".formatnumHello))
  12. }
  13. }

(4)运行程序

1)程序创建后,返回到HelloWorld根目录。

2)运行sbt package进行构建与打包。

3)运行sbt run,系统执行构建好的程序。