Apache NIFI JoltTransformJSON

#JoltTransformJSON


编辑人:酷酷的诚 邮箱:zhangchengk@foxmail.com


#描述

使用Jolt转换json,成功的路由到'success',失败的'failure'。处理JSON的实用程序不是基于流的,因此大型JSON文档转换可能会消耗大量内存。目前支持UTF-8流文件内容和Jolt Spec。可以使用表达式语言定义Spec,其中可以在Spec语法的左侧或右侧引用属性。支持自定义转换(实现转换接口)。包含当前类路径上不存在的自定义库的模块可以通过自定义模块目录属性包含。注意:在配置处理器时,如果用户选择了默认的转换,但仍然提供了一个链Spec,那么系统不会警告该Spec是无效的,并且会产生失败的流文件。这是确定的一个已知问题。

#属性配置

在下面的列表中,必需属性的名称以粗体显示。任何其他属性(不是粗体)都被认为是可选的,并且指出属性默认值(如果有默认值),以及属性是否支持表达式语言。

属性名称默认值可选值描述
Jolt Transformation DSLjolt-transform-chainCardinality
Chain
Default
Modify -Default
Modify - Define
Modify - Overwrite
Remove
Shift
Sort
Custom
指定应该使用哪种Jolt转换模式
Custom Transformation Class Name  自定义Jolt转换工具类的全类名
Custom Module Directory  文件和/或目录的路径列表,其中包含包含自定义转换的模块(不包括在NiFi的类路径中)。
Jolt Specification  JSON数据转换Spec。如果选择了Sort转换,则忽略此值。
支持表达式语言:true(将使用流文件属性和变量注册表进行计算)
Transform Cache Size1 编译一个震荡转换可能相当昂贵。理想情况下,这只会做一次。但是,如果在转换中使用了表达式语言,我们可能需要为每个流文件进行新的转换。这个值控制我们在内存中缓存多少个转换,以避免每次编译转换。
Include Schemafalsetrue
false
如果为true,美化输出json的格式。

#连接关系

名称描述
success成功地转换json
failure未成功地转换json

读取属性:

没有指定。

#写属性

NameDescription
mime.typeapplication/json

#状态管理

此组件不存储状态。

#限制

此组件不受限制。

#输入要求

此组件需要传入连接关系。

#系统资源方面的考虑

没有指定。

#应用场景

该组件使用开源JOLT库来实现批量JSON转换,JOLT目前是一个不基于流式的非常高效的json转换库,JOLT有自己定义的一套DSL。使用该组件需要先了解JOLT的知识,并编写出相应的JOLT规范。这里不做具体示例,可以直接参看JOLT教程

#公众号

关注公众号 得到第一手文章/文档更新推送。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值