Spark01——基本使用

Spark01 —— Spark基础 Spark基础 为什么选择Spark? Spark基础配置 Spark WordCount实例 Spark运行架构 Spark分区 Spark算子 Spark优化 阅读详情

下面介绍的是spark的几种运行的模式:本地模式, 分布式(standalone)和 yarn模式
,还有配置高可用和配置历史服务

本地模式

将解压后的文件直接执行下面命令,

bin/spark-shell

提交应用:

1 bin/spark-submit
1 --class org.apache.spark.examples.SparkPi
1 --master local[2] `
1 ./examples/jars/spark-examples_2.12-3.0.0.jar
1 10

参数说明:

  1. –class 表示要执行程序的主类,此处可以更换为咱们自己写的应用程序
  2. –master local[2] 部署模式,默认为本地模式,数字表示分配的虚拟 CPU 核数量
  3. spark-examples_2.12-3.0.0.jar 运行的应用类所在的 jar 包,实际使用时,可以设定为咱们自己打的 jar 包
  4. 数字 10 表示程序的入口参数,用于设定当前应用的任务数量

Standalone(分布式集群)模式

先启动zookeeper集群;

1.修改slaves文件(集群地址):

hadoop202
hadoop203
hadoop204

2.修改spark-env.sh 文件,添加 JAVA_HOME 和集群对应的 master 节点

export JAVA_HOME=/opt/module/jdk1.8.0_144
SPARK_MASTER_HOST=hadoop202
SPARK_MASTER_PORT=7077

3.== 注意: 7077是内部通信端口==

分发到集群:

xsync spark-standalone

启动:

sbin/start-all.sh

提交应用:

bin/spark-submit \
--class org.apache.spark.examples.SparkPi \
--master spark://hadoop202:7077 \
./examples/jars/spark-examples_2.12-3.0.0.jar \
10

1 --class 表示要执行程序的主类
2 --master spark://linux1:7077 独立部署模式,连接到 Spark 集群
3 spark-examples_2.12-3.0.0.jar 运行类所在的 jar 包
4 数字 10 表示程序的入口参数,用于设定当前应用的任务数量

提交参数说明:

在这里插入图片描述

Yarn模式

1.修改yarn-site.xml文件(防止yarn资源调度出现问题)

<!--是否启动一个线程检查每个任务正使用的物理内存量,如果任务超出分配值,则直接将其杀掉,默认
是 true -->
<property>
 <name>yarn.nodemanager.pmem-check-enabled</name>
 <value>false</value>
</property>
<!--是否启动一个线程检查每个任务正使用的虚拟内存量,如果任务超出分配值,则直接将其杀掉,默认
是 true -->
<property>
 <name>yarn.nodemanager.vmem-check-enabled</name>
 <value>false</value>
</property>

并进行分发

2.修改spark里的spark-env.conf文件,添加

export JAVA_HOME=/opt/module/jdk1.8.0_144
YARN_CONF_DIR=/opt/module/hadoop-3.1.3/etc/hadoop

提交应用:

bin/spark-submit \
--class org.apache.spark.examples.SparkPi \
--master yarn \
--deploy-mode cluster \
./examples/jars/spark-examples_2.12-3.0.0.jar \
10

前提是要先启动hdfs和yarn
然后就可以启动了

三种模式的对比图:
在这里插入图片描述

配置历史服务

1.修改 spark-default.conf:

spark.eventLog.enabled true
spark.eventLog.dir hdfs://hadoop202:8020/directory

注: directory文件是日志存放的位置,这个文件必须要提前创建好

2.再修改spark-env.conf文件

export SPARK_HISTORY_OPTS="
-Dspark.history.ui.port=18080
-Dspark.history.fs.logDirectory=hdfs://hadoop202:8020/directory
-Dspark.history.retainedApplications=30"

⚫ 参数 1 含义:WEB UI 访问的端口号为 18080
⚫ 参数 2 含义:指定历史服务器日志存储路径
⚫ 参数 3 含义:指定保存 Application 历史记录的个数,如果超过这个值,旧的应用程序信息将被删除,这个是内存中的应用数,而不是页面上显示的应用数。

3.注意: 如果是yarn模式,还要修改spark-default.conf文件,进行关联

spark.yarn.historyServer.address=hadoop202:18080
spark.history.ui.port=18080

分发配置文件和重启集群和历史服务:

sbin/start-all.sh
sbin/start-history-server.sh

配置高可用

只有一个master的话,会有单点故障问题,就需要配置高可用.

1.修改配置spark-env.sh:

注释如下内容:
#SPARK_MASTER_HOST=linux1
#SPARK_MASTER_PORT=7077
添加如下内容:
#####################
#Master 监控页面默认访问端口为 8080,但是可能会和 Zookeeper 冲突,所以改成 8989,也可以自定义,访问 UI 监控页面时请注意

SPARK_MASTER_WEBUI_PORT=8989’
#####################
#配置zookeeper相关信息
export SPARK_DAEMON_JAVA_OPTS="
-Dspark.deploy.recoveryMode=ZOOKEEPER
-Dspark.deploy.zookeeper.url=hadoop202,hadoop203,hadoop204
-Dspark.deploy.zookeeper.dir=/spark"

2.是依赖于zookeeper集群的,先启动zookeeper

3.然后进行启动spark集群,再在所要配置的高可用备用集群上启动master

sbin/start-all.sh
sbin/start-master.sh

提交应用到高可用集群

bin/spark-submit \
--class org.apache.spark.examples.SparkPi \
--master spark://hadoop202:7077,hadoop203:7077 \
./examples/jars/spark-examples_2.12-3.0.0.jar \
10

Spark——安装及使用 一、spark入门与安装 1、spark概述 1)了解 Spark是一种快速、通用、可扩展的大数据分析引擎,2009年诞生于加州大学伯克利分校AMPLab,2010年开源,2013年6月成为Apache孵化项目,2014年2月成为Apache顶级项目。目前,Spark生态系统已经发展成为一个包含多个子项目的集合,其中包含SparkSQL、Spark Streaming、GraphX、MLlib等子... 阅读详情

相关推荐

C语言|深入浅出讲解int转换为float全过程(附2017年统考大题案例)

int转换为float类型为什么会发生精度损失? 精度损失的详细过程究竟是什么样的? 什么样情况float会发生精度损失?没有弄懂2017年浮点数统考大题? 这一篇用2017年统考大题案例帮你更深的理解浮点数的存储规则。

DADONGOOO的博客 1万+

4. Spark源码解析之Master实例化流程解析

当脚本启动Master流程走到最后的时候,是解析成命令后返回给spark-class的 exec ${CMD[@]} 真正执行,也就是在这里真正开始初始化Master。 这里的命令是: java -cp ../jar/*org.apache.spark.deploy.master.Master--port 7077 --webui-port 8080 org.apache.spa...

L, there! 1080

别再折腾框架了!用华为应用市场官方渠道搞定GBOX,安全安装谷歌全家桶(鸿蒙HarmonyOS 3/4实测)

本文详细介绍了如何在鸿蒙系统上通过华为应用市场官方渠道安全安装GBOX,实现谷歌全家桶的无损使用。该方法避免了传统破解方式的安全风险,利用沙箱技术隔离运行环境,确保系统稳定性和数据安全。特别适合鸿蒙HarmonyOS 3/4用户安全使用谷歌生态应用。

weixin_29305313的博客 4752

Spark启动时的master参数以及Spark的部署方式

我们在初始化SparkConf时,或者提交Spark任务时,都会有master参数需要设置,如下: conf = SparkConf().setAppName(appName).setMaster(master) sc = SparkContext(conf=conf) /bin/spark-submit \ --cluster cluster_name \...

weixin_30938149的博客 1966

OpenCV图像拼接实战:用SIFT+透视变换打造无缝全景图(附完整代码)

本文详细介绍了使用OpenCV和SIFT算法实现图像拼接的全过程,包括特征匹配、透视变换和高级融合技术。通过实战代码演示,帮助开发者掌握无缝全景图生成的核心技术,适用于旅行摄影、无人机航拍等多种场景。

eee77的博客 997

YOLOv8科研探索:HAttention激活更多特征点,真心助你提升细粒度检测精度

如果你在集成中遇到问题,不妨从特征点激活阈值、多尺度融合的逻辑入手,一点点打磨——科研的突破,往往就藏在这些细致的尝试里。想象一下,普通模型可能只关注目标的“大块区域”,而HAttention能让模型同时捕捉到目标的“边缘”“纹理”等细粒度特征点,就像给模型装上了“显微镜”,再小的细节也逃不过它的“眼睛”。比如,小目标的细粒度特征点(如昆虫的触角)和大目标的整体特征点(如昆虫的身体)会被同时考虑,通过注意力权重的分配,让小细节融入全局理解,避免模型“只见树木不见森林”。HAttention通过。

FJN110的博客 78

Spark-Local模式和集群模式安装-scala版本

本文主要讲述了Spark在linux系统,单机模式 和 集群模式的安装启动和测试

weixin_37536020的博客 271

YOLO11检测中的内存占用分析与优化:讲解如何分析并优化推理时的内存使用

YOLOv11模型内存分析与优化摘要:本文系统分析了YOLOv11目标检测模型的内存使用模式,重点探讨了显存(VRAM)、系统内存(RAM)和共享内存的特性差异。通过PyTorch内置工具和自定义分析器,详细剖析了骨干网络、颈部网络和检测头各组件内存占用规律,指出激活值内存与输入尺寸呈平方级增长关系。文章提供了卷积层内存计算公式,并强调合理规划"工作台"(显存)与"仓库"(内存)间的数据流动是优化关键。最后通过流程图直观展示了YOLOv11推理过程的三类内存使用模式,

本博客聚焦 YOLOv11 全流程落地,涵盖架构优化、数据集处理、训练技巧与多场景部署,兼及国产数据库、Java 开发与 AI 模型应用,内容兼顾理论与工程实践,为开发者提供系统干货,助力高效提升技术能力。 343

Spark学习笔记(2)——Spark运行环境部署

Spark只是一个数据处理框架和计算引擎,它必须要在一个特定的环境中才能运行。常用的运行环境有如下三种 一、 Local模式 Local模式是指不需要任何其它节点资源就可以在本地执行Spark代码的环境,不需要额外的进程进行资源管理,所有程序都运行在本地的一个进程环境中(如jvm),一般用于教学,调试,演示等。在 IDEA 中运行代码的环境我们称之为开发环境,不太一样。 spark-3.0.0-bin-hadoop3.2.tgz表示的是基于3.2版本的Hadoop编译的spark,所以还需要安装配置had

m0_56602092的博客 3527

chromium通信系统-ipcz系统(二)-ipcz系统代码实现-同Node通信

在chromium通信系统-mojo系统(一)-ipcz系统基本概念一文中我们介绍了ipcz的基本概念。 本章我们来通过代码分析它的实现。 handle系统 为了不对上层api暴露太多细节,实现解耦,也方便于传输,ipcz系统使用handle表示一个对象,handle类似于文件描述符,用IpczHandle类型表示ipcz系统内的一个对象。一个可以用IpczHandle 句柄表示的对象必须是APIObject子类。APIObject数据结构如下 class APIObject : public RefCou

woai110120130的专栏 1774

ubuntu:E: 无法定位软件包yum解决方法

如果出现以下问题,则需要更新yum源 yum源位于/etc/apt/sources.list yum源更新的网站有 清华大学开源镜像 中科大开源镜像 1.此处更新yum源的时候先备份 sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak sudo gedit /etc/apt/sources.list 将更新源替换成上面符合版本系列号 我用的版本号为20.04 # 默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消注释

码农研究僧的博客 1万+

Spark运行模式之Local模式

Local模式不需要任何的配置。 概述 Local模式就是运行在一台计算机上的模式,通常就是用于在本机上练手和测试。它可以通过以下集中方式设置Master local: 所有计算都运行在一个线程当中,没有任何并行计算,通常我们在本机执行一些测试代码,或者练手,就用这种模式; local[K]: 指定使用几个线程来运行计算,比如local[4]就是运行4个Worker线程。通常我...

ITBOY_ITBOX博客 5835

iOS远程真机之ios-minicap安装使用完全指南

minicap 是开源项目 STF 中的高速截图工具。STF利用此工具不断的传输图片信息并在web端绘制实现 以前只有Android版本,最近有新的ios版本,现在就安装过程中遇到的一些问题进行分享(ps:感谢sorccu 在issue里面给我的指点) 首先上地址:https://github.com/openstf/ios-minicap 你可以git clone或者直接下载zip包。

甫式人生 1万+

(10)spark sql 笔记--01基本使用

spark sql 数据结构上下文环境对象DataFrame语法风格DataSetRDD & DataFrame & DataSet 三者 相互转化UDF函数 数据结构 有两种数据结构: DataFrame: 在原有RDD的基础上 加上一个结构(类似于字段名),如下 (数据类型是弱类型,靠spark自动推断) +----+-------+ | age| name| +----+-------+ |null|Michael| | 30| Andy| | 19| Justin|

qq_41123269的博客 1878

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

Spark 的基本使用

6、Spark 的基本使用   6.1、执行第一个 Spark 程序 利用 Spark 自带的例子程序执行一个求 PI(蒙特卡洛算法)的程序: $SPARK_HOME/bin/spark-submit \ --class org.apache.spark.examples.SparkPi \ --master spark://hadoop02:7077 \ --executor-memo...

谦卑t 6602

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

Spark_01 spark的基本概念

说明:该章节讲述spark的理论概念和简单的操作,这部分我们只需要做到明确概念就行,把学习重心放在后面的方法掌握和应用。

a666b777的博客 1700

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

Spark ---Spark 的基本使用

Spark 的基本使用  1、执行第一个 Spark 程序  利用 Spark 自带的例子程序执行一个求 PI(蒙特卡洛算法)的程序:  $SPARK_HOME/bin/spark-submit \ --class org.apache.spark.examples.SparkPi \ --master spark://hadoop02:7077 \ --executor-memor...

XiaodunLP的博客 709

spark-3.基本使用

1.交互式窗口使用 本地模式执行的交互式窗口 [dendan@master spark-2.1.1-bin-hadoop2.7]$ bin/spark-shell 执行测试程序:统计./LICENSE文件的单词个数。 scala> sc.textFile("./LICENSE").flatMap(_.split(" ")).map((_,1)).reduceByKey(_+_).collect flatMap()将整体压平。flatMap(.split(" "))将整体压成一个类似数组的数据结构。

qq_30657195的博客 2150

Spark基本使用-DataFrame

基本使用说明 Spark是一个计算框架,其最简单的对数据的处理方法是对DataFrame,虽然功能有限,但是对于非特大的数据量,也基本上够用了,故此处记录DataFrame的处理方法; 创建DataFrame的通用前提及方法; 创建SparkSession的实例; 由SparkSession的实例去创建DataFrame; 操作DataFrame的两种方式; 类pandas方法; 类SQL方法; 简单的性能优化; 写好脚本后,如何提交; 用spark-submit提交的方法; 创建Da

BaideS的博客 1433

day01_Spark基础

简单来说,Spark是大数据领域的“速度与激情”,它是一个快速的通用引擎,用于大规模数据处理。具体而言,Spark是一个开源的分布式计算系统,它提供了强大的API,支持Java、Scala、Python和R等多种编程语言。Spark的核心在于其内存计算能力,这使得它在处理数据时比传统的磁盘存储计算方式要快得多。它适用于各种数据处理任务,包括批处理、实时流处理、机器学习和图处理等。

AGI爱好者_数仓&可视化&数据分析工程师_Vae’伯乐‘ 1830

spark之安装,介绍01

1 Spark介绍 1.1 什么是Spark ​ spark官网地址:http://spark.apache.org 和https://databricks.com/ Spark它就是一个集成离线计算,实时计算,SQL查询,机器学习,图计算为一体的通用的计算框架。 1.2 RDD 说的太好了,都写上 何为RDD,其实RDD就是一个不可变的scala的并行集合。 ​ Spark的核心概念就是RDD,指的是一个只读的,可分区的分布式数据集,这个数据的全部或者部分可以缓存在内存中,在多次计算间被重用。

自律 682

Spark基本命令

一、spark所在目录 cd usr/local/spark 二、启动spark /usr/local/spark/sbin/start-all.sh 启动Hadoop以及Spark: bash ./starths.sh 浏览器查看: 172.16.31.17:8080 停止H...

607

Spark_01

Spark相关介绍 Apache Spark 是专为大规模数据处理而设计的快速通用的计算引擎。Spark是UC Berkeley AMP lab (加州大学伯克利分校的AMP实验室)所开源的类Hadoop MapReduce的通用并行框架,Spark,拥有Hadoop MapReduce所具有的优点;但不同于MapReduce的是——Job中间输出结果可以保存在内存中,从而不再需要读写HDFS,因...

weixin_42581821的博客 168

Spark[01]Spark集群安装以及配置

Spark[01]Spark集群安装以及配置 目录Spark[01]Spark集群安装以及配置准备环境Hadoop2.0虚拟机①、②、③虚拟机①、②、③资源列表一、spark集群配置解压spark虚拟机①修改配置slaves虚拟机①spark-env.sh虚拟机①profile虚拟机①发送相关文件到②、③虚拟机①虚拟机②、③启动顺序虚拟机①、②、③虚拟机①关闭顺序虚拟机①虚拟机①、②、③测试运行计算PI程序本地模式(local)虚拟机①集群模式(standalone)虚拟机①二、配置历史服务准备环境虚拟机①

Toozky的博客 491

Spark01

Spark授课笔记01

Rouer_jia的博客 446

配置Hive使用Spark执行引擎

在Hive中,可以通过配置来指定使用不同的执行引擎。Hive执行引擎包括:默认MR、tez、spark。

积跬步,至千里。 6001
上一篇: 配置yum源
下一篇: Spark02——三大数据结构
First_____
博客等级 码龄6年 132粉丝 150原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值