首页 > 解决方案 > Azure 数据工厂在单个文件中拆分多个 JSON 对象

问题描述

我正在使用 Azure 数据工厂来监控一个 AWS S3 存储桶,该存储桶将包含包含由 AWS 进程写出的 JSON 对象的文件。该过程可以将多个 JSON 对象组合成一个文件,对象之间没有 CRLF 或分隔符。我需要 Azure 数据工厂单独处理每个对象,以将它们插入 SQL 数据库。我没有找到任何关于如何处理这种情况的例子。抱歉,如果这在 Azure 数据工厂中是相当基本的,但是,我对该产品相当陌生。

这是文件格式的示例:

{
 "AWSInfoField1": "Test Record 1", 
 "AWSInfoField2": "Just Another Field",
 "Attributes": { 
                "Attribute1": 1, 
                "Attribute2": "Another Attribute" 
                }
}
{
 "AWSInfoField1": "Test Record 2", 
 "AWSInfoField2": "Just Another Field In Record 2", 
 "Attributes": { 
                "Attribute1": 2, 
                "Attribute2": "Another Attribute In Record 2" 
               }
 }
 {
  "AWSInfoField1": "Test Record 3", 
  "AWSInfoField2": "Just Another Field In Record 3", 
  "Attributes": { 
                 "Attribute1": 3, 
                 "Attribute2": "Another Attribute In Record 3" 
                }
 }

标签: azure-data-factoryazure-data-factory-2

解决方案


我将数据复制到存储中的单个文件中(对象之间没有 CRLF 或分隔符): 在此处输入图像描述

我试过了,发现数据工厂会自动将默认分隔符“,”添加到 Source 中的 JSON 数据中。我们可以在源数据预览中看到它: 在此处输入图像描述

然后选择 SQL 数据库作为 sink 并将数据映射到 Sink 表: 在此处输入图像描述

运行管道并检查表中的数据: 在此处输入图像描述


推荐阅读