当前位置:首页 > 技术分享 > 正文内容

windows10环境下搭建spark on yarn源码调试环境

lmwmm3年前 (2023-03-13)技术分享3011

    spark 3.0.0版本刚出炉,官方称相比2.4版本,性能提升了2倍。考虑到生产环境下 spark on yarn的模式居多,本文在Windows10环境下,搭建spark on yarn的源码阅读调试环境。使得最新功能能够以最快的速度反哺生产环境,进一步提升线上性能。spark3.0的最新功能可以参考官方博客内容:https://databricks.com/blog/2020/06/18/introducing-apache-spark-3-0-now-available-in-databricks-runtime-7-0.html

依赖工具

1.jdk 1.8

2.scala 2.12

3.maven 3.6

4.IDEA

5.winutils.exe (对应hadoop版本2.9.2)

6.hadoop (2.9.2)

7.spark3.0

步骤

    winutils.exe是在Windows系统上需要的hadoop调试环境工具,里面包含一些在Windows系统下调试hadoop、spark所需要的基本的工具类,另外在使用eclipse调试hadoop程序时,也需要winutils.exe 。下载地址:https://github.com/steveloughran/winutils 下载后的winutils.exe放到HADOOP_HOME/bin目录下。

设置hadoop环境变量

在系统变量path里增加%HADOOP_HOME%\bin

windows10环境下搭建spark on yarn源码调试环境

下载spark源码

在spark官方网站下载spark源码:https://spark.apache.org/

下载后进行解压,进入源码根路径,因为想要调试在yarn下和kubernetes下的资源调度流程,设置yarn 和kubernetes选项:

./build/mvn -Pyarn -Dhadoop.version=2.9.2 -Phive -Phive-thriftserver -Pkubernetes -DskipTests clean package

windows10环境下搭建spark on yarn源码调试环境

耐心等待半个小时左右。编译结果如下

windows10环境下搭建spark on yarn源码调试环境

将编译后的代码导入IDEA

用git bash以管理员身份运行build/spark-build-info 用以生成spark-version-info.properties文件 build/spark-build-info D:\opensource\spark-3.0.0\core\target\extra-resources\ 3.0.0 将生成的spark-version-info.properties文件复制到spark-core_2.12-3.0.0.jar的根目录下。(复制之前先检查根目录下是否存在spark-version-info.properties,不存在再复制)在conf目录下复制log4j.properties.template,重命名为log4j.properties将spark\assembly\target\scala-2.12\jars目录下的所有jar包添加到classpath中。

windows10环境下搭建spark on yarn源码调试环境

运行JavaLogQuery示例代码:

windows10环境下搭建spark on yarn源码调试环境

本地运行的方式调试成功。接下来配置调试spark on yarn 的方式。

首先启动hadoop单点服务,启动namenode,datanode,yarn.

首先通过start-dfs.cmd和start-yarn.cmd启动hadoop环境.

windows10环境下搭建spark on yarn源码调试环境

windows10环境下搭建spark on yarn源码调试环境

yarn

windows10环境下搭建spark on yarn源码调试环境

我们仍然以JavaLogQuery为例,设置相关的启动参数。

windows10环境下搭建spark on yarn源码调试环境

运行

windows10环境下搭建spark on yarn源码调试环境

查看yarn的web界面

windows10环境下搭建spark on yarn源码调试环境

之后我们可以从SparkSubmit.scala为入口,设置断点进行debug跟读了。


本篇文章来源于微信公众号:                 大数据技术圈

扫描二维码推送至手机访问。

版权声明:本文由点度点度金讯时代-BLOG发布,如需转载请注明出处。

本文链接:https://lmwmm.com/post/601.html

标签: windows10
分享给朋友:

“windows10环境下搭建spark on yarn源码调试环境” 的相关文章

苹果电脑MacBook使用谷歌浏览器翻译的方法

苹果电脑MacBook使用谷歌浏览器翻译的方法

自从上次写了《解决Chrome浏览器翻译无法使用》,有不少苹果MacBook电脑的用户加我微信,咨询我怎么在MacBook上正常使用谷歌翻译的方法,下面就详细说明一下。谷歌翻译终于退出中国,访问原本谷歌翻译的本地化域名,会提示收藏新的网址,…

普通2.4g遥控车改4g遥控车资料-8266

普通2.4g遥控车改4g遥控车资料-8266

  背景:传统遥控器都是航模为代表的2.4G遥控器,它们在室外且无障碍物时遥控距离很长,可达几千米,但是有障碍物时,遥控距离可能仅有10多米。市面上也有一些2.4g遥控改装4G的,是读取2.4g遥控信号,并转发至服务器,…

ChatGPT-4重磅发布,10秒做出一个网站,全面碾压上一代

ChatGPT-4重磅发布,10秒做出一个网站,全面碾压上一代

今日,#GPT4做一个网站只要十秒#的话题引发网友热议。据报道,当地时间周二(3月14日),人工智能研究公司OpenAI公布了其大型语言模型的最新版本——GPT-4。相比前一个版本,它有多强大?10秒钟做出一个网站一则有关GPT4发布会的视…

空气传导还是骨传导?我该怎么选?

空气传导还是骨传导?我该怎么选?

如果说去年是各种国产方案真蓝牙无线耳机爆发之年的话,那么今年可以说是国产方案骨传导耳机爆发的一年。最低的华强北骨传导耳机已经来到了不到20元的价位区间,当然正规品牌的国产方案产品也纷纷涌现。那么,空气传导和骨传导耳机,该怎么选?什么是空气传…

让文心一言和ChatGPT帮我设计开源项目,结果……

让文心一言和ChatGPT帮我设计开源项目,结果……

hi,我是一名电子工程师。作为一名有着创新精神的潮男,大洋彼岸ChatGPT的热风刚吹来,我就率先在上面提了一个人类永恒的话题:先有鸡还是先有蛋?而刚刚,我又获得了有“中国版ChatGPT”之称的文心一言内测资格,这次我决定让它帮我设计一个…

通過CE修改器來跑滿百度網盤和迅雷的下載速度! Cheat Engine 7.5

通過CE修改器來跑滿百度網盤和迅雷的下載速度! Cheat Engine 7.5

1.Cheat Engine 是一款內存修改編輯工具 ,它允許你修改你的遊戲或軟件內存數據,以得到一些其他功能。它包括16進制編輯,反彙編程序,內存查找工具。與同類修改工具相比,它具有強大的反彙編功能,且自身附帶了外掛製作工具,可…