0
点赞
收藏
分享

微信扫一扫

Spark简单介绍,Windows下安装Scala+Hadoop+Spark运行环境,集成到IDEA中【踩坑成功版】


一、前言

近几年大数据是异常的火爆,今天小编以java开发的身份来会会大数据,提高一下自己的层面!
大数据技术也是有很多:

  • Hadoop
  • Spark
  • Flink

小编也只知道这些了,由于​​Hadoop​​​,存在一定的缺陷(循环迭代式数据流处理:多
并行运行的数据可复用场景​​​效率不行​​​)。所以​​Spark​​​出来了,一匹黑马,8个月的时间从加入​​ Apache​​,直接成为顶级项目!!

选择​​Spark​​的主要原因是:

Spark和Hadoop的根本差异是多个作业之间的数据通信问题 : Spark多个作业之间数据
通信是基于内存,而 Hadoop 是基于磁盘。

二、Spark介绍


​Spark 是用于大规模数据处理的统一分析引擎​​。它提供了 Scala、Java、Python 和 R 中的高级 API,以及支持用于数据分析的通用计算图的优化引擎。它还支持一组丰富的高级工具,包括用于 SQL 和 DataFrames 的 Spark SQL、用于 Pandas 工作负载的 Spark 上的 Pandas API、用于机器学习的 MLlib、用于图形处理的 GraphX 和用于流处理的结构化流。

​spark​​​是使用​​Scala​​​语言开发的,所以使用​​Scala​​更好!!

三、下载安装

1. Scala下载


点击安装

Spark简单介绍,Windows下安装Scala+Hadoop+Spark运行环境,集成到IDEA中【踩坑成功版】_scala

下载自己需要的版本

Spark简单介绍,Windows下安装Scala+Hadoop+Spark运行环境,集成到IDEA中【踩坑成功版】_hadoop_02


点击自己需要的版本:小编这里下载的是​​2.12.11​​点击下载Windows二进制:

Spark简单介绍,Windows下安装Scala+Hadoop+Spark运行环境,集成到IDEA中【踩坑成功版】_spark_03


慢的话可以使用迅雷下载!

2. 安装

安装就是下一步下一步,记住安装目录不要有空格,不然会报错的!!!

3. 测试安装

​win+R​​​输入​​cmd​​​:
输入:

scala

必须要有JDK环境哈,这个学大数据基本都有哈!!

Spark简单介绍,Windows下安装Scala+Hadoop+Spark运行环境,集成到IDEA中【踩坑成功版】_hadoop_04

4. Hadoop下载

一个小技巧:
​​​Hadoop和Spark​​版本需要一致,我们先去看看spark,他上面名字就带着和他配套的Hadoop版本!!

​​spark3.0对照​​

Spark简单介绍,Windows下安装Scala+Hadoop+Spark运行环境,集成到IDEA中【踩坑成功版】_idea_05


得出我们下载Hadoop的版本为:​​3.2​

​​Hadoop下载地址​​

Spark简单介绍,Windows下安装Scala+Hadoop+Spark运行环境,集成到IDEA中【踩坑成功版】_idea_06

5. 解压配置环境

解压到即可使用,为了使用方便,要想jdk一样配置一下环境变量!

新建​​HADOOP_HOME​​​ 值为安装目录:​​D:\software\hadoop-3.2.1​​ 在​​Path​​里添加:​​%HADOOP_HOME%\bin​

cmd输入:​​hadoop​​:提示

系统找不到指定的路径。
Error: JAVA_HOME is incorrectly set.

这里先不用管,咱们只需要Hadoop的环境即可!

6. 下载Spark

​​Spark官网​​

点击找到历史版本:

Spark简单介绍,Windows下安装Scala+Hadoop+Spark运行环境,集成到IDEA中【踩坑成功版】_hadoop_07


点击下载:

Spark简单介绍,Windows下安装Scala+Hadoop+Spark运行环境,集成到IDEA中【踩坑成功版】_idea_08

7. 解压环境配置

新建:​​SPARK_HOME​​​:​​D:\spark\spark-3.3.1-bin-hadoop3​​​​Path​​添加:​​%SPARK_HOME%\bin​

8. 测试安装

​win+R​​​输入​​cmd​​​:
输入:

spark-shell

Spark简单介绍,Windows下安装Scala+Hadoop+Spark运行环境,集成到IDEA中【踩坑成功版】_hadoop_09

四、集成Idea

1. 下载插件

scala

Spark简单介绍,Windows下安装Scala+Hadoop+Spark运行环境,集成到IDEA中【踩坑成功版】_scala_10

2. 给项目添加Global Libraries

打开配置:

Spark简单介绍,Windows下安装Scala+Hadoop+Spark运行环境,集成到IDEA中【踩坑成功版】_hadoop_11


新增SDK

Spark简单介绍,Windows下安装Scala+Hadoop+Spark运行环境,集成到IDEA中【踩坑成功版】_spark_12


下载你需要的版本:小编这里是:​​2.12.11​

Spark简单介绍,Windows下安装Scala+Hadoop+Spark运行环境,集成到IDEA中【踩坑成功版】_idea_13


右击项目,添加上​​scala​​:

Spark简单介绍,Windows下安装Scala+Hadoop+Spark运行环境,集成到IDEA中【踩坑成功版】_scala_14

3. 导入依赖

<dependency>
<groupId>org.apache.spark</groupId>
<artifactId>spark-core_2.12</artifactId>
<version>3.0.0</version>
</dependency>

4. 第一个程序

Spark简单介绍,Windows下安装Scala+Hadoop+Spark运行环境,集成到IDEA中【踩坑成功版】_scala_15

Spark简单介绍,Windows下安装Scala+Hadoop+Spark运行环境,集成到IDEA中【踩坑成功版】_scala_16

object Test {

def main(args: Array[String]): Unit = {
println("hello")
var sparkConf = new SparkConf().setMaster("local").setAppName("WordCount");
var sc = new SparkContext(sparkConf);
sc.stop();
}
}

5. 测试bug1

Using Spark's default log4j profile: org/apache/spark/log4j-defaults.properties
22/10/31 16:20:35 INFO SparkContext: Running Spark version 3.0.0
22/10/31 16:20:35 ERROR Shell: Failed to locate the winutils binary in the hadoop binary path
java.io.IOException: Could not locate executable D:\software\hadoop-3.2.1\bin\winutils.exe in the Hadoop binaries.

Spark简单介绍,Windows下安装Scala+Hadoop+Spark运行环境,集成到IDEA中【踩坑成功版】_scala_17

原因就是缺少:​​winutils​

​​下载地址​​

Spark简单介绍,Windows下安装Scala+Hadoop+Spark运行环境,集成到IDEA中【踩坑成功版】_spark_18


把它发放​​Hadoop​​的bin目录下:

Spark简单介绍,Windows下安装Scala+Hadoop+Spark运行环境,集成到IDEA中【踩坑成功版】_hadoop_19

6. 测试bug2

这个没办法复现,拔的网上的记录:

Using Spark's default log4j profile: org/apache/spark/log4j-defaults.properties
22/10/08 21:02:10 INFO SparkContext: Running Spark version 3.0.0
22/10/08 21:02:10 ERROR SparkContext: Error initializing SparkContext.
org.apache.spark.SparkException: A master URL must be set in your configuration
at org.apache.spark.SparkContext.<init>(SparkContext.scala:380)
at org.apache.spark.SparkContext.<init>(SparkContext.scala:120)
at test.wyh.wordcount.TestWordCount$.main(TestWordCount.scala:10)
at test.wyh.wordcount.TestWordCount.main(TestWordCount.scala)

就是这句:​​A master URL must be set in your configuration​

解决方案:
就是没有用到本地的地址

右击项目:

Spark简单介绍,Windows下安装Scala+Hadoop+Spark运行环境,集成到IDEA中【踩坑成功版】_idea_20

没有环境就添加上:

Spark简单介绍,Windows下安装Scala+Hadoop+Spark运行环境,集成到IDEA中【踩坑成功版】_hadoop_21


添加上:

-Dspark.master=local

Spark简单介绍,Windows下安装Scala+Hadoop+Spark运行环境,集成到IDEA中【踩坑成功版】_idea_22

7. 测试完成

没有error,完美!!

Spark简单介绍,Windows下安装Scala+Hadoop+Spark运行环境,集成到IDEA中【踩坑成功版】_idea_23

五、总结

这样就完成了,历尽千辛万苦,终于成功。第一次结束差点劝退,发现自己对这个东西还是不懂,后面再慢慢补​​Scala​​。先上手感受,然后再深度学习!!

举报

相关推荐

0 条评论