Мой код:PrintWriter рассматривает только один слэш вместо двойной слэш в пути HDFS
val df = sqlContext.read
.format("com.databricks.spark.xml")
.option("rowTag", header)
.load("/input/du3_init.dat")
val dfCI2 = df.select("CI2")
dfCI2.printSchema()
val path="hdfs://nameservice/user/CI2_Schema"
new PrintWriter(path) { write(dfCI2.schema.treeString);close}
Когда я исполняю в искру, я получаю
Exception in thread "main" java.io.FileNotFoundException: hdfs:/nameservice/user/CI2_Schema (No such file or directory)
at java.io.FileOutputStream.open(Native Method)
at java.io.FileOutputStream.<init>(FileOutputStream.java:221)
at java.io.FileOutputStream.<init>(FileOutputStream.java:110)
Только один слэш присутствует в путь hdfs, указанный в исключении. Как решить эту проблему ?. Заранее спасибо
'PrintWriter' не должен понимать сетевые пути, такие как' hdfs: // 'или' ftp: // '. Его работы с локальной файловой системой. А в локальных файловых системах пути имеют формат 'a/b/c'. –