导读

  • 引言
  • 环境准备
  • 安装步骤
    • 1.下载地址
    • 2.开始下载
    • 3.解压spark
    • 4.配置环境变量
    • 5.配置 spark-env.sh
    • 6.启动spark服务
    • 7.测试spark

stay hungry stay foolish.

引言

2012年,UC Berkelye 的ANPLab研发并开源了新的大数据处理框架Spark。其核心思想包括两方面:一方面对大数据处理框架的输入/输出、中间数据进行建模,将这些数据抽象为统一的数据结构,命名为弹性分布式数据集(Resilent Distributed Dataset,RDD),并在此数据结构上构建了一系列通用的数据操作,使得用户可以简单地实现复杂的数据处理流程;另一方面采用基于内存的数据聚合、数据缓存等机制来加速应用执行,尤其适用于迭代和交互式应用。Spark采用EPFL大学研发的函数式编程语言Scala实现,并且提供了Scala、Java、Python、R四种语言的接口,以方便开发者适用熟悉的语言进行大数据应用开发。

话不多说,现在就开始我们的Spark之旅吧!

一 环境准备:

服务器 配置 单机 文件目录
Centos7 4核,14G master /opt/spark/spark-3.1.1-bin-hadoop2.7/
  • Spark 3.1.1
  • Hadoop 3.2
  • Scala 1.11
  • Java OpenJdk 1.8.0_292

二 安装步骤

1.下载地址

http://spark.apache.org/downloads.html

如下图所示:选择3.1.1版本的spark,并选择对应的Hadoop 版本


2.开始下载

wget https://www.apache.org/dyn/closer.lua/spark/spark-3.1.1/spark-3.1.1-bin-hadoop2.7.tgz

Notes: centos下,先进入某个目录,比如/opt/spark目录,然后执行下载


3.解压spark

这里解压到/opt/spark/

sudo tar zxvf spark-3.1.1-bin-hadoop2.7.tgz

4.配置环境变量

# vim /etc/profile

新增内容:

#spark environment
export SPARK_HOME=/opt/spark/spark-3.1.1-bin-hadoop2.7
export PATH=${SPARK_HOME}/bin:$PATH

退出并保存;刷新资源使配置生效。

# source /etc/profile

5.配置 spark-env.sh

进入 conf目录

# cd conf

重命名

# mv spark-env.sh.template spark-env.sh

修改spark-env.sh

# vim spark-env.sh

在spark-env.sh增加如下内容:


# java
JAVA_HOME=/usr
# hadoop CONF
HADOOP_CONF_DIR=/usr/hadoop/hadoop-2.7.7/etc/hadoop
温馨提示:

java环境变量地址 以具体机器的java安装为准,若使用yum安装java环境变量配置路径

查询本机Java安装路径

which java

/usr/bin/java

配置Java环境变量:

# java
#java
JAVA_HOME=/usr

6.启动spark服务

./start-all.sh

Notes: 也可以指定启动 ./sbin/start-master.sh

在浏览器输入服务器外网地址访问


7 测试spark

spark自带了一些测试demo,可以参照官方文档:http://spark.apache.org/docs/latest/quick-start.html

7.1 spark-shell 方式

进入handoop目录,

cd /opt/spark-3.1.1-bin-hadoop3.2/

执行spark-shell

./bin/spark-shell spark://xxxx.xxxx.12.119:7077 --executor-memory 512M --total-executor-cores 2


Using Scala version 2.12.10 (OpenJDK 64-Bit Server VM, Java 1.8.0_282)
Type in expressions to have them evaluated.
Type :help for more information. scala> val textFile = spark.read.textFile("README.md")
textFile: org.apache.spark.sql.Dataset[String] = [value: string] scala> textFile.count()
res0: Long = 108 scala>

温馨提示:

如果出现以下错误.

WARN TaskSchedulerImpl: Initial job has not accepted any resources; check your cluster UI to ensure

解决方案:启动这个spark-shell的时候指明内存大小

./bin/spark-shell spark://172.31.xx.xx:7077 --executor-memory 512M --total-executor-cores 2

7.2 spark-submit 提交

执行如下命令

bin/spark-submit \
--class org.apache.spark.examples.SparkPi \
--master spark://YOURHOST:7077 \
--executor-memory 500M \
--total-executor-cores 2 \
/opt/spark/spark-3.1.1-bin-hadoop3.2/examples/jars/spark-examples_2.12-3.1.1.jar \
10

再来看看Spark视图



版权声明

作者:顶级码农

出处:

若标题中有“转载”字样,则本文版权归原作者所有。若无转载字样,本文版权归作者所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文链接,否则保留追究法律责任的权利.

更多内容请关注智客工坊


最新文章

  1. BOM,文档宽高及窗口事件小析
  2. Altium Designer 常用的快捷键
  3. Javascript动画效果(一)
  4. 自定义View完全解析
  5. JSTL中的scope属性
  6. JavaScript基本语法
  7. php计算时间差
  8. 【转】为什么很多看起来不是很复杂的网站,比如 Facebook、淘宝,都需要大量顶尖高手来开发?
  9. Oracle 查询并删除重复记录的SQL语句
  10. [Hadoop 周边] Hadoop资料收集【转】
  11. NLP初步
  12. struct--file_operations
  13. 转:ReportViewer控件使用方法
  14. border-radius值的解析
  15. Caused by: java.sql.BatchUpdateException: You have an error in your SQL syntax; check the manual tha
  16. 团体程序设计天梯赛 L1-034.点赞
  17. unic
  18. pygame-KidsCanCode系列jumpy-part9-使用spritesheet
  19. css初始
  20. github个人作业

热门文章

  1. c++ 反汇编 堆变量
  2. 通过《第一行代码》学习 Android 开发
  3. 「HTML+CSS」--自定义加载动画【005】
  4. PReact10.5.13源码理解之hook
  5. Linux 常用系统性能命令总结
  6. (十二)struts2的类型转换
  7. PAT A1032 Sharing
  8. kubernetes-copyFromPod
  9. 通过Dapr实现一个简单的基于.net的微服务电商系统(六)——一步一步教你如何撸Dapr之Actor服务
  10. SQL Server CDC配合Kafka Connect监听数据变化