![](/img/trans.png)
[英]How to add any new library like spark-sftp into my Pyspark code?
[英]Getting error in spark-sftp jar in pyspark cluster yarn submit
我们正在使用 pyspark 提交选项,使用 jar 文件放置在 hdfs 和纱线集群模式中,如下所示。
#######################
source *****.sh # setting environment variables
export PYSPARK_DRIVER_PYTHON=jupyter
export PYSPARK_DRIVER_PYTHON_OPTS='notebook'
/bin/pyspark --master yarn --deploy-mode client --driver-memory *g --executor-memory *g --executor-cores * --num-executors * --conf spark.yarn.archive=hdfs://node-master:/***/spark-libs.jar --jars hdfs://node-master:/***/spark-sftp_2.11-1.1.5.jar
###########################火花代码################### #######
conf = spark.sparkContext._conf.setAll(
[('spark.app.name', '***'),
("spark.sql.execution.arrow.enabled", "true"),
("spark.hadoop.fs.sftp.impl", "org.apache.hadoop.fs.sftp.SFTPFileSystem")])
spark = SparkSession \
.builder \
.config(conf=conf) \
.getOrCreate()
sc = spark.sparkContext
SFTP_HOST= 'host'
SFTP_USER = 'user'
SFTP_PEM = 'passkey'
file_path ='full_path'
spark.read\
.format("com.springml.spark.sftp")\
.option("host", SFTP_HOST)\
.option("username", SFTP_USER)\
.option("pem", SFTP_PEM)\
.option("fileType", "csv")\
.option("multiLine", "true")\
.option("header", "true")\
.load(file_path)
################################## 错误 ############### ##############
Py4JJavaError:调用 o52.load 时出错。 : java.lang.NoClassDefFoundError: com/springml/sftp/client/SFTPClient
问题我们还尝试了集群模式并按照以下链接进行操作,但仍在同一页面中。
https://github.com/springml/spark-sftp/blob/master/README.md 在 pyspark 中使用 spark-sftp jar
spark-sftp_2.11-1.1.5.jar
不是 uber/fat jar 这意味着它在构建工件时不包含依赖包。 您应该将缺少的依赖包添加到类路径中以使其正常工作。
在此处检查编译依赖项:
https://mvnrepository.com/artifact/com.springml/spark-sftp_2.11/1.1.5
Alternatively, you can also checkout https://github.com/arcizon/spark-filetransfer if interested which is developed by me to overcome few different issues I had faced with the spark-sftp
package like missing support for 2.12 and restrictions to DataFrame API文件类型的fileType
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.