pyspark读取不存在的文件时的错误处理

im9ewurl  于 2021-05-30  发布在  Hadoop
关注(0)|答案(1)|浏览(481)

我有一个巨大的目录和文件列表,有可能从中读取。然而,其中一些可能并不存在,这不是一个问题-我会简单地忽略任何错误-使用try方法。有没有办法让我把这个放进Pypark。
下面是返回的错误消息:

py4j.protocol.Py4JJavaError: An error occurred while calling z:org.apache.spark.api.python.PythonRDD.collectAndServe.
: org.apache.hadoop.mapred.InvalidInputException: Input path does not exist: file:

我正在构建一系列文件以查看以下内容:

scI = sc.textFile(",".join(paths))

其中paths是指向可能文件的路径列表。现在我可以检查文件系统,看看它们是否存在,但是有没有更简单的方法呢?

yb3bgrhw

yb3bgrhw1#

以下应起作用:

for f in file_list:
   Try:
       read_file(f)
   except org.apache.hadoop.mapred.InvalidInputException:
       deal_with_absent_file(f)

相关问题