Spark SQL表分区找不到文件
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Spark SQL表分区找不到文件相关的知识,希望对你有一定的参考价值。
我有一个用于运行Spark SQL应用程序的spark集群。我正在尝试表分区的Spark SQL功能。当我提取数据时,我收到一个文件未找到异常,说明文件X不存在,该文件与我正在摄取的数据有关。这种行为只发生在表的某些特定字段中,对于其他字段,我能够成功插入数据并稍后查询。另一个观察是,如果我关闭远程工作人员,摄取适用于任何字段。我使用Spark 2.2,独立模式。我没有适当的分布式文件系统,我在摄取完成后手动同步文件。任何人都知道为什么会出现这种行为?
答案
这似乎是因为你没有HDFS。如果在工作节点执行任务时有HDFS,则可以使用这些文件。因为你没有HDFS,当任务被传递给工作者节点时,他们看不到他们应该从哪里读取数据的位置。
我会说你应该使用HDFS或安装NFS,这样无论工作节点在哪里,所有节点都可以访问相同的文件。
我希望这有帮助。
以上是关于Spark SQL表分区找不到文件的主要内容,如果未能解决你的问题,请参考以下文章
源码级解读如何解决Spark-sql读取hive分区表执行效率低问题