《大数据基本处理框架原理与实践》PPT课件(共16次课)第八次课:Spark的基本原理.pptVIP

《大数据基本处理框架原理与实践》PPT课件(共16次课)第八次课:Spark的基本原理.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
宽依赖 宽依赖预示着子RDD的每一个分区依赖父RDD中的多个分区中的数据 子RDD每个分区的计算操作只能等到父RDD每个分区的计算完成之后取回属于自己分区的数据并进行汇聚之后才能进行 因此,宽依赖关系中的父RDD的操作必须要先于子RDD的操作执行并完成 宽依赖关系中的子RDD中的操作就不能像窄依赖关系中与父RDD中的操作一起由不同的Executor并行的以流水线的方式执行,必须分阶段来执行 区分两种依赖关系的意义 Spark区分RDD之间宽窄依赖的主要意义在于发现可以合并执行的RDD操作。 相对于MapReduce在每次操作之后都将数据写入磁盘,Spark通过合并窄依赖RDD中的操作使得大部分的计算都在内存中完成,提高了计算效率。 Spark通过建立RDD之间的DAG图,然后将DAG划分为不同阶段的目的就是为了识别由窄依赖关系所连接的RDD。 但是,Spark将DAG划分为不同阶段的主要依据却是宽依赖。 区分两种依赖关系的意义 Spark区分RDD之间宽窄依赖的主要意义在于发现可以合并执行的RDD操作。 相对于MapReduce在每次操作之后都将数据写入磁盘,Spark通过合并窄依赖RDD中的操作使得大部分的计算都在内存中完成,提高了计算效率。 Spark通过建立RDD之间的DAG图,然后将DAG划分为不同阶段的目的就是为了识别由窄依赖关系所连接的RDD。 但是,Spark将DAG划分为不同阶段的主要依据却是宽依赖。 区分两种依赖关系的意义 根据RDD之间的衍生血缘关系,建立表示RDD之间的关系的有向无环图DAG 然后以识别宽依赖为标识,基于广度优先搜索的方式进行反向解析来将DAG划分为不同的阶段 DAG的不同阶段的划分 RDD的容错机制 对于窄依赖来讲,在恢复子RDD中某个丢失的分区时,只需要找到其父RDD的对应分区,然后根据子RDD中记录的操作重新进行计算即可。 整个过程不需要涉及父RDD的其它分区,也不涉及子RDD的其它分区。 窄依赖关系中的容错 RDD的容错机制 而对于宽依赖来说,恢复子RDD分区的容错处理机制则将重新计算父RDD的所有分区数据,相对于窄依赖中的容错处理过程来说将会产生冗余计算。 宽依赖关系中的容错 报告提纲 Spark概述 Spark的架构 上节课知识点回顾 弹性数据集RDD 谢谢大家! Spark的安装部署 1. 将安装包拖入到Linux虚拟机的桌面,然后进入桌面所在的文件路径,使用如下命令对Spark进行解压和重命名等操作 ? //将Spark安装文件解压到/usr/local sudo tar –zxvf spark-2.4.5-bin-without-hadoop.tgz -C /usr/local //对安装文件进行重命名 cd /usr/local//解压文件所在的目录 sudo mv spark-2.4.5-bin-without-hadoop spark//应用linux mv命令进行重命名 sudo chown -R hadoop ./spark//赋予当前用户对spark目录进行处理的权限 ? Spark的安装部署 2.通过如下Linux命令进入Spark解压文件中的conf文件夹,并根据Spark自带的模板创建spark-env.sh配置文件 ? cd /usr/local/spark/conf //进入配置文件所在的文件夹 cp spark-env.sh.template spark-env.sh //通过复制创建一个spark-env.sh文件 ? Spark的安装部署 3.通过在Linux终端使用命令“vim spark-env.sh”修改配置文件spark-env.sh。在配置文件的空白处,添加如下内容 ? //配置Hadoop的路径 export SPARK_DIST_CLASSPATH=$(/usr/local/hadoop/bin/hadoop classpath) //配置Spark on YARN时需要用到的环境变量,“/usr/local/hadoop”为hadoop的路径 export HADOOP_CONF_DIR=/usr/local/hadoop/etc/hadoop export JAVA_HOME=/usr/local/jdk1.8.0_161//配置Java路径 ? Spark的安装部署 4.在spark-env.sh修改完成之后,我们进一步配置Spark的环境变量。使用如下命令打开当前用户根目录下的配置文件 vim ~/.bashrc 然后,在该文件的尾部添加如下信息,并通过source命令来使配置生效。 ? export SPARK_HOME=/usr/local/spark export PA

您可能关注的文档

文档评论(0)

139****1983 + 关注
实名认证
文档贡献者

副教授、一级建造师持证人

从事职业教育近20年,高级职称。

领域认证该用户于2023年06月21日上传了副教授、一级建造师

1亿VIP精品文档

相关文档