spark 相关概念补充

这篇具有很好参考价值的文章主要介绍了spark 相关概念补充。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

spark 相关概念补充

课程目标

  • 了解spark的安装部署
  • 知道spark作业提交集群的过程

6.1 spark的安装部署

  • 1、下载spark安装包

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

    高版本不存在cdh的编译版本,可以从官网下载源码版本,指定高版本hadoop进行编译

    编译步骤:

    • 1,安装java(JDK 1.7及以上)

      export JAVA_HOME=/xxx
      export JRE_HOME=/xxx
      export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib:$CLASSPATH
      export PATH=$JAVA_HOME/bin:$PATH
      
    • 2,安装Maven, 版本为3.3.9或者以上

      下载地址:https://mirrors.tuna.tsinghua.edu.cn/apache//maven/maven-3/3.3.9/binaries

      配置MAVEN_HOME

      export MAVEN_HOME=/xxx
      export PATH=$MAVEN_HOME/bin:$PATH
      
    • 3,下载spark源码

      [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-wCTIg1Hz-1690191869866)(C:/Users/beibei/Desktop/%E6%89%80%E6%9C%89%E8%B5%84%E6%96%99/spark-core/pics/s1.png)]

    • 4,增加cdh的repository

      解压spark的源码包,编辑pom.xml文件, 在repositories节点 加入如下配置:

      <repository>
              <id>cloudera</id>
              <url>https://repository.cloudera.com/artifactory/cloudera-repos/</url></repository>
      
    • 5,编译

      设置内存:

      export MAVEN_OPTS=“-Xmx2g -XX:ReservedCodeCacheSize=512m”

      开始编译:

      ./dev/make-distribution.sh --name 2.6.0-cdh5.7.0 --tgz  -Pyarn -Phadoop-2.6 -Phive -Phive-thriftserver -Dhadoop.version=2.6.0-cdh5.7.0 -DskipTests clean package
      

      源码编译后,bin目录下的文件可能不存在可执行权限,需要通过chmod指令添加可执行权限

      chmod +x xxx

  • 2、规划spark安装目录

  • 3、解压安装包

  • 4、重命名安装目录

  • 5、修改配置文件

    • spark-env.sh(需要将spark-env.sh.template重命名)
      • 配置java环境变量
        • export JAVA_HOME=java_home_path
      • 配置PYTHON环境
        • export PYSPARK_PYTHON=/xx/pythonx_home/bin/pythonx
      • 配置master的地址
        • export SPARK_MASTER_HOST=node-teach
      • 配置master的端口
        • export SPARK_MASTER_PORT=7077
  • 6、配置spark环境变量

    • export SPARK_HOME=/xxx/spark2.x
    • export PATH=$PATH:$SPARK_HOME/bin

6.2 spark 集群相关概念

  • spark集群架构(Standalone模式)

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-s4RSsDbK-1690191869867)(/img/spark1.png)]

    • Application

      用户自己写的Spark应用程序,批处理作业的集合。Application的main方法为应用程序的入口,用户通过Spark的API,定义了RDD和对RDD的操作。

    • Master和Worker

      整个集群分为 Master 节点和 Worker 节点,相当于 Hadoop 的 Master 和 Slave 节点。

      • Master:Standalone模式中主控节点,负责接收Client提交的作业,管理Worker,并命令Worker启动Driver和Executor。
      • Worker:Standalone模式中slave节点上的守护进程,负责管理本节点的资源,定期向Master汇报心跳,接收Master的命令,启动Driver和Executor。
    • Client:客户端进程,负责提交作业到Master。

    • Driver: 一个Spark作业运行时包括一个Driver进程,也是作业的主进程,负责作业的解析、生成Stage并调度Task到Executor上。包括DAGScheduler,TaskScheduler。

    • Executor:即真正执行作业的地方,一个集群一般包含多个Executor,每个Executor接收Driver的命令Launch Task,一个Executor可以执行一到多个Task。

  • Spark作业相关概念

    • Stage:一个Spark作业一般包含一到多个Stage。

    • Task:一个Stage包含一到多个Task,通过多个Task实现并行运行的功能。

    • DAGScheduler: 实现将Spark作业分解成一到多个Stage,每个Stage根据RDD的Partition个数决定Task的个数,然后生成相应的Task set放到TaskScheduler中。

    • TaskScheduler:实现Task分配到Executor上执行。

      [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-k6PVDHAS-1690191869868)(/img/spark2.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-FlUVlhOe-1690191869868)(/img/spark3.png)]文章来源地址https://www.toymoban.com/news/detail-607493.html

到了这里,关于spark 相关概念补充的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 大数据课程K2——Spark的RDD弹性分布式数据集

    文章作者邮箱:yugongshiye@sina.cn              地址:广东惠州 ⚪ 了解Spark的RDD结构; ⚪ 掌握Spark的RDD操作方法; ⚪ 掌握Spark的RDD常用变换方法、常用执行方法; 初学Spark时,把RDD看做是一个集合类型(类似于Array或List),用于存储数据和操作数据,但RDD和普通集合的区别

    2024年02月12日
    浏览(37)
  • Spark大数据分析与实战笔记(第三章 Spark RDD 弹性分布式数据集-02)

    人生很长,不必慌张。你未长大,我要担当。 传统的MapReduce虽然具有自动容错、平衡负载和可拓展性的优点,但是其最大缺点是采用非循环式的数据流模型,使得在迭代计算式要进行大量的磁盘IO操作。Spark中的RDD可以很好的解决这一缺点。 RDD是Spark提供的最重要的抽象概念

    2024年02月22日
    浏览(50)
  • 【分布式训练】基于PyTorch进行多GPU分布式模型训练(补充)

    简介: 在PyTorch中使用DistributedDataParallel进行多GPU分布式模型训练。 原文链接:https://towardsdatascience.com/distributed-model-training-in-pytorch-using-distributeddataparallel-d3d3864dc2a7 随着以ChatGPT为代表的大模型的不断涌现,如何在合理的时间内训练大模型逐渐成为一个重要的研究课题。为了解

    2024年02月16日
    浏览(38)
  • 大数据开源框架环境搭建(七)——Spark完全分布式集群的安装部署

    前言:七八九用于Spark的编程实验 大数据开源框架之基于Spark的气象数据处理与分析_木子一个Lee的博客-CSDN博客_spark舆情分析 目录 实验环境: 实验步骤: 一、解压 二、配置环境变量:  三、修改配置文件  1.修改spark-env.sh配置文件: 2.修改配置文件slaves: 3.分发配置文件:

    2024年02月11日
    浏览(38)
  • 云计算与大数据第16章 分布式内存计算平台Spark习题

    1、Spark是Hadoop生态(  B  )组件的替代方案。 A. Hadoop     B. MapReduce        C. Yarn             D.HDFS 2、以下(  D  )不是Spark的主要组件。 A. Driver      B. SparkContext       C. ClusterManager D. ResourceManager 3、Spark中的Executor是(  A  )。 A.执行器      B.主节

    2024年02月14日
    浏览(62)
  • 分布式补充技术 01.AOP技术

    01.AOP技术是对于面向对象编程(OOP)的补充。是按照OCP原则进行的编写,(ocp是修改模块权限不行,扩充可以) 02.写一个例子: 创建一个新的java项目,在main主启动类中,写如下代码。 一个接口,一个接口实现类,一个main主方法。 03.如果要实现显示接口实现类中的send方法运行

    2024年02月07日
    浏览(41)
  • 分布式计算中的大数据处理:Hadoop与Spark的性能优化

    大数据处理是现代计算机科学的一个重要领域,它涉及到处理海量数据的技术和方法。随着互联网的发展,数据的规模不断增长,传统的计算方法已经无法满足需求。因此,分布式计算技术逐渐成为了主流。 Hadoop和Spark是目前最为流行的分布式计算框架之一,它们都提供了高

    2024年01月23日
    浏览(41)
  • 数据存储和分布式计算的实际应用:如何使用Spark和Flink进行数据处理和分析

    作为一名人工智能专家,程序员和软件架构师,我经常涉及到数据处理和分析。在当前大数据和云计算的时代,分布式计算已经成为了一个重要的技术方向。Spark和Flink是当前比较流行的分布式计算框架,它们提供了强大的分布式计算和数据分析功能,为数据处理和分析提供了

    2024年02月16日
    浏览(47)
  • 分布式计算框架:Spark、Dask、Ray 分布式计算哪家强:Spark、Dask、Ray

    目录 什么是分布式计算 分布式计算哪家强:Spark、Dask、Ray 2 选择正确的框架 2.1 Spark 2.2 Dask 2.3 Ray 分布式计算是一种计算方法,和集中式计算是相对的。 随着计算技术的发展, 有些应用需要非常巨大的计算能力才能完成,如果采用集中式计算,需要耗费相当长的时间来完成

    2024年02月11日
    浏览(50)
  • Spark单机伪分布式环境搭建、完全分布式环境搭建、Spark-on-yarn模式搭建

    搭建Spark需要先配置好scala环境。三种Spark环境搭建互不关联,都是从零开始搭建。 如果将文章中的配置文件修改内容复制粘贴的话,所有配置文件添加的内容后面的注释记得删除,可能会报错。保险一点删除最好。 上传安装包解压并重命名 rz上传 如果没有安装rz可以使用命

    2024年02月06日
    浏览(62)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包