Data Factory v2 - 每行生成一个json文件

时间:2018-03-29 11:21:34

标签: json azure-data-factory-2

我正在使用Data Factory v2。我有一个复制活动,其中Azure SQL数据集作为输入,Azure存储Blob作为输出。我想把我的SQL数据集中的每一行都写成一个单独的blob,但我不知道如何做到这一点。

我在复制活动中看到了一个copyBehavior,但这只能在基于文件的源中使用。

另一种可能的设置是我的数据集中的filePattern:

  

指示存储在每个JSON文件中的数据模式。允许的值   是:setOfObjects和arrayOfObjects。

     

setOfObjects - 每个文件包含单个对象或行分隔/连接的多个对象。在输出数据集中选择此选项时,复制活动将生成单个JSON文件,每个对象每行(以行分隔)。

     

arrayOfObjects - 每个文件都包含一个对象数组。

描述谈到“每个文件”所以最初我认为这是可能的,但现在我已经测试了它们似乎setOfObjects创建了一个行分隔文件,其中每一行都写入一个新行。 setOfObjects设置创建一个带有json数组的文件,并将每一行添加为数组的新元素。

我想知道我是否在某个地方错过了配置,或者它是不可能的?

1 个答案:

答案 0 :(得分:3)

我现在所做的是将行加载到SQL表中,并为表中的每条记录运行foreach。我使用Lookup活动让一个数组在Foreach活动中循环。 foreach活动将每一行写入blob存储区。

对于Olga的documentDb问题,它看起来像这样: Pipeline

在查找中,您会获得要复制的文档列表: enter image description here

您在foreach活动中使用该集 enter image description here

然后使用foreach活动中的复制活动复制文件。您在源中查询单个文档: enter image description here

您可以使用ID在接收器中动态命名文件。 (您还必须在数据集中定义参数): enter image description here enter image description here