将Parquet文件写入本地磁盘

时间:2017-11-14 00:10:31

标签: azure apache-spark azure-storage parquet azure-data-lake

我在本地磁盘上写了spark数据帧,我无法读回来。

val path = "file:///mnt/resources/....."
df.write.parquet(path) 
val d = spark.read.parquet(path)

我收到以下错误:

org.apache.spark.sql.AnalysisException: Unable to infer schema for Parquet. It must be specified manually.;

我可以从Azure Datalake或Storage读取和写入,但不能使用本地磁盘。 有没有人面临同样的问题?怎么解决?我也测试了.csv文件,在这种情况下,它说文件不存在,即使我在登录工作节点时也可以看到该文件。

1 个答案:

答案 0 :(得分:1)

TL; DR 写入本地文件系统仅对local模式下的测试有用。

使用群集部署时,不应使用本地文件系统进行写入。在这种情况下,每个执行程序都会写入自己的文件系统,之后无法实现一致的读取。