You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用NiFi Jolt Specification重构Bets数组生成Outcomes子数组?

NiFi Jolt Specification 转换实现方案

输入JSON数据

{
  "transaction_id": 53279810162,
  "bets": [
    {
      "event_name": "Mawkhar Sc - Rangdajied United FC (live)",
      "match_start": "1660905000000",
      "game_name": "Handicap ? £",
      "outcome_name": "2 (3:0)"
    },
    {
      "event_name": "University Azzurri Fc - Hellenic Athletic Club (live)",
      "match_start": "1660905000000",
      "game_name": "Handicap ? £",
      "outcome_name": "2 (3:0)"
    }
  ],
  "user_id": 1009425,
  "bet_type": "Multi"
}

期望输出JSON数据

{
  "transaction_id": 53279810162,
  "bets": [
    {
      "event_name": "Mawkhar Sc - Rangdajied United FC (live)",
      "match_start": "1660905000000",
      "outcomes": [
        {
          "outcome_name": "2 (3:0)",
          "game_name": "Handicap ? £"
        }
      ]
    },
    {
      "event_name": "University Azzurri Fc - Hellenic Athletic Club (live)",
      "match_start": "1660905000000",
      "outcomes": [
        {
          "outcome_name": "2 (3:0)",
          "game_name": "Handicap ? £"
        }
      ]
    }
  ],
  "user_id": 1009425,
  "bet_type": "Multi"
}

Jolt转换规范

使用Shift转换类型,对应的规范如下:

[
  {
    "operation": "shift",
    "spec": {
      "*": "&",
      "bets": {
        "*": {
          "event_name": "bets[&1].event_name",
          "match_start": "bets[&1].match_start",
          "game_name": "bets[&1].outcomes[0].game_name",
          "outcome_name": "bets[&1].outcomes[0].outcome_name"
        }
      }
    }
  }
]

规范说明

  • *": "&":保留根节点下除bets外的所有字段(如transaction_id、user_id、bet_type),直接映射到输出的同名字段。
  • bets数组遍历:通过"*"遍历每个bets元素,&1代表当前数组元素的索引,确保每个元素对应输出中bets数组的对应位置。
  • 保留原有字段:将每个bet里的event_name和match_start直接映射到输出的对应位置。
  • 构建outcomes数组:把game_name和outcome_name放入outcomes数组的第一个元素([0])中,实现嵌套数组的结构。

内容的提问来源于stack exchange,提问作者3vge

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.21 12:15:41