ETL工具-nifi干货系列 第六讲 处理器JoltTransformJSON

1、处理器作用

使用Jolt转换JSON数据为其他结构的JSON,成功的路由到'success',失败的'failure'。处理JSON的实用程序不是基于流的,因此大型JSON文档转换可能会消耗大量内存。

Jolt:JSON 到 JSON 转换库,用 Java 编写,其中转换的 "规范" 或者描述文件本身就是一个 JSON 文档。

2、属性配置

(Jolt Transformation DSL)指定应该使用哪种Jolt转换模式,目前有如下10种转换模式:

Cardinality:更改了输入JSON数据元素的基数,如json中的string 类型的字段变更为list
Chain:按顺序应用多个转换规则。
Default:如果输入中不存在指定的字段,则添加默认值。
Modify -Default:修改字段的值,如果字段不存在则添加默认值。
Modify - Define:修改字段的值,如果字段不存在则创建该字段并赋值。
Modify - Overwrite:修改字段的值,如果字段不存在则忽略。
Remove:移除指定的字段。
Shift:将字段的值移动到另一个字段下。
Sort:对对象中的字段进行排序。
Custom:自定义转换规则。

(Jolt Specification)JSON数据转换Spec。如果选择了Sort转换,则忽略此值。
支持表达式语言:true(将使用流文件属性和变量注册表进行计算)

(Transform Cache Size)转换缓存大小:编译 Jolt 转换可能会相当昂贵。理想情况下,这只会执行一次。然而,如果在转换中使用表达式语言,我们可能需要为每个 FlowFile 使用新的转换。该值控制我们在内存中缓存多少个这些转换,以避免每次都需要编译转换。

(Pretty Print)json是否美化输出

(Max String Length)最大字符串长度

3、示例演示

处理器GenerateFlowFile 产生json字符串{"id":"1","name":"Java小金刚"}

Jolt Transformation DSL 设置为chain

Jolt Specification 设置为[{"operation":"shift","spec":{"id":"person.id","name":"person.name"}}]

输出结果如下:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/786797.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

5.103 BCC工具之filegone.py解读

一,工具简介 filegone 追踪文件消失的原因,无论是被删除还是被重命名。 二,代码示例 #!/usr/bin/pythonfrom __future__ import print_function from bcc import BPF import argparse from time import strftime# arguments examples = """examples:./fil…

LINUX笔记温习

目录 DAY1 DAY2 day3: day4 day5 day6 day7 day8 day9 day10 day11 day12 day13 day14 day15 20day DAY1 1、多层级文件夹创建要带-p; 2、创建多文件,要先到该目录下才能创建(第一个目录必须存在才能有效建立); D…

Golang 内存管理和垃圾回收底层原理(二)

一、这篇文章我们来聊聊Golang内存管理和垃圾回收,主要注重基本底层原理讲解,进一步实战待后续文章 垃圾回收,无论是Java 还是 Golang,基本的逻辑都是基于 标记-清理 的, 标记是指标记可能需要回收的对象&#xff0c…

2023年EI会议论文已见刊/检索进展汇总

2023年录用的会议论文已在SPIE、ACM、IEEE等出版社正式上线见刊,并已陆续完成EI Compendex数据库收录,详情如下: EIECT 2023——IEEE出版,并完成EI收录 会议信息: 第三届电子信息工程与计算机技术国际学术会议&…

深入浅出 Drools 规则引擎

目录 一、规则引擎简介 1.1 应用场景 1.2 Drools 规则引擎的特点 二、规则引擎集成 三、核心概念 3.1 规则文件的组成 3.2 模式匹配 3.2 规则属性 一、规则引擎简介 规则引擎是一种软件系统组件,设计目的是将业务决策逻辑从应用程序的主流程中解耦出来&#xff0…

SHELL(05)

SHELL(04) [ awk ] awk 编程语言 / 数据处理引擎 创造者的缩写是 : A,W,K 基于模式匹配检查输入文本 , 逐行处理并输出 通常用于Shell脚本中 , 获取指定的数据 单独使用时 , 可对文本数据做统计 grep 简单易用 , 功能少只能查 sed 功能齐全 , 搜索精度低 # 逐行处理 aw…

探索使用对比损失的孪生网络进行图像相似性比较

点击下方卡片,关注“小白玩转Python”公众号 简介 在计算机视觉领域,准确地测量图像相似性是一项关键任务,具有广泛的实际应用。从图像搜索引擎到人脸识别系统和基于内容的推荐系统,有效比较和查找相似图像的能力非常重要。Siames…

QA测试开发工程师面试题满分问答3: python的深拷贝和浅拷贝问题

在 Python 中,深拷贝(deep copy)和浅拷贝(shallow copy)是用于创建对象副本的两种不同方式。 浅拷贝是创建一个新的对象,该对象与原始对象的内容相同(包括内部嵌套对象的引用)&…

Higress 基于自定义插件访问 Redis

作者:钰诚 简介 基于 wasm 机制,Higress 提供了优秀的可扩展性,用户可以基于 Go/C/Rust 编写 wasm 插件,自定义请求处理逻辑,满足用户的个性化需求,目前插件已经支持 redis 调用,使得用户能够…

Day4:学习尚上优选项目

学习计划:完成尚硅谷的尚上优选项目 学习进度:尚上优选项目 知识点: 四、 搭建平台管理端前端环境 区域管理模块 代码生成器需求分析区域管理表设计搭建环境开发区域管理接口 整合nginx 安装nginx配置nginx功能测试 商品信息管理模块 需…

LeetCode刷题:无重复字符的最长子串 详解 【3/1000 第三题】

👤作者介绍:10年大厂数据\经营分析经验,现任大厂数据部门负责人。 会一些的技术:数据分析、算法、SQL、大数据相关、python 作者专栏每日更新: LeetCode解锁1000题: 打怪升级之旅 LeetCode解锁1000题: 打怪升级之旅htt…

【THM】Active Reconnaissance(主动侦察)-初级渗透测试

介绍 在网络安全模块的第一个房间里,我们主要进行被动侦察。在第二个房间中,我们重点关注主动侦察以及与之相关的基本工具。我们学习使用网络浏览器来收集有关我们目标的更多信息。此外,我们讨论使用简单的工具(例如ping、traceroute、telnet和 )nc来收集有关网络、系统和…

centos7 安装 nginx

一、yum 方式安装 1.安装yum工具 sudo yum install yum-utils 2. 安装epel yum install epel-release 3.安装nginx: yum install nginx 4.查看版本 nginx -v 5.设置开机自启动 systemctl enable nginx nginx 常用命令: 1)启动nginx …

题目:给一个不多于5位的正整数,要求:一、求它是几位数,二、逆序打印出各位数字。

题目:给一个不多于5位的正整数,要求:一、求它是几位数,二、逆序打印出各位数字。 There is no nutrition in the blog content. After reading it, you will not only suffer from malnutrition, but also impotence. The blog co…

探讨在大数据体系中API的通信机制与工作原理

** 引言 关联阅读博客文章:深入解析大数据体系中的ETL工作原理及常见组件 关联阅读博客文章:深入理解HDFS工作原理:大数据存储和容错性机制解析 ** 在当今数字化时代,数据已经成为企业发展和决策的核心。随着数据规模的不断增长…

计算机组成原理实验(汉字编码实验)

(汉字编码实验) 海明校验码实验

Yarn 包管理器入门指南

一、Yarn 的由来 Yarn 是一个新的 JavaScript 包管理工具,由 Facebook 的工程师们开发,于 2016 年发布。Yarn 的诞生源于 NPM 在使用过程中遇到的一些痛点,如网络效率低下、缓存混乱、安装速度慢等问题。Yarn 秉承了 NPM 的部分理念,同时也做出了一些创新,以期提供更高效、安全…

每天五分钟计算机视觉:如何基于滑动窗口技术完成目标的检测?

汽车检测算法 现在我们想要构建一个汽车检测算法,我们希望输入到算法中一张图片,算法就可以帮助我们检测出这张图片中是否有汽车。 数据集 首先创建一个标签训练集,x是样本,y是标签。我们的训练集最好是被剪切过的图片,剪掉汽车以外的部分,使汽车居于中间位置,就是整张…

LeetCode-240. 搜索二维矩阵 II【数组 二分查找 分治 矩阵】

LeetCode-240. 搜索二维矩阵 II【数组 二分查找 分治 矩阵】 题目描述:解题思路一:从左下角或者右上角元素出发,来寻找target。解题思路二:右上角元素,代码解题思路三:暴力也能过解题思路四:二分…

家庭网络防御系统搭建-配置流量镜像到NDR系统

由于需要将家庭网络中的全部流量送到NDR分析系统进行分析,因此需要一个具备流量镜像功能的交换机或者路由器。在前面文章所提及的家庭网络架构中,需要一台交换机即可拷贝东西向流量以及南北向流量。当然如果家庭中的路由器或者其他设备具备交换机镜像功能…