首页 文章

Azure数据工厂的Python自定义活动

提问于
浏览
0

我正在尝试创建一个数据工厂,每周一次将大型blob文件(源)复制并处理到python中的SQL数据库(Sink) - 通过逐行读取输入数据集,提取ID - 使用该ID在CosmosDB上进行查找以获取重新组合输出数据集并写入接收器的其他数据 . 我有一个python脚本,一旦关闭(即每次读取整个blob)没有ADF,但我现在想要使用ADF上的调度功能来自动执行此操作 .

有没有办法在Python中创建自定义复制活动,我可以将我当前的代码逻辑注入其中 . Azure目前只记录.Net自定义活动(https://docs.microsoft.com/en-us/azure/data-factory/transform-data-using-dotnet-custom-activity),它不适合我的堆栈 .

python azure SDK目前没有关于创建自定义活动的任何文档 .

1 回答

  • 0

    如果查看示例,您会看到可以在节点上运行可执行文件 .

    "typeProperties": {
              "command": "helloworld.exe",
              "folderPath": "customactv2/helloworld",
              "resourceLinkedService": {
                "referenceName": "StorageLinkedService",
                "type": "LinkedServiceReference"
              }
            }
    

    再往下,在v1和v2之间的差异,他们只显示运行“cmd” .

    cmd /c echo hello world
    

    因此,如果您可以创建一个可执行文件来启动您的python代码,它可能会起作用 . 您也可以使用参数 . 但是,代码将在Azure Batch上运行,后者为您配置VM . 此VM可能没有您需要的所有依赖项 . 您必须创建一个"portable"包才能使其正常工作 . 也许这个post可以帮助你 .

    更加优雅的是通过Web活动触发Azure Functions . 但似乎是非常bèta的东西:https://ourwayoflyf.com/running-python-code-on-azure-functions-app/

相关问题