无法将spark与azure gen2连接

jtjikinw  于 2021-05-31  发布在  Hadoop
关注(0)|答案(0)|浏览(264)

我正在尝试将spark与azure gen2 datalake连接。为了连接它,我发现它需要以下两个类:

.set("spark.hadoop.fs.AbstractFileSystem.abfss.impl", "org.apache.hadoop.fs.azurebfs.Abfss")
.set("spark.hadoop.fs.abfss.impl", "org.apache.hadoop.fs.azurebfs.SecureAzureBlobFileSystem")

从github repo我看到这两个类包含在hadoopazure2.10和3.*版本中。我正在尝试部署spark kubernetes操作符,它有2.7.3个二进制文件。在我的maven中,我添加了hadoop azure 3.2.1和hadoop commons 3.2.1,但是我得到了一个例外,

Exception in thread "main" java.lang.NoSuchMethodError: org.apache.hadoop.security.ProviderUtils.excludeIncompatibleCredentialProviders(Lorg/apache/hadoop/conf/Configuration;Ljava/lang/Class;)Lorg/apache/hadoop/conf/Configuration;

表示hadoop版本之间存在冲突。奇怪的是,我们还使用了一些作业中的databrick,它们似乎有2.7.3hadoop二进制文件,但一切正常。我尝试在pom 3.2.1版本中添加所有hadoop依赖项,但异常仍然存在。
既然我需要2.10以上的hadoop版本,但是我的集群有2.7.3版本,那么如何用gen2配置spark呢?

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题