win10idea+虚拟机(hadoop2.6.1+spark2.1.0)
一、环境配置
1.win10配置
(1)添加JDK1.8、Maven3.3.9、hadoop对应版本插件
环境变量可以是相对路径,也可以是绝对路径。JDK直接下载,双击安装就行。
Maven需要进行配置文件修改,修改下载源,指定使用本地环境。
位置:安装路径/conf/settings
<mirror>
<!--This sends everything else to /public -->
<id>nexus</id>
<mirrorOf>*</mirrorOf>
<url>http://maven.aliyun.com/nexus/content/groups/public/</url>
</mirror>
<mirror>
<!--This is used to direct the public snapshots repo in the
profile below over to a different nexus group -->
<id>nexus-public-snapshots</id>
<mirrorOf>public-snapshots</mirrorOf>
<url>http://maven.aliyun.com/nexus/content/repositories/snapshots/</url>
</mirror>
</mirrors>
Hadoop插件
找到对应版本的hadoop-common-2.6.0-bin-master文件并下载,将目录下的hadoop.dll文件拷贝至C:\Windows\System32目录下。然后bin目录写入环境变量。
2、Linux
Hadoop_HOME,SCALA_HOME,JAVA_HOME,MAVEN_HOME
注意:选用的scala版本最好与使用的spark版本相互对应,否则会影响与window的交互,可在spark-shell的启动界面查看。
二、连接本地win10
1、spark安装
解压、修改conf下的slaves、spark-env.sh,分发到其余的节点,收工。没事不要配置DRIVER_MEMORY参数,可以会导致shell无法启动
2、win10+idea
idea免费的、破解的都行
进去idea,左上角 file--settings--maven 设置成自己配置的路径
创建maven工程没有src模块的,可以在该界面,加参数
archetypeCatalog=internal
创建工程(建java工程和maven工程都可以反正都能导环境)
添加maven环境
右上角,添加合适的scala环境,首先要在file--settings-plugins中添加Scala插件
3、测试
修改pom.xml文件,加上需要用到的环境
<dependencies>
<dependency>
<groupId>org.apache.spark</groupId>
<artifactId>spark-core_2.11</artifactId>
<version>2.1.0</version>
</dependency>
</dependencies>
新建scala类
import org.apache.spark.{SparkContext, SparkConf}
object wordcount {
def main(args: Array[String]): Unit = {
val conf = new SparkConf() //创建Spark配置对象
conf.setAppName("Wordcount")
conf.setMaster("local") //设置master属性
val sc = new SparkContext(conf) //通过conf创建sc
//val filePath = "G://data/t1/red.txt"
val rdd1 = sc.textFile("g:/data/t1/red.txt.txt")
//val rdd1 = sc.textFile("192.168.31.160:/home/softwares/hadoop-2.6.1/red.txt") //加载文本文件
val rdd2 = rdd1.flatMap(line =>line.split(" ")) //压扁,扁平化处理数据
val rdd3 = rdd2.map((_,1)) //将word映射为 (w,1)
val rdd4 = rdd3.reduceByKey(_ + _) //reduce处理
val r = rdd4.collect() //聚合
r.foreach(println)
}
}
我解释一下为毛加载文件修改了那么多次,win10隐藏了文件后缀,导致red.txt一直找不到,百度也没找到方法,看属性的时候意外看到了QAQ
最后成功运行