【问题标题】:Synapse Notebook reference - how to use %runSynapse Notebook 参考 - 如何使用 %run
【发布时间】:2021-10-16 00:17:07
【问题描述】:

我正在尝试使用此处描述的 Azure Synapse 笔记本参考:

https://docs.microsoft.com/en-us/azure/synapse-analytics/spark/apache-spark-development-using-notebooks?tabs=preview#notebook-reference

这是我的设置,notebook_1 和 notebook_2 都在 Synapse notebook 的根文件夹下。

我在工作区中发布了一个 notebook_1,然后尝试在 notebook_2 中使用

%run 'notebook_1'

出现错误提示:

MagicUsageError:无法读取笔记本“notebook_1”。可能的原因是笔记本不存在。

有人可以就正确的做法提供建议吗?非常感谢。

【问题讨论】:

  • notebook_1 发布了吗?如果没有,它可能找不到参考。
  • notebook_1 和 notebook_2 都已发布。
  • 原来只是 %run notebook_1 工作
  • 只是确认一下,引号不正确?
  • 是的,删除报价后可以使用

标签: azure-synapse


【解决方案1】:

尝试删除笔记本中的单引号以解决问题:

【讨论】:

    【解决方案2】:

    还要确保您尝试调用的笔记本已发布。 更多关于调用笔记本的信息可以在这里找到:Run another synapse notebook(包括在下面)

    您可以通过调用 %run magic 或 mssparkutils 笔记本实用程序在 Synapse 笔记本活动中引用其他笔记本。两者都支持嵌套函数调用。根据您的场景,您应该考虑这两种方法的主要区别是:

    %run 魔术将所有单元格从引用的笔记本复制到 %run 单元格并共享变量上下文。当 notebook1 通过 %run notebook2 引用 notebook2 并且 notebook2 调用 mssparkutils.notebook.exit 函数时,notebook1 中的单元格执行将停止。当您想要“包含”笔记本文件时,我们建议您使用 %run 魔法。

    mssparkutils 笔记本实用程序将引用的笔记本作为方法或函数调用。变量上下文不共享。当 notebook1 通过 mssparkutils.notebook.run("notebook2") 引用 notebook2 并且 notebook2 调用 mssparkutils.notebook.exit 函数时,notebook1 中的单元格执行将继续。我们建议您在要“导入”笔记本时使用 mssparkutils 笔记本实用程序。

    【讨论】:

      猜你喜欢
      • 2022-08-02
      • 2021-10-05
      • 2022-10-21
      • 1970-01-01
      • 2022-10-21
      • 1970-01-01
      • 2023-01-31
      • 2021-09-15
      • 1970-01-01
      相关资源
      最近更新 更多