复制活动中的容错通过跳过不兼容的行
Posted
技术标签:
【中文标题】复制活动中的容错通过跳过不兼容的行【英文标题】:Fault tolerance in Copy Activity by skipping incompatible rows 【发布时间】:2018-06-11 22:39:20 【问题描述】:我将 Azure Fucntion 与 Azure SDK 和 Azure 数据工厂一起使用,在复制活动中应用“记录不兼容的行”时,有什么方法可以获取活动窗口的 skippedRowCount 的值(来源:Blob 存储,接收器:SQL 数据仓库)?
【问题讨论】:
到目前为止你尝试过什么?您是否查看过用于查询活动运行返回什么的 PowerShell cmdlet? 你已经看过Monitor skipped rows了吗?如果您使用的是 blob 触发器,您是否检查了 blob 的日志文件? 客户需求:使用azure数据工厂将blob存储中的csv文件导入SQL数据仓库。并将处理后的文件归档到blob存储中的其他地方;这些文件的一个位置成功导入,一个位置失败文件(文件的数据不兼容 - 格式错误,长度错误)。我使用策略“容错并在 Azure Blob 存储中记录不兼容的行”,因此我需要获取活动窗口的 skippedRowCount 的值才能知道该活动有一些不兼容的行。 根据我在 Azure SDK 中的研究,不支持获取此值。我已经在 PowerShell 中寻找,也没有办法获得。因为我是 Azure 的新手,所以我希望我不会错过任何解决方案。 【参考方案1】:从这里的文档:Monitor skipped rows,看起来当在https://[your-blob-account].blob.core.windows.net/[path-if-configured]/[copy-activity-run-id]/[auto-generated-GUID].csv 启用日志不兼容的行时会自动生成一个日志文件。您可以在生成的日志文件上设置blob trigger。这是一个示例 function.json
"disabled": false,
"bindings": [
"name": "myBlob",
"type": "blobTrigger",
"direction": "in",
"path": "[path-if-configured]/[copy-activity-run-id]",
"connection":"MyStorageAccountAppSetting"
]
注意:您也可以使用blob name patterns 指定绑定路径。
在函数代码中,可以方便的访问日志文件的内容,得到skippedRowCount
【讨论】:
以上是关于复制活动中的容错通过跳过不兼容的行的主要内容,如果未能解决你的问题,请参考以下文章
在搜索 -ldeepsort 时跳过不兼容的 ../tracker/libdeepsort.so
使用 mono 交叉编译 c 时跳过不兼容的库 (lmono)
搜索 /lib/libpthread.so.0 时跳过不兼容的 /lib/libpthread.so.0
/usr/bin/ld: 搜索 -lQtCore 时跳过不兼容的 /usr/lib/x86_64-linux-gnu/libQtCore.so