下面是我通过 azure synapse 数据流管道从 cosmos 推送到数据湖的 Json 对象。现在,如果以下数据发生任何更改,则必须覆盖数据湖中现有 csv 文件中的数据,如果没有事务文件,则应创建新的事务文件并继续附加更改。 我想创建管道来解决上述查询,因为我是这个蔚蓝云平台的新手
示例 Json-
{
"timeFrames": [
{
"yearGroup": "Reception",
"term": "Summer",
"scoreIndeces": {
"66": 0.2,
"67": 0.3
}
},
{
"yearGroup": "Year 1",
"term": "Spring",
"scoreIndeces": {
"64": 0.6,
"65": 0.6
}
}
],
"tableType": 1,
"id": "f82",
"productId": "4b",
"productName": "New PUMA"
}
为了实现您的要求,您需要首先将数据从主文件复制到横断面文件,并向其中添加附加列并将自定义值设置为插入,以便我们获得初始横断面。
然后,每当新文件中发生更改时,使用数据流比较这些文件,如下所示:
Transaction Type
并为其分配 Update 值。注意:- 当 Synapse 管道将数据写入 ADLS gen 2 文件时,它只会覆盖数据,不会追加数据。所以处理你的情况更好的方法是像 SQL 这样的 RDMS 数据库