【问题标题】:conversion array into array by jolt通过 jolt 将数组转换为数组
【发布时间】:2022-06-28 22:48:08
【问题描述】:

我有以下 json 数据。我想通过 jolt nifi 处理器将以下数据转换为结果数据

{
    "data": [{
        "source": "Environment Sensors",
        "alert_count": "2",
        "category": "envs",
        "alert_array": {
            "alerts": [{
                "name": "neeraj",
                "id": "123"

            }, {
                "name": "arun",
                "id": "897"

            }]
        }
    }]
}

结果数据

{
    "alert": "2",
    "subcategary": "envs",
    "alert_array": [{
        "categary": "Environment Sensors",
        "newName": "neeraj",
        "newID": "123"
    }, {
        "categary": "Environment Sensors",
        "newName": "arun",
        "newID": "897"
    }]
}

这里categary的值就是source

的值

【问题讨论】:

  • 先生,我已经创建了spac,但我无法将源数据转换为类别
  • 是的,当然是你的回答帮助,在你的帮助下,我创建了我的空间,但现在我遇到了其他问题,在这个问题中,我无法将源数据转换为分类。跨度>
  • 请帮助解决这个问题
  • 迟到的回复很抱歉。其实我之前没有使用堆栈溢出,我不知道堆栈溢出的这个特性
  • 没问题 :) ,是的,你是新贡献的...

标签: apache apache-nifi jolt


【解决方案1】:

您可以使用以下 shift 转换规范

[
  {
    "operation": "shift",
    "spec": {
      "data": {
        "*": {
          "alert_count": "alert",
          "category": "sub&",
          "alert_array": {
            "*": {
              "*": {
                "@(3,category)": "&3[&1].category",
                "name": "&3[&1].newName",
                "id": "&3[&1].newID"
              }
            }
          }
        }
      }
    }
  }
]

首先到达最里面的对象的元素,然后与已经位于那里的其他元素一起向上3级确定类别元素的值。

【讨论】:

  • 感谢巴巴罗斯它对我有用
  • 不客气@Neeraj,祝你好运!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-02-06
  • 2021-09-13
  • 1970-01-01
  • 1970-01-01
  • 2022-11-28
相关资源
最近更新 更多