Apache nifi Jolt-使用一系列键、@(2,@)的替代项获取值
我需要创建一个JSON数组,以便使用Nifi将其拆分为多个作业。 该数组需要基于JSON中的现有数组创建 无法理解如何在JSON中动态创建对另一个对象的引用。我希望引用“@(2,@)”起作用,但这不受支持 输入Apache nifi Jolt-使用一系列键、@(2,@)的替代项获取值,apache-nifi,jolt,Apache Nifi,Jolt,我需要创建一个JSON数组,以便使用Nifi将其拆分为多个作业。 该数组需要基于JSON中的现有数组创建 无法理解如何在JSON中动态创建对另一个对象的引用。我希望引用“@(2,@)”起作用,但这不受支持 输入 { “姓名”:“洛基”, “id”:“1234”, “loc”:“Utgard”, “年龄”:“未知”, “清单项目”:[ “姓名”, “id” ] } 规格(不起作用): [ { “操作”:“移位”, “规格”:{ //循环所有列表项 “清单项目”:{ "*": { //获取当前项的
{
“姓名”:“洛基”,
“id”:“1234”,
“loc”:“Utgard”,
“年龄”:“未知”,
“清单项目”:[
“姓名”,
“id”
]
}
规格(不起作用):
[
{
“操作”:“移位”,
“规格”:{
//循环所有列表项
“清单项目”:{
"*": {
//获取当前项的值并推送到processlist.type数组
“@”:“进程列表[#2]。键入”,
//问题是,我需要获取当前值/键的“顶级”值
@(2,@):“进程列表[#2]。值”
}
}
}
}
]
预期产出:
{
“进程列表”:[
{
“类型”:“名称”,
“价值”:“洛基”
}, {
“类型”:“id”,
“值”:“1234”
}
]
}
规格(将运行但不正确)
[
{
“操作”:“移位”,
“规格”:{
//循环所有列表项
“清单项目”:{
"*": {
//获取当前项的值并推送到processlist.type数组
“@”:“进程列表[#2]。键入”,
//问题是,我需要获取当前值/键的顶级值
//将其强制为“name”至少会执行代码
@(2,名称):“进程列表[#2]。值”
}
}
}
}
]
有什么想法吗?您可以通过添加
“*”
键继续执行另一个步骤,以便在漫游时通过@(3,&)
动态嵌套当前规范,因为该符号表示产生的键值名称和id
,例如
[
{
“操作”:“移位”,
“规格”:{
“清单项目”:{
"*": {
"*": {
“@1”:“进程列表[#3]。键入”,
@(3,&):“进程列表[#3]。值”
}
}
}
}
}
]
很好,这很有效!谢谢:)不客气@ThisIsMe,很乐意帮忙