You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在Databricks数据湖读取最新文件时遇路径不存在错误排查

问题排查:Databricks读取挂载目录文件报PATH_NOT_FOUND

用户代码如下,用于从Databricks挂载的数据湖目录读取最新CSV文件:

directory_path = "dbfs:/mnt/x_file_directory"
files = dbutils.fs.ls(directory_path)
latest_file = max(files, key=lambda f:f.modificationTime)
latest_file_path = latest_file.path
df = spark.read.option("header", "true").option("inferSchema", "true") \
  .csv(latest_file_path).toPandas()

运行时触发错误:

AnalysisException: [PATH_NOT_FOUND] Path does not exist: dbfs:/mnt/x_file_directory/file_name

以下是具体排查方向和解决办法:

1. 验证挂载点有效性

先确认挂载点是否正常存在,执行以下命令查看所有已挂载路径:

dbutils.fs.mounts()

如果/mnt/x_file_directory不在返回列表中,说明挂载失效或未正确创建,需要重新执行对应存储类型的挂载命令(如ADLS Gen2、S3等)。

2. 调整路径格式适配Spark读取

dbutils.fs.ls返回的路径带dbfs:前缀,但部分存储类型下,Spark读取需要使用/dbfs/的本地路径格式。尝试转换路径:

directory_path = "dbfs:/mnt/x_file_directory"
files = dbutils.fs.ls(directory_path)
file_list = [f for f in files if not f.isDir()]
latest_file = max(file_list, key=lambda f:f.modificationTime)
# 替换路径前缀适配Spark读取
latest_file_path = latest_file.path.replace("dbfs:", "/dbfs")
df = spark.read.option("header", "true").option("inferSchema", "true") \
  .csv(latest_file_path).toPandas()

3. 过滤目录,确保选中的是文件

dbutils.fs.ls会返回目录下的所有条目(包括子目录),如果选中的是子目录而非CSV文件,Spark读取会报错。添加过滤逻辑只保留文件:

directory_path = "dbfs:/mnt/x_file_directory"
files = dbutils.fs.ls(directory_path)
# 过滤出所有非目录的文件
file_list = [f for f in files if not f.isDir()]
if not file_list:
    raise Exception("目标目录下无可用文件")
latest_file = max(file_list, key=lambda f:f.modificationTime)
latest_file_path = latest_file.path
df = spark.read.option("header", "true").option("inferSchema", "true") \
  .csv(latest_file_path).toPandas()

4. 检查文件访问权限

验证集群是否有读取该文件的权限:

# 尝试读取文件前100字节,测试权限
dbutils.fs.head(latest_file_path)

如果返回权限错误,需要调整存储服务的权限配置:比如ADLS需给服务主体分配「存储Blob数据读取者」角色;S3需给IAM角色添加s3:GetObject权限。

5. 排查文件名特殊字符问题

打印latest_file_path确认具体路径,检查是否包含空格、特殊字符:

print(latest_file_path)

如果路径有特殊字符,可尝试在Databricks UI中手动打开该路径验证,或重命名文件消除特殊字符后再测试。


内容的提问来源于stack exchange,提问作者user21635113

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.08 04:42:48