Windows下搭建Spark开发测试环境

Windows下使用IDEA开发Spark应用程序配置说明(使用sbt构建)。

软件环境

  • Hadoop 2.7.7
  • Spark 2.4.0
  • Scala 2.11
  • Java 8

配置Hadoop

Windows环境下需要先配置Hadoop环境变量,如图所示:


Windows下搭建Spark开发测试环境_第1张图片

同时在PATH环境变量中添加Hadoop信息:


Windows下搭建Spark开发测试环境_第2张图片

之后需要下载一个winutils.exe工具,将该文件放到Hadoop的bin目录下。

打开命令行,输入echo %PATH%命令,如果输出中包含Hadoop路径信息,说明配置成功。

创建SBT项目

使用IDEA创建SBT项目,项目名为sparkDemo:


Windows下搭建Spark开发测试环境_第3张图片

由于Spark2.4.0默认使用的Scala版本是2.11,这里需要选择Scala的版本:


Windows下搭建Spark开发测试环境_第4张图片

创建完毕后,项目结构如下:


Windows下搭建Spark开发测试环境_第5张图片

build.sbt中添加Spark依赖文件:

name := "sparkDemo"

version := "0.1"

scalaVersion := "2.11.12"

val sparkVersion = "2.4.0"

libraryDependencies ++= Seq(
  "org.apache.spark" %% "spark-core" % sparkVersion,
  "org.apache.spark" %% "spark-sql" % sparkVersion,
  "org.apache.spark" %% "spark-streaming" % sparkVersion,
  "org.scalatest" %% "scalatest" % "3.0.5"
)

编写Spark应用程序

一切准备完毕,可以开始编码,这里使用的示例是Spark官方程序,本地运行时需要设置运行模式为local

package com.sparkdemo.app

import org.apache.spark.sql.SparkSession

object SimpleApp {
  def main(args: Array[String]): Unit = {
    val logFile = "d://tools//spark-2.4.0-bin-hadoop2.7//README.md" // Should be some file on your system
    val spark = SparkSession.builder.appName("Simple Application").master("local[2]").getOrCreate()
    val logData = spark.read.textFile(logFile).cache()
    val numAs = logData.filter(line => line.contains("a")).count()
    val numBs = logData.filter(line => line.contains("b")).count()
    println(s"Lines with a: $numAs, Lines with b: $numBs")
    spark.stop()
  }
}

接下来就可以在本地运行调试Spark程序了。

你可能感兴趣的:(Windows下搭建Spark开发测试环境)