【问题标题】:Import/Export (Azure) Databricks Notebooks programatically以编程方式导入/导出 (Azure) Databricks Notebooks
【发布时间】:2021-05-24 05:08:23
【问题描述】:

我有一个 databricks 笔记本,它将表格的位置作为输入,然后生成图表。

我可以从包装笔记本中为许多不同的表运行此笔记本。

是否有可能每次笔记本运行时,我都会将其与结果一起作为 html 保存在 databricks 文件系统中。

本质上,我想以编程方式导出笔记本,就像手动执行 File>Export>HTML

这可能吗?如果是,怎么做?

注意:我在想,如果没有开箱即用的东西,我猜笔记本会保存在驱动程序内部的某个地方。我可以从那里得到它并使用 dbutils 将它移动到我想要的位置。

【问题讨论】:

    标签: databricks azure-databricks


    【解决方案1】:

    一般来说,您可以使用任一 REST API,通过工作区 API 的 export endpoint - 您 can specify that you want to export as HTML 导出笔记本。另一种选择是使用 Databricks CLI 的workspace export command,它在后台使用 REST API,但它更易于使用。

    但在您的情况下,笔记本(很可能,如果您使用dbutils.notebook.run)作为单独的作业执行,因此您需要使用Runs Export API instead

    要调用 API,您需要拥有个人访问令牌和主机名,但很容易以编程方式从笔记本内部检索它。详情请参阅this answer

    附: Notebook 不是文件系统上的对象,或类似的东西 - 它仅存在于内存中,在驱动程序节点上不可用。也许它会随着即将到来的Repos feature 而改变。

    【讨论】:

    • 是的,我开始探索 DatabricksApi (pypi.org/project/databricksapi) 我取得了一些进展,我相信它几乎完成了。准备好后我会更新。感谢您的信息:)
    • 这是非官方的包。可以考虑安装databricks-cli包,作为SDK使用(里面确实有SDK)
    • 我也会探索这个选项,让我们看看什么最有效。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-05-15
    • 1970-01-01
    • 1970-01-01
    • 2021-04-02
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多