【问题标题】:Trigger Azure databricks when blob changes当 blob 更改时触发 Azure 数据块
【发布时间】:2021-08-08 16:50:01
【问题描述】:

我正在使用 Azure databricks 中的 spark 解析 Azure blob 存储中的文件。该 blob 安装为 dbfs。现在我正在笔记本中使用硬编码的文件名(dbfs 文件名)。 但我想在创建新 blob 时使用新的 dbfs 名称触发笔记本。 我使用 Azure 函数进行了检查,我可以得到一个 blob 触发器。我可以从 Azure 函数启动数据块笔记本/作业吗?对 blob 的操作需要相当长的时间。在这种情况下是否建议使用 azure 函数。或者有没有其他方法可以实现这一点。

【问题讨论】:

  • 检查 Azure 数据工厂。您可以在将新文件添加到 Blob 存储时安排触发器。 ADF 会将此文件名作为参数传递给 Databricks 笔记本。您可以检查 Dataricks 中的小部件,这些小部件将获取此文件名并在笔记本中使用它。
  • 我发现了一个叫做 Databricks Streaming 的东西。我正在对此进行调查。有没有人对此有任何想法。也可以用吗。到目前为止,我还没有找到是否可以为每个文件执行我自己的函数来解析。所有示例均基于 CSV 文件。

标签: azure azure-functions databricks azure-databricks


【解决方案1】:

正如 Parth Deb 所说,使用 azure datafactory 会更容易满足您的要求。

您只需要创建管道触发器,然后基于“已创建 blob”创建事件触发器即可触发数据块活动。你只需要传递参数。

这是工厂的内置功能,可以查看文档:

https://docs.microsoft.com/en-us/azure/data-factory/concepts-pipelines-activities

https://docs.microsoft.com/en-us/azure/data-factory/transform-data-databricks-notebook

https://docs.microsoft.com/en-us/azure/data-factory/how-to-expression-language-functions

你可以看看上面的文档。最后,你基本上只需要一些鼠标操作。

【讨论】:

    【解决方案2】:

    我最终使用了 ADF。我使用基于文件名触发的 Blob 触发器创建了一个新管道。

    【讨论】:

      猜你喜欢
      • 2019-01-11
      • 2018-10-03
      • 2021-03-26
      • 2021-10-08
      • 2021-02-26
      • 2020-11-26
      • 1970-01-01
      • 2021-05-06
      • 1970-01-01
      相关资源
      最近更新 更多