本文共 2169 字,大约阅读时间需要 7 分钟。
spark运行依赖jar包添加方式。
(1)方法:使用参数--jars添加本地的第三方jar文件,可以给定多个,使用逗号分隔
bin/spark-shell --jars /opt/modules/hive-1.2.1/lib/mysql-connector-java-5.1.27-bin.jar,/opt/modules/hive-1.2.1/lib/derby-10.10.2.0.jar
(2)适用情况:
要求jar文件在driver和client的机器上存在,适合依赖比较少的情况
(3) 查看:可以在4040页面查看环境,拉到最低端,看到user add jars,可以复制链接下载 在http://bigdata.ibeifeng.com:4041/environment/页面,最下面看到 : 结果: spark://192.168.31.3:50950/jars/derby-10.10.2.0.jar Added By User spark://192.168.31.3:50950/jars/mysql-connector-java-5.1.27-bin.jar Added By User(1)方法:使用参数--packages添加maven中央库中的第三方jar文件,可以给定多个,使用逗号分隔
这种方式可以通过--repositories的方式添加依赖仓库,不写就是用默认的bin/spark-shell --packages mysql:mysql-connector-java:5.1.27
(2)注意:
下载的jar文件会保存到当前用户的根目录下的.ivy2文件夹的jars文件夹中,eg:/home/beifeng/.ivy2/jars;适合依赖比较少的情况 例如下载位置:/root/.ivy2/jars/mysql_mysql-connector-java-5.1.27.jar (3)查看:http://bigdata.ibeifeng.com:4041/environment/网页最下面 spark://192.168.31.3:52185/jars/mysql_mysql-connector-java-5.1.27.jar Added By User注意:要求所有可以执行的节点都需要进行该配置,如果是spark on yarn,要求所有机器上有对应文件夹的jar文件
(1)创建文件夹mkdir -p external_jarscp /opt/modules/hive-1.2.1/lib/mysql-connector-java-5.1.27-bin.jar ./external_jars/cp /opt/modules/hive-1.2.1/lib/derby-10.10.2.0.jar ./external_jars/
(2)修改配置文件conf/spark-env.sh
vim conf/spark-env.shSPARK_CLASSPATH=/opt/modules/spark-2.1.0-bin-2.7.3/external_jars/*
(3)启动
bin/spark-shell
(4)查看结果
http://bigdata.ibeifeng.com:4041/environment/网页最下面 /opt/modules/spark-2.1.0-bin-2.7.3/external_jars/derby-10.10.2.0.jar System Classpath /opt/modules/spark-2.1.0-bin-2.7.3/external_jars/mysql-connector-java-5.1.27-bin.jar System Classpath(1)方法:将第三方的jar文件copy到${HADOOP_HOME}/share/hadoop/common/lib文件夹中或者${HADOOP_HOME}/share/hadoop/yarn/lib文件夹中
注意:使用spark-sql和spark-shell其实底层都是spark-submit,能配置的参数几乎都是一样的(1)hdfs上生成目录:/spark/jars
bin/hdfs dfs -mkdir /spark/jars(2)设置spark的配置参数spark-defaults.conf,添加
spark.yarn.jar hdfs://bigdata-01:8020/spark/jars(3)上传文件到hdfs://bigdata-01:8020/spark/jars
(4)spark-on-yarn在yarn上跑
bin/spark-shell --master yarn转载地址:http://waygi.baihongyu.com/