数据工厂:管道活动类型AzureMLBatchExecution的AzureSQL输入和输出

时间:2017-04-04 09:08:25

标签: json machine-learning azure-sql-database azure-data-factory azure-machine-learning-studio

在Azure数据工厂中,我尝试通过数据工厂管道调用Azure机器学习模型。我想使用Azure SQL表作为输入,并使用另一个Azure SQL表作为输出。 首先,我部署了一个机器学习(经典)Web服务。然后,我创建了一个Azure数据工厂管道,使用LinkedService(type ='AzureML',使用ML-webservice的Request URI和API密钥)和输入和输出数据集('AzureSqlTable'类型)。

部署和配置成功。管道按计划启动,但保持“正在运行”而没有任何结果。管道活动未显示在“监视和管理:活动Windows”中。

在不同的网站和教程中,我只使用BLOB输入和输出的活动类型'AzureMLBatchExecution'找到JSON脚本。我想使用AzureSQL输入和输出,但我无法使用它。

有人可以提供示例JSON脚本或告诉我下面的代码可能有什么问题吗?

谢谢!

{
    "name": "Predictive_ML_Pipeline",
    "properties": {
        "description": "use MyAzureML model",
        "activities": [
            {
                "type": "AzureMLBatchExecution",
                "typeProperties": {},
                "inputs": [
                    {
                        "name": "AzureSQLDataset_ML_Input"
                    }
                ],
                "outputs": [
                    {
                        "name": "AzureSQLDataset_ML_Output"
                    }
                ],
                "policy": {
                    "timeout": "02:00:00",
                    "concurrency": 3,
                    "executionPriorityOrder": "NewestFirst",
                    "retry": 1
                },
                "scheduler": {
                    "frequency": "Week",
                    "interval": 1
                },
                "name": "My_ML_Activity",
                "description": "prediction analysis on ML batch input",
                "linkedServiceName": "AzureMLLinkedService"
            }
        ],
        "start": "2017-04-04T09:00:00Z",
        "end": "2017-04-04T18:00:00Z",
        "isPaused": false,
        "hubName": "myml_hub",
        "pipelineMode": "Scheduled"
    }
}

1 个答案:

答案 0 :(得分:0)

在微软技术人员的帮助下,我有了这个工作。上面提到的JSON脚本只在schedule-section中更改:

 "start": "2017-04-01T08:45:00Z",
 "end": "2017-04-09T18:00:00Z",

管道仅在其开始时间和结束时间之间有效。由于调度程序设置为每周,因此在一周开始时触发管道:该日期应在开始日期和结束日期之内。有关计划的更多详细信息,请参阅:https://docs.microsoft.com/en-us/azure/data-factory/data-factory-scheduling-and-execution

Azure SQL Input数据集应如下所示:

{
"name": "AzureSQLDataset_ML_Input",
"properties": {
    "published": false,
    "type": "AzureSqlTable",
    "linkedServiceName": "SRC_SQL_Azure",
    "typeProperties": {
        "tableName": "dbo.Azure_ML_Input"
    },
    "availability": {
        "frequency": "Week",
        "interval": 1
    },
    "external": true,
    "policy": {
        "externalData": {
            "retryInterval": "00:01:00",
            "retryTimeout": "00:10:00",
            "maximumRetry": 3
        }
    }
}

我将外部和策略属性添加到此数据集(请参阅上面的脚本),之后,它可以正常工作。