您好,我从 odbc 连接获取 csv 格式的数据,然后使用 json 数据集将其复制到 Blob 它看起来像这样,而不是实际数据,它将有超过 20K 行
{"A":12345,"B":"2023-12-31 00:00:00","C":5510,"D":20231231,"E":20240103,"F":20231231,"G":1577158,"H":63217,"I":null,"J":"Company123","K":"SupplierXYZ","L":"987","M":"Vendor ABC","N":"Invoice789","O":"2023-12-31T00:00:00","P":"2024-01-03T00:00:00","Q":"2023033344","R":"7559","S":"Dept123","T":"ModelXYZ","U":7179.0,"V":3,"W":"3769686.0","X":"TypeJ","Y":7179.0,"Z":null,"AA":"NOK","AB":"202312.0","AC":"EXTERNAL","AD":null,"AE":"Counterparty999","AF":"2023-12-31T00:00:00","AG":null,"AH":null,"AI":"66c6c4cc31107992a4079f3653a8a86930a2675d8663c5ab2ec4df23b0f6f3b0","AJ":"2024-02-13T12:58:02.597","AK":"2024-01-03T08:31:16.425292"}
{"A":54321,"B":"2024-01-15 08:00:00","C":7890,"D":20240115,"E":20240120,"F":20240115,"G":2468135,"H":951753,"I":null,"J":"Company456","K":"Supplier789","L":"123456789","M":"Vendor XYZ","N":"Invoice123","O":"2024-01-15T08:00:00","P":"2024-01-20T08:00:00","Q":"2024011515","R":"1234","S":"Dept456","T":"ModelABC","U":9876.0,"V":6,"W":"9876543.0","X":"TypeK","Y":9876.0,"Z":null,"AA":"USD","AB":"202401.0","AC":"INTERNAL","AD":null,"AE":"Counterparty888","AF":"2024-01-15T08:00:00","AG":null,"AH":null,"AI":"a1b2c3d4e5f6g7h8i9","AJ":"2024-02-15T08:00:00.123","AK":"2024-01-20T08:00:00.987654"}
现在我希望改造后的最终结果是这样的
{
"Id": "a parameter",
"Name": uuid;
"data": Json array from the source
}
我需要将所有 Json 行封装到这个数据列中。之后我可以使用网络活动将其提供给 API 那么我应该如何在数据流中转换这些数据。
您可以使用 查找活动 读取 Json 文件并进行复制活动以添加其他列 id、名称以及 Json 数据。下面是方法。
@activity('Lookup1').output.value[0].Prop_0
@guid()
在映射部分,仅映射所需的三列。删除所有剩余的列。
添加接收器数据集。
将根据需要运行管道和接收器数据集。
此方式适用于不超过4MB的Json数据。请参阅查找活动支持的功能。
如果您的数据超过4MB,数据流是满足要求的唯一选择。
数据流方法:
进行选择转换并仅选择以上三列。
使用sink Json数据集进行sink转换。
根据需要使用数据流和接收器 Json 运行管道。