Spark应用程序第三方jar文件依赖解决方案
第一种方式
操作:将第三方jar文件打包到最终形成的spark应用程序jar文件中
应用场景:第三方jar文件比较小,应用的地方比较少
第二种方式
操作:使用spark-submit提交命令的参数: --jars
要求:
1、使用spark-submit命令的机器上存在对应的jar文件
2、至于集群中其他机器上的服务需要该jar文件的时候,通过driver提供的一个http接口来获取该jar文件的(例如:http://192.168.187.146:50206/jars/mysql-connector-java-5.1.27-bin.jar Added By User)
## 配置参数:--jars JARS
如下示例:
$ bin/spark-shell --jars /opt/cdh-5.3.6/hive/lib/mysql-connector-java-5.1.27-bin.jar
应用场景:要求本地必须要有对应的jar文件
第三种方式
操作:使用spark-submit提交命令的参数: --packages
## 配置参数:--packages jar包的maven地址
如下示例:
$ bin/spark-shell --packages mysql:mysql-connector-java:5.1.27 --repositories http://maven.aliyun.com/nexus/content/groups/public/
## --repositories 为mysql-connector-java包的maven地址,若不给定,则会使用该机器安装的maven默认源中下载
## 若依赖多个包,则重复上述jar包写法,中间以逗号分隔
## 默认下载的包位于当前用户根目录下的.ivy/jars文件夹中
应用场景:本地可以没有,集群中服务需要该包的的时候,都是从给定的maven地址,直接下载
第四种方式
操作:更改Spark的配置信息:SPARK_CLASSPATH, 将第三方的jar文件添加到SPARK_CLASSPATH环境变量中
注意事项:要求Spark应用运行的所有机器上必须存在被添加的第三方jar文件
A.创建一个保存第三方jar文件的文件夹:
命令:$ mkdir external_jars
B.修改Spark配置信息
命令:$ vim conf/spark-env.sh
修改内容:SPARK_CLASSPATH=$SPARK_CLASSPATH:/opt/cdh-5.3.6/spark/external_jars/*
C.将依赖的jar文件copy到新建的文件夹中
命令:$ cp /opt/cdh-5.3.6/hive/lib/mysql-connector-java-5.1.27-bin.jar ./external_jars/
应用场景:依赖的jar包特别多,写命令方式比较繁琐,被依赖包应用的场景也多的情况下
备注:(只针对spark on yarn(cluster)模式)
spark on yarn(cluster),如果应用依赖第三方jar文件
最终解决方案:将第三方的jar文件copy到${HADOOP_HOME}/share/hadoop/common/lib文件夹中(Hadoop集群中所有机器均要求copy)
Spark应用程序第三方jar文件依赖解决方案的更多相关文章
- spark-submit 应用程序第三方jar文件
第一种方式:打包到jar应用程序 操作:将第三方jar文件打包到最终形成的spark应用程序jar文件中 应用场景:第三方jar文件比较小,应用的地方比较少 第二种方式:spark-submit 参数 ...
- 关于 maven 打包直接运行的 fat jar (uber jar) 时需要包含本地文件系统第三方 jar 文件的问题
关于maven打包fat jar (uber jar) 时需要包含本地文件系统第三方jar文件的问题,今天折腾了一整天.最后还是用了spring boot来做.下面是几篇关于打包的有参考价值的文章,以 ...
- Spark任务提交jar包依赖解决方案
转载自:http://blog.csdn.net/wzq294328238/article/details/48054525 通常我们将Spark任务编写后打包成 ...
- Maven使用第三方jar文件的两种方法
转于http://blog.csdn.net/youhaodeyi/article/details/1729116 主要用于回查与标记 在Maven中,使用第三方库一般是通过pom.xml文件中定义的 ...
- 在maven项目中解决第三方jar包依赖的问题
在maven项目中,对于那些在maven仓库中不存在的第三方jar,依赖解决通常有如下解决方法: 方法1:直接将jar包拷贝到项目指定目录下,然后在pom文件中指定依赖类型为system,如: < ...
- Maven使用第三方jar文件的两种方法 转
在Maven中,使用第三方库一般是通过pom.xml文件中定义的dependency从远程repository中下载该库.但是如果库文件是公司内部的库,或者在本地而不能通过远程repository下载 ...
- Maven使用第三方jar文件的两种方法<转>
http://www.cnblogs.com/sekai/p/5932206.html 今天用上了.. ===================== 在Maven中,使用第三方库一般是通过pom.xml ...
- Liferay 7 OSGi第三方jar包依赖问题
发现遇到这个问题的人挺多的,现在跟新一下好好写. 在开发Liferay的时候,我们常常会遇到Unresolved requirement: Import-Package: {package name} ...
- 用记事本写的java程序引用jar文件
1.将须要用的jar文件和java程序复制到同一个文件文件夹下 2.进行编译.编译的命令:javac -cp log4j-1.2.15.jar A.java 3.进行运行.运行的命令:java -cp ...
- Maven使用第三方Jar文件
本例中,需要在Maven项目里添加uiautomator.jar文件.以下介绍两种方法: 方法一:在pom.xml里指定jar文件目录 <dependency> <groupId&g ...
随机推荐
- C 语言初学者必备开发工具——Dev-Cpp [ 图文安装教程 ]
前言 C 语言是一门功能强大的专业化编程语言,深受专业程序员和业余编程爱好者的喜爱,同时 C 语言也是当今最流行的嵌入式开发语言.大多数嵌入式项目的开发都是用 C 语言来编写的. 既然 C 语言这么厉 ...
- flutter_swiper:Another exception was thrown: ScrollController attached to multiple scroll views.
Another exception was thrown: ScrollController attached to multiple scroll views. 翻译一下:引发了另一个异常:Scro ...
- 初探富文本之OT协同实例
初探富文本之OT协同实例 在前边初探富文本之OT协同算法一文中我们探讨了为什么需要协同.为什么仅有原子化的操作并不能实现协同.为什么要有操作变换.如何进行操作变换.什么时候能够应用操作.服务端如何进行 ...
- drf-day5——反序列化类校验部分源码分析、断言、drf请求、drf响应、视图组件及两个视图基类、基于GenericAPIView+5个视图扩展类
目录 一.反序列化类校验部分源码解析(了解) 二.断言 三.drf之请求 3.1 Request能够解析的前端传入的编码格式 3.2 Request类有哪些属性和方法(学过) 常用参数 Respons ...
- ROS入门:小海龟实验
1.初试小海龟 1.roscore 2.rosrun turtlesim turtlesim_node 3.rosrun turtlesim turtle_teleop_key 2.发布话题控制小海龟 ...
- 5.安装&卸载子应用 投票
另起一个新的Django项目 djangoProject_poll_test ........ 把.tar.gz包下载到某个路径 D:\此电脑下分类\桌面\django-polls\dist\djan ...
- C语言-三子棋项目
开源地址 https://kxd.lanzoul.com/iLwHG0e4nupc 肯定有大量BUG 求指出 电脑自动下棋的算法很差 毕竟我也没特意去研究
- [POI2014]HOT-Hotels 加强版
长链剖分优化 \(dp\) 模板 不过这 \(dp\) 真毒 \(\text{Code}\) #include <cstdio> #define RE register #define I ...
- Atcoder题解:Arc156_c
数据范围 \(10^5\),但是介绍一个 \(O(n\log n)\) 做法. 我们考虑观察样例,发现样例都很小,而且 \(\text{LCS}\) 的长度都是 \(1\),那么我们就猜答案最多为 \ ...
- Python实战项目1-开发流程需求分析/基础环境搭建
软件开发流程 # 真正的企业里软件从立项到交付整个过程 -立项:确定公司要开发这个软件 公司高层 -软件来源 -产品经理设计出来的---->互联网项目 互联网公司 -用户(医院,政府部门,企业. ...