【问题标题】:dbutils.notebook.run does not pick run notebook saved on DBFS locationdbutils.notebook.run 不选择保存在 DBFS 位置的运行笔记本
【发布时间】:2020-09-23 21:59:01
【问题描述】:

我将包含多个 python 笔记本和脚本的数据块工作区目录 (/Users/xyz/) 内容导出到数据块特定位置,例如/dbfs/tmp 然后尝试调用以下代码从导出的位置运行名为 xyz.py 的 python 笔记本,如下所示:

dbutils.notebook.run("/dbfs/tmp/xyz", timeout_seconds=1200)

OR

dbutils.notebook.run("dbfs:/tmp/xyz", timeout_seconds=1200)

OR

dbutils.notebook.run("../../tmp/xyz", timeout_seconds=1200)

dbutils 总是找不到笔记本路径并给出以下异常:

com.databricks.WorkflowException: com.databricks.NotebookExecutionException: Unknown state: Notebook not found: /dbfs:/tmp/xyz

虽然如果我检查笔记本是否存在相同的 dbfs 路径,那么我可以看到笔记本已被放置。

如何从 databricks 运行具有特定位置的 dbutils.notebook.run 语句?

【问题讨论】:

    标签: databricks dbutils


    【解决方案1】:

    这是 dbutils.notebook.runs 的例外行为。当您指定"/Users/abc@org.com/notebookname" 以外的位置时,它会引发以下错误消息com.databricks.WorkflowException: com.databricks.NotebookExecutionException: Unknown state: Notebook not found: /tmp/mount.dbc

    我建议您将所有笔记本放在用户下,然后您可以使用dbuitls.notebook.run("/Users/abc@org.com/NotebookName") 调用笔记本。

    【讨论】:

    • 嗨@CHEEKATLAPRADEEP-MSFT 谢谢。这是否意味着 dbutls.notebook.run 不能从任何 dbfs 位置执行任何 python 脚本/笔记本,但您的用户工作区除外?因为我需要在 DBFS 位置克隆 git repos,然后从克隆位置执行笔记本。
    猜你喜欢
    • 2023-02-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-07-28
    • 1970-01-01
    • 2018-09-23
    • 2022-08-16
    • 2020-05-17
    相关资源
    最近更新 更多