1.我们在blobstorage中有一个json文件,我们必须通过输入表名来更新json文件
1.通过在AZUREDATA工厂中传递值来更新特定的给定表lasttrackingver
1.示例数据中的“lastupdate”列需要针对任何更新的表进行更改
1.“tableupdate”需要更新我们给定的特定输入表
样本数据看起来像
{
"name" :"job schedule",
"lastupdate": "2023-09-15"T13:00:00.000000Z",
"schedule":{
"BANKtable" :
[
{
"tablename":"mani",
"pipeline":"manikana",
"tableupdate": "2023-09-15"T13:00:00.000000Z",
"lasttrackingver":"0"
},
{
"tablename":"ganesh",
"pipeline":"ganeshkulkarni",
"tableupdate": "2023-09-15"T13:00:00.000000Z",
"lasttrackingver":"0"
},
{
"tablename":"jagadesh",
"pipeline":"jaga",
"tableupdate": "2023-09-15"T13:00:00.000000Z",
"lasttrackingver":"0"
}
]
}
字符串
例如input:tablename:ganesh lasttrackingver=2
输出:
{
"name" :"job schedule",
"lastupdate": "TODAYSDATE",
"schedule":{
"BANKtable" :
[
{
"tablename":"mani",
"pipeline":"manikana",
"tableupdate": "2023-09-15"T13:00:00.000000Z",
"lasttrackingver":"0"
},
{
"tablename":"ganesh",
"pipeline":"ganeshkulkarni",
"tableupdate": "TODAYSDATE",
"lasttrackingver":"2"
},
{
"tablename":"jagadesh",
"pipeline":"jaga",
"tableupdate": "2023-09-15"T13:00:00.000000Z",
"lasttrackingver":"0"
}
]
}
型
我们没有得到正确的方法。
1条答案
按热度按时间b4qexyjb1#
1.在底层和流水线级创建参数
![](https://i.stack.imgur.com/GdfNG.png)
1.拖动一个Cubillow活动,并在“参数”选项卡中选择Cubillow参数的值作为管道参数,以便在调试管道
![](https://i.stack.imgur.com/7xKto.png)
![](https://i.stack.imgur.com/dKgiA.png)
![](https://i.stack.imgur.com/faGBe.png)
时在运行时传递该值
1.在XML中,添加源转换,将数据集指向ADLS中的JSON文件,并在JSON设置
中选择“Array of document”
1.添加扁平化转换并按BANK表展开,选择下面的所有列并预览可能显示为表格格式的扁平化数据。单击加号并从扁平化转换
中添加新的分支
1.在两个分支中添加过滤器转换,一个使用表达式:
tablename==$p_tablename
,另一个使用表达式:tablename!=$p_tablename
滤波器1输出:
![](https://i.stack.imgur.com/aTG7x.png)
![](https://i.stack.imgur.com/SSNjt.png)
![](https://i.stack.imgur.com/VRHAZ.png)
滤波器2输出:
6.添加附加到filter1的派生列转换,其表达式为
lasttrackingver
=$p_lasttrackingver
,以将lasttrackingver值更新为参数值x7.将联合转换添加到联合两个分支数据
8.将聚合转换添加到按名称分组和最后更新
9.添加派生列转换以包括x1m4n 1x列,具有
BANKtable
数组作为子列10.将选择转换添加到BankTable列
11.添加Sink转换并指向输出json文件