在Databricks中,检查路径是否存在



我正在从数据采集存储中读取CSV文件,因为我有多个路径,但如果不存在任何一个路径,就会出现异常。我想避免这种期望。

我认为如果你想检查多个路径,如果一个路径不存在,检查就会失败。也许你可以尝试一种不同的方法。

对于给定的示例,如果您想子选择子文件夹,可以尝试以下操作。

读取给定目录的子目录:

# list all subfolders and files in directory demo
dir = dbutils.fs.ls ("/mnt/adls2/demo")

过滤出相关的子目录:

pathes = ''
for i in range (0, len(dir)):
subpath = dir[i].path
if '/corr' in subpath or '/deci' in subpath and subpath.startswith ('dbfs:/'): # select dirs to read 
pathes =  pathes + (dir[i].path) + ' '  
# convert the string to a list 
pathes = list(pathes.split())

使用结果列表读取数据帧:

df = (spark.read
.json(pathes))

其中path是一个特定变量,您可以使用检查它是否存在(scala(:

dbutils.fs.ls("/mnt").map(_.name).contains(s"$path/")

您必须使用块Blob作为装载点,才能从数据块中工作,并能够看到其中的Blob。

相关内容

  • 没有找到相关文章

最新更新