如何构建增量数据加载?

时间:2018-01-10 19:14:20

标签: azure azure-data-factory azure-sqldw

我找到了这个博客(https://docs.microsoft.com/en-us/azure/data-factory/tutorial-incremental-copy-overview)并尝试了它,它在移动数据b / w sql server和azure数据库方面非常有用,但是我如何构建这样的东西来复制B /中的数据w在Prem SQL Server和Azure Datawarehouse上?

我是否可以开始使用任何链接。

我发现了各种链接,但在谈到Delta数据加载时它们不是很合理?

有什么方法可以使用ADF V1实现这个目的吗?或者这只能使用ADF V2 ??

1 个答案:

答案 0 :(得分:2)

指南的变更跟踪部分仍然相关。您需要一些方法来确定需要推送到Azure SQL DW的SQL Server本地实例上的增量数据是什么。不同之处在于如何将增量数据推送到SQL DW。

如果你有使用SSIS构建的东西,它将适用于SQL DW。下载用于SSIS的Azure包以获得SQL DW优化的工作流。如果你已经使用ADF也可以做同样的事情,或者可以使用其他服务。

在最简单的情况下,您可以将增量数据导出到csv文件中,使用azcopy推送到blob存储,然后通过外部表插入到SQL DW中。对于小型数据集,这种方法很好,可以使用脚本自动化,以最大限度地降低风险和人工。大数据集将更加棘手,因为插入是昂贵的完全记录操作。查看Minimal logging with bulk load以获取INSERT ...... SELECT的最低记录及其发生条件的提示。虽然分区是一种有效的策略,但对于大多数日常增量负载环境而言,这并不是一个好主意,因为没有足够的数据来构建具有集群列存储表的高质量行组。在重建索引之前,这可能会导致查询性能下降。每天优化单个加载操作而不是每天数十,数百或数千个查询通常不是正确的权衡。