我们可以将Databricks输出传递给ADF Job吗?

时间:2019-04-17 11:54:35

标签: python json azure-functions azure-data-factory-2 azure-databricks

有人可以帮助我使用Databricks和Azure功能吗? 我正在尝试将数据砖JSON输出传递给ADF作业中的azure函数主体,这可能吗? 如果是,如何? 如果否,还有哪些其他替代方法可以做到这一点?

2 个答案:

答案 0 :(得分:4)

在笔记本电脑中,您可以使用:

dbutils.notebook.exit(myReturnValueGoesHere)(如上所述)

,然后在ADF中,JSON是一个位于output.runOutput上的对象,因此@activity('RunNotebookActivityName').output.runOutput

如果您返回:

dbutils.notebook.exit('{"hello": {"some": {"object": "value"}}}')

您可以使用以下方法在ADF中阅读:

@activity('RunNotebookActivityName').output.runOutput.hello.some.object

冷静点吗?

有关您可以做什么的完整列表,请参见:

https://the.agilesql.club/2020/02/passing-status-messages-and-results-back-from-databricks-to-adf/

ed

答案 1 :(得分:1)

在Azure Databricks中,有一种在退出时返回值的方法。 dbutils.notebook.exit(myReturnValueGoesHere)

在Azure Data Factory V2中,DatabricksNotebook活动输出具有3个字段的JSON: “ runPageUrl”,一个URL,用于查看运行的输出。 执行代码的“ effectiveIntegrationRuntime” “ executionDuration”

如果使用上述dbutils调用,则输出JSON中将出现第四个字段 “ runOutput”,其中显示“ myReturnValueGoesHere”。

如果您不使用上述dbutils调用,则可以从runPageUrl抓取信息。