首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在NiFi中使用EvaluateJsonPath处理器拆分json

如何在NiFi中使用EvaluateJsonPath处理器拆分json
EN

Stack Overflow用户
提问于 2020-05-04 12:33:59
回答 2查看 515关注 0票数 0

我想拆分和传输NiFi中的json数据,这是我的json结构,如下所示;我想拆分json的id1,id2数组的json传输到各自的处理器组例如processor_group a,b。我尝试评估json路径$.id1,$.id2,但我没有得到确切的解决方案。你能帮我解决这个问题吗?

代码语言:javascript
运行
复制
{
    "id1": [{
        "u_name": "aa"
    }, {
        "addr": "bb"
    }],
    "id2": [{
        "u_name": "aa"
    }, {
        "addr": "bb"
    }]
}
EN

回答 2

Stack Overflow用户

发布于 2020-05-04 16:51:19

您要寻找的处理器是SplitJSON。如下配置:

然后,您将收到两个FlowFiles:

第一个文件将包含id1

代码语言:javascript
运行
复制
[{
        "u_name": "aa"
    }, {
        "addr": "bb"
    }]

第二个将包含id2

代码语言:javascript
运行
复制
[{
        "u_name": "aa"
    }, {
        "addr": "bb"
    }]
票数 0
EN

Stack Overflow用户

发布于 2020-05-04 23:21:44

下面是如何使用EvaluateJsonPath获得您想要的值:

通过EvaluateJsonPath在数组对象中使用@varun_rathinam Accessing json可能会非常令人困惑。我还注意到你的json的结构有点混乱,两者的值是一样的。*我已经为测试调整了cc和dd的id2,这样我就可以区分id1和id2的值。

您想要的解决方案是(有关确切的字符串值,请参阅模板):

注意,我们对每个json对象( $.object )使用普通树,然后访问数组( 0,1),然后访问数组的对象。访问json对象数组是可能的,也可以不使用。在[之前。

参考:https://community.cloudera.com/t5/Support-Questions/how-to-extract-fields-in-flow-file-which-are-surrounded-by/m-p/208635

您还可以在我的GitHub上测试您的问题时找到我的模板:https://github.com/steven-dfheinz/NiFi-Templates/blob/master/NiFI

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61585241

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档