开发前需要准备好JDK、Scala、Hadoop、Spark环境。步骤如下:
第一步:安装JDK
第二步:安装Scala
第三步: 配置Spark环境变量
第四步:安装Hadoop客户端
第五步:安装Eclipse
第一步:安装JDK
省略,配置完验证是否安装成功
第二步:安装Scala
1、下载地址:http://www.scala-lang.org/download/
2、下载完成后解压,增加PATH 变量
比如解压目录是D:\scala-2.11.11,然后新增环境变量SCALA_HOME,值为D:\scala-2.11.11,并把SCALA_HOME增加到环境变量PATH,即 ;%SCALA_HOME%\bin
进入cmd 界面测试Scala 是否安装成功:
C:\Users\Administrator>scala
Welcome to Scala 2.11.11 (Java HotSpot(TM) 64-Bit Server VM, Java 1.7.0_51).
Type in expressions for evaluation. Or try :help.
第三步: 配置Spark环境变量
1、下载Spark
下载地址:http://spark.apache.org/downloads.html,如spark-1.6.0-bin-hadoop2.6.tgz,spark版本是1.6.0,对应的hadoop版本是2.6。
2、解压,配置Spark的环境变量
新增SPARK_HOME 变量,值为 D:\spark-1.6.0-bin-hadoop2.6
增加PATH变量为 ;%SPARK_HOME%\bin
第四步:安装Hadoop客户端
Spark是基于Hadoop之上的,运行过程中会调用相关Hadoop库,如果没配置相关Hadoop运行环境,会提示相关出错信息,虽然也不影响运行。Windows下开发Spark不需要在本地安装Hadoop,但是需要winutils.exe、hadoop.dll等文件。
1、下载Windows下Hadoop工具包(分为32位和64位的),比如hadoop-2.6.0.tar.gz
2、解压到D:\hadoop2.6\hadoop-2.6.0-cdh5.6.0,新建HADOOP_HOME变量,并添加到系统Path变量中;%HADOOP_HOME%\bin
第五步:安装Eclipse
省略。使用lambda语法,需要开发工具配置jdk8编译环境
----------------------------------------------------------------------------------------------------------------------------------------------------------------
以上环境准备好之后,开始Java语言进行Spark开发,local模式应用程序开发
1. 新建Maven 工程
2、配置pom文件
3、Java代码(读取本地文件,统计a和b字母个数)
package com.zyl.local;
import org.apache.spark.SparkConf;
import org.apache.spark.api.java.JavaRDD;
import org.apache.spark.api.java.JavaSparkContext;
public class LocalFileDemo {
public static void main(String[] args) {
String logFile = "file:///D:/spark-1.6.0-bin-hadoop2.6/README.md";
SparkConf conf = new SparkConf().setAppName("LocalFileDemo").setMaster("local[*]");
JavaSparkContext sc = new JavaSparkContext(conf);
JavaRDD
long numAs = fileRdd.filter(x->x.contains("a")).count();
long numBs = fileRdd.filter(x->x.contains("b")).count();
System.out.println("Lines with a: " + numAs + ",lines with b: " + numBs);
}
}
4、运行结果
总结:本地开发spark程序,主要是开发环境搭建较为复杂,但是方便后续开发代码调试,磨刀不误砍柴工嘛!!!