【问题标题】:How can I combine two arrays to create a key value pair with Jolt?如何使用 Jolt 组合两个数组来创建键值对?
【发布时间】:2019-11-18 06:25:02
【问题描述】:

我已经创建了一个规范来将我的 JSON 转换为:

{
  "rows" : [ {
    "row" : [ "row1", "row2", "row3" ],
    "header" : [ "header1", "header2", "header3" ]
  }, {
    "row" : [ "row4", "row5", "row6" ],
    "header" : [ "header1", "header2", "header3" ]
  } ]
}

我正在努力将其转换为键值对,我想要的输出是:

{
"header1" : "row1",
"header2" : "row2",
"header3" : "row3",
"header4" : "row4",
"header5" : "row5",
"header6" : "row6"
}

使用 Jolt 可以做到这一点吗?

【问题讨论】:

    标签: apache-nifi jolt


    【解决方案1】:

    您的输入是否存在复制/粘贴错误?根据您想要的输出判断,第二个对象的header 数组应该是["header4", "header5", "header6"]。如果是这样的话,这个规范应该可以工作:

    [
      {
        "operation": "shift",
        "spec": {
          "rows": {
            "*": {
              "header": {
                "*": {
                  "*": {
                    "@(3,row[#2])": "&"
                  }
                }
              }
            }
          }
        }
      }
    ]
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-11-25
      • 2019-01-26
      • 2017-02-11
      • 2019-01-01
      • 2019-10-02
      • 1970-01-01
      相关资源
      最近更新 更多