使用 pyspark 在数据块中实现 FileNotFound 异常

Posted

技术标签:

【中文标题】使用 pyspark 在数据块中实现 FileNotFound 异常【英文标题】:implement FileNotFound exception in databricks using pyspark 【发布时间】:2020-11-12 17:01:39 【问题描述】:

我正在尝试在数据块中使用 pyspark 实现异常处理,其中我需要检查文件是否存在于源位置。

**df= spark.read.csv.option("inferschema","true").load("mnt/pnt/abc.csv") 

   try:    
    df = open("abc.csv","rt")
    print("File opened")
except FileNotFoundError:
    print("File does not exist")
except:
    print("Other error")**

我希望有类似上面的代码 sn-p 但是我无法采用这种方法。我会请求一些帮助将非常感谢

【问题讨论】:

【参考方案1】:

您不能直接排除 java.io 错误,但是您可以执行以下操作:

def read_file(path):
  try:
    dbutils.fs.ls(path)
    return spark.read.option("inferschema","true").csv(path)
  except Exception as e:
    if 'java.io.FileNotFoundException' in str(e):
      print('File does not exists')
    else:
      print('Other error')

read_file('mnt/pnt/abc.csv')

【讨论】:

以上是关于使用 pyspark 在数据块中实现 FileNotFound 异常的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Spark SQL(PySpark) 中实现自增

在 Pyspark 中实现 K-medoids

应用转换或连接条件以在 pyspark 或 hive 中实现结果

在使用动态数据的滑块中实现 jQuery

如何在 TPL 中实现连续运行的数据流块?

在 ScintillaNET 控件中实现块注释/取消注释