获取在Azure数据工厂“复制数据”步骤期间未能同步的记录

时间:2019-05-21 01:44:34

标签: azure azure-data-factory azure-search

是否可以某种方式获取行或在Azure Data Factory复制数据操作执行期间失败的行的任何信息,并将其传递给管道中的下一个操作?

当前,我将数据从Azure Sql数据库同步到Azure搜索索引中。我选择了“跳过并记录不兼容的行”作为容错措施。 在文档中,我找到了下一个信息:

  

此外,您可以在Azure Blob存储中记录不兼容的行   或Azure Data Lake Store。然后,您可以检查日志以了解   造成故障的原因,修复数据源上的数据,然后重试   复制活动。

但是我真的很想为失败的行提供一些非手动的重新同步方法。有什么方法可以直接使用(无需创建任何自定义操作即可从存储中获取日志文件,对其进行解析并重新同步)?我觉得容错选项“添加动态内容”可能会起作用,但是它的功能并不是真正丰富,并且由于使用了很少的函数和运行时变量而受到限制。

1 个答案:

答案 0 :(得分:1)

容错功能不支持自动重新同步。

如果您想这样做,我想您可以在复制活动结束后连接任何活动,复制活动完成后会触发该活动。然后,故障存储将包含不良数据,您可以对它运行任何活动。

故障数据的csv格式为https://docs.microsoft.com/en-us/azure/data-factory/copy-activity-fault-tolerance#monitor-skipped-rows

  

数据1,数据2,数据3,“ UserErrorInvalidDataValue”,“列'Prop_2'包含无效值'数据3'。无法将'数据3'转换为类型'日期时间'。”   data4,data5,data6,“ 2627”,“违反了主键约束'PK_tblintstrdatetimewithpk'。无法在对象'dbo.tblintstrdatetimewithpk'中插入重复键。重复键值为(data4)。”