Synapse跨文件夹引用Notebook失败问题求助
解决mssparkutils.notebook.run引用子文件夹Notebook的404问题
针对Microsoft Fabric的mssparkutils正确路径写法
当目标Notebook位于MasterData/SKU子文件夹下时,可按以下两种方式修正路径:
1. 相对路径(推荐)
如果当前运行的Notebook与MasterData文件夹处于同一层级,直接使用相对路径即可:
env = 'test' mssparkutils.notebook.run(path="MasterData/SKU/Load Data from SAP", arguments={"environment": f"{env}" })
若需明确标识相对当前目录,也可添加./前缀:
env = 'test' mssparkutils.notebook.run(path="./MasterData/SKU/Load Data from SAP", arguments={"environment": f"{env}" })
2. 绝对路径
使用绝对路径时,需从工作区根目录开始,无需额外添加Notebooks前缀(Fabric工作区直接管理文件夹结构):
env = 'test' mssparkutils.notebook.run(path="/MasterData/SKU/Load Data from SAP", arguments={"environment": f"{env}" })
额外排查要点
- 大小写匹配:路径中的文件夹、Notebook名称区分大小写,需与实际结构完全一致
- 发布状态:确认目标Notebook已发布且版本最新,发布后的文件夹结构需与开发环境同步
- 权限验证:运行当前Notebook的身份需具备访问目标Notebook的权限
Databricks中dbutils的对应写法
在Databricks中引用Notebook的路径规则略有差异:
- 相对路径逻辑与Fabric一致:
env = 'test' dbutils.notebook.run(path="MasterData/SKU/Load Data from SAP", arguments={"environment": f"{env}" }) - 绝对路径需以
/Workspace/开头(需完整包含工作区层级):env = 'test' dbutils.notebook.run(path="/Workspace/MasterData/SKU/Load Data from SAP", arguments={"environment": f"{env}" })
内容的提问来源于stack exchange,提问作者Data_engineer_noobie
相关产品推荐
相关产品推荐

