Azure数据同步 - 将每个SQL行复制到Blob

时间:2016-11-16 04:19:04

标签: azure azure-data-factory

我正在尝试了解迁移大量数据的最佳方法 - 从(Azure托管的)SQL Server到Blob存储的大约6M文本行。

在大多数情况下,这些记录是归档记录,很少被访问 - blob存储作为保存这些记录的地方。

我看过Azure数据工厂,它似乎是正确的选择,但我不确定它是否满足要求。

简单地说,对于表中的每一行,我想创建一个blob,该行的内容为1列。

我看到教程(即https://docs.microsoft.com/en-us/azure/data-factory/data-factory-copy-activity-tutorial-using-azure-portal)擅长解释批量到批量数据管道的迁移,但我想从批量到多数据集迁移。

希望有道理,有人可以提供帮助吗?

2 个答案:

答案 0 :(得分:1)

截至目前,Azure数据工厂没有像SSIS中的NetworkReachabilityManager().listener = { status in if status.isReachable { // perform some operation } } 循环那样内置任何内容。您可以使用自定义.net活动来执行此操作,但这需要大量自定义代码。

我想问一下,如果你将它转移到另一个数据库,你会创建600万个具有相同结构的表吗?拥有单独的项目可以获得什么?

另一种替代方法可能是将其转换为JSON,使用Data Factory很容易。这是我最近将数据移入DocumentDB的一个例子。

Copy From OnPrem SQL server to DocumentDB using custom activity in ADF Pipeline

带有Azure Feature Pack的SSIS 2016,提供Azure Blob上传任务和Azure Blob目标等Azure任务。您可能最好使用它,可能是OLEDB命令或具有Azure Blob目标的For Each循环可能是另一种选择。

祝你好运!

答案 1 :(得分:0)

Azure具有一个ForEach活动,可以将其放置在LookUp或Metadata之后,以将每行从SQL获取到Blob

ForEach