| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 大数据 -> Spark开发学习之使用idea开发Spark应用 -> 正文阅读 |
|
[大数据]Spark开发学习之使用idea开发Spark应用 |
Spark学习之使用idea开发Spark应用该文章是基于jdk1.8,idea开发工具,maven都配置好的前提下进行讲述的。 背景由于已经在远程centos服务器上部署了saprk服务,但基于spark的应用程序的代码却是在本地idea开发的,那么如何能让本地开发的spark代码能在远程spark服务上运行调试便成了迫切需要解决的问题。 idea下scala插件安装idea开发工具,File->setting->Plugins->Browse respositories,搜索scala,下载和自己idea版本对应的插件。 idea下新建maven项目配置项目的Scala配置maven依赖修改pom.xml文件,新增如下内容:
其中,spark-core版本要和《spark3.1.2 单机安装部署》文章中部署的spark版本一致,因为在文章《Spark开发实战之Scala环境搭建》中本地scala配置的版本是2.12,否则程序运行会报错。 配置完成后等待依赖包加载完毕。 新建一个Scala对象,代码如下:
配置远程部署路径Scala文件最终会被打包成jar文件,然后使用spark-submit工具提交到spark主节点执行任务。由于spark-submit工具在远程服务器,所以需要配置jar包到远程服务器的部署,如下: idea Tools->deployment->configuration,弹出deployment窗口,点击+号,按下图选择Type,name自定义: 配置connection: 其中,sftp host、user name、Password 是远程服务器ip、账号、密码,配置完后可以点击 SFTP host后的TestSFTP connection按钮测试是否可连接。Root path 是远程服务器部署jar包的目录。 配置Mappings: 其中,deployment path on server spark 路径是相对于配置connection 中的 Root path。 idea Tools->deployment->option,配置如下: 调用 mvn package 打包,然后上传到远程服务器: 到远程服务器Root path 下 找到 上传jar包,然后执行如下命令将jar上传到spark服务器,并在开启jvm在8336端口监听:
其中,–master spark master 节点地址 address=8336 jvm监听端口 server=y y表示启动的JVM是被调试者。如果为n,则表示启动的JVM是调试器 suspend=y y表示启动的JVM会暂停等待,直到调试器连接上才继续执行,如果为n,则JVM不会暂停等待 如下图,启动监听成功。
配置远程调试如下: 在右上角debug处选择刚才建立的远程调试项目,点击运行。
结论本文讲述的调试方式仅适合单人学习开发的场景,不适合多人开发,因为都要观察远程服务器的调试日志,会搞混。若是在实际公司开发场景中,还是建议在本地配置saprk环境进行开发调试。 参考文章 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2025年5日历 | -2025/5/11 2:37:02- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |