0

在我当前的 spark 应用程序中,我正在检查 hdfs,hdfs URI 如下所示

hdfs:///tmp/log

我收到一个错误 org.apache.hadoop.HadoopIllegalArgumentException: Uri without authority: hdfs:/tmp/

我观察到///已解决/

这是一个错误还是我缺少任何配置。谢谢

4

1 回答 1

0

这取决于您如何fs.defaultFScore-site.xml文件中配置。(火花:3.2.0,Hadoop:3.2)

对于 HDFS

核心站点.xml

<property><name>fs.defaultFS</name><value>hdfs://hadoop-master:9000</value></property>

代码(默认路径在 hdfs 存储上):

df.writeStream.format("kafka").option("checkpointLocation", '/tmp/checkpoint').start()

对于文件

核心站点.xml

<property><name>fs.defaultFS</name><value>file:///</value></property>

代码(默认路径在文件存储上):

df.writeStream.format("kafka").option("checkpointLocation", '/tmp/checkpoint').start()

更改代码中的存储

代码(对默认值不重要):

df.writeStream.format("kafka").option("checkpointLocation", 'hdfs://hadoop-master:9000/tmp/checkpoint').start()

# or

df.writeStream.format("kafka").option("checkpointLocation", 'file:///tmp/checkpoint').start()
于 2021-12-07T16:49:11.383 回答