azure-data-factory-2 - Azure 数据工厂 v2 如果活动总是失败
问题描述
我目前正在努力使用 Azure 数据工厂 v2 如果活动总是失败并显示此错误消息: 在此处输入图像描述
我设计了两个独立的管道,一个从本地 SQL Server 获取数据的完整快照(1333 条记录)并将数据加载到 Azure SQL 数据库中,另一个只从同一源获取增量。
两个管道在独立执行时都能正常工作。
然后我决定将这两个管道包装到一个父管道中,该管道将执行此操作: 1. 执行 LookUp 活动以检查 Azure SQL 数据库中的目标表是否有任何记录,基本 Select Count(Request_ID) As record_count From target_table - 活动有效好的,我可以预览返回的记录数。
2. 将 LookUp 活动的输出传递给 If 活动,条件是如果 record_count = 0,则父管道将调用完整加载管道,否则父管道将调用增量加载管道。
这是实际的表达式:
{@activity('lookup_sites_record_count').output.firstRow.record_count}==0"
每当我尝试执行此父管道时,它都会失败并显示上述消息“活动失败:活动失败,因为内部活动失败”。
内部活动,即满载和增量加载管道,在独立触发时工作得很好。
我错过了什么?
提前谢谢了 :)。
米哈伊格
Pipeline 的 JSON 定义如下:
{
"name": "pl_remedyreports_load_rs_sites",
"properties": {
"activities": [
{
"name": "lookup_sites_record_count",
"type": "Lookup",
"policy": {
"timeout": "7.00:00:00",
"retry": 0,
"retryIntervalInSeconds": 30,
"secureOutput": false
},
"typeProperties": {
"source": {
"type": "SqlSource",
"sqlReaderQuery": "Select Count(Request_ID) As record_count From mdp.RS_Sites;"
},
"dataset": {
"referenceName": "ds_azure_sql_db_sites",
"type": "DatasetReference"
}
}
},
{
"name": "If_check_site_record_count",
"type": "IfCondition",
"dependsOn": [
{
"activity": "lookup_sites_record_count",
"dependencyConditions": [
"Succeeded"
]
}
],
"typeProperties": {
"expression": {
"value": "{@activity('lookup_sites_record_count').output.firstRow.record_count}==0",
"type": "Expression"
},
"ifFalseActivities": [
{
"name": "pl_remedyreports_invoke_load_sites_inc",
"type": "ExecutePipeline",
"typeProperties": {
"pipeline": {
"referenceName": "pl_remedyreports_load_sites_inc",
"type": "PipelineReference"
}
}
}
],
"ifTrueActivities": [
{
"name": "pl_remedyreports_invoke_load_sites_full",
"type": "ExecutePipeline",
"typeProperties": {
"pipeline": {
"referenceName": "pl_remedyreports_load_sites_full",
"type": "PipelineReference"
}
}
}
]
}
}
],
"folder": {
"name": "Load Remedy Reference Data"
}
}
}
解决方案
你的表达应该是:
@equals(activity('lookup_sites_record_count').output.firstRow.record_count,0)
推荐阅读
- asp.net-core - 路由以允许来自查询字符串和默认 {id} 模板的参数
- javascript - 在 React 中获取输入的值并检查它
- umbraco - Umbraco:检查页面是否标记为受保护并重定向到登录
- azure - 服务总线的 Azure 函数绑定
- csv - 如何在 SOLR 中加入文档
- php - PHP 无法执行创建的命令,但 exec() 和 system() 工作正常
- php - 尝试启动 MySQL 应用程序
- r - R 绘制运行执行时间与不同输入值的关系
- haskell - 如何使用 monad 随机播放列表?
- javascript - 如何获取 HTML 标签内的值并将其绑定到 aurelia 中的 ts(组件文件)