ETL工具-nifi干货系列 第十五讲 nifi处理器ConsumeKafka实战教程
1、上一节课我们学习了处理器PushKafka,通过该处理器往kafka中间件写数据,今天我们一起学习处理器ConsumeKafka,此处理器从kafka读取数据进行后续处理,如下图所示:
本次示例比较简单:处理器ConsumeKafka 根据topic读取kafka中的数据,然后将数据传递给LogMessage处理器。
2、处理器ConsumeKafka属性配置,如下图所示:
Kafka Brokers:以 host:port 格式表示的 Kafka Broker,集群列表通过逗号,如192.168.101.5:9092,192.168.101.6:9092
Security Protocol: 用于与代理通信的安全协议。对应于 Kafka 客户端的 security.protocol 属性。这里我们使用默认值PLAINTEXT
SASL Mechanism:用于认证的 SASL 机制。对应于 Kafka 客户端的 sasl.mechanism 属性。这里我们使用默认值GSSAPI
Kerberos Service Name:与broker JAAS 配置中配置的 Kafka 服务器的主要名称匹配的服务名称。
Kerberos Credentials Service:支持使用 Kerberos 进行通用凭证认证的服务。
Kerberos Principal:用于与 Kerberos 进行身份验证的主体。
Kerberos Keytab:用于与 Kerberos 进行身份验证的 Keytab 凭据,这个属性需要提供一个文件。
SSL Context Service:支持与 Kafka brokers 进行 SSL 通信的服务。
Topic Name:设置 Kafka 主题的名称,多个主题的话逗号分隔,如xiaojingang,dajingang
Topic Name Format:指定要拉取数据的 Kafka 主题的名称。如果有多个主题,可以使用逗号分隔;如果是单个正则表达式,则指定是否提供的主题名称为逗号分隔列表或单个正则表达式。
Honor Transactions:指定 NiFi 是否应在与 Kafka 通信时遵守事务性保证。如果设置为 false,处理器将使用“隔离级别”为 read_uncommitted。这意味着消息将在写入 Kafka 后立即接收,但即使生产者取消事务,也会被拉取。如果此值设置为 true,则 NiFi 将不会接收任何生产者事务被取消的消息,但这可能会导致一些延迟,因为消费者必须等待生产者完成整个事务,而不是在消息可用时立即拉取。
Group ID:一个群组 ID 用于标识属于同一消费者组的消费者。
Offset Reset: Kafka 初始偏移量设置,有earliest 、latest 、none 三个选项。
Key Attribute Encoding:发出的FlowFiles具有一个名为'kafka.key'的属性。此属性规定了该属性值应如何编码。这是使用默认值。
Message Demarcator:指定用于在单个FlowFile中分隔多个消息的字符串(解释为UTF-8)。如果未指定,则将整个FlowFile内容用作单个消息。如果指定了分隔符,则将FlowFile内容拆分为此分隔符,并将每个部分作为单独的Kafka消息发送。要输入特殊字符,如'换行符',请使用CTRL+Enter或Shift+Enter,取决于您的操作系统。
Separate By Key:如果设置为 true,并且设置了 <Message Demarcator> 属性,则仅当两个 Kafka 消息具有相同的键时,才会将两个消息添加到同一个 FlowFile 中。
Message Header Encoding:发现在 Kafka 消息上的任何消息头都将作为属性添加到出站 FlowFile 中。此属性指示用于反序列化头的字符编码。
Headers to Add as Attributes (Regex):正则表达式将与所有消息头进行匹配。任何名称与正则表达式匹配的消息头都将作为属性添加到 FlowFile 中。如果未指定,则不会将头值添加为 FlowFile 属性。如果两条消息具有相同标题的不同值,并且该标题由提供的正则表达式选择,则这两条消息必须添加到不同的 FlowFiles 中。因此,如果消息预期具有每个消息唯一的标题值(例如标识符或时间戳),用户在使用类似于 ".*" 的正则表达式时应谨慎,因为它将阻止 NiFi 将消息有效地捆绑在一起。
Max Poll Records:指定 Kafka 在单次轮询中应返回的最大记录数。
Max Uncommitted Time:指定允许的最长时间,直到必须提交偏移量。该值影响偏移量提交的频率。较少频繁地提交偏移量会增加吞吐量,但也会增加在重新平衡或在提交之间的 JVM 重启时潜在数据重复的窗口。此值还与最大轮询记录和使用消息分隔符相关。当使用消息分隔符时,我们可以有远比不使用时更多的未提交消息,因为我们在内存中要跟踪的内容要少得多。
Communications Timeout:指定消费者与 Kafka Broker 通信时应使用的超时时间。
3、运行nifi flow,查看ConsumeKafka处理器的溯源信息,如下图所示:
点击view按钮查看数据,如下图所示:
ETL工具-nifi干货系列 第十五讲 nifi处理器ConsumeKafka实战教程的更多相关文章
- Spring Boot干货系列:(十二)Spring Boot使用单元测试(转)
前言这次来介绍下Spring Boot中对单元测试的整合使用,本篇会通过以下4点来介绍,基本满足日常需求 Service层单元测试 Controller层单元测试 新断言assertThat使用 单元 ...
- 开源ETL工具kettle系列之常见问题
开源ETL工具kettle系列之常见问题 摘要:本文主要介绍使用kettle设计一些ETL任务时一些常见问题,这些问题大部分都不在官方FAQ上,你可以在kettle的论坛上找到一些问题的答案 1. J ...
- 数据仓库系列之ETL过程和ETL工具
上周因为在处理很多数据源集成的事情一直没有更新系列文章,在这周后开始规律更新.在维度建模中我们已经了解数据仓库中的维度建模方法以及基本要素,在这篇文章中我们将学习了解数据仓库的ETL过程以及实用的ET ...
- etl学习系列1——etl工具安装
ETL(Extract-Transform-Load的缩写,即数据抽取.转换.装载的过程),对于企业或行业应用来说,我们经常会遇到各种数据的处理,转换,迁移,所以了解并掌握一种etl工具的使用,必不可 ...
- ETL工具的功能和kettle如何来提供这些功能
不多说,直接上干货! 大家会有一个疑惑,本系列博客是Kettle,那怎么扯上ETL呢? Kettle是一款国外开源的ETL工具,纯java编写,可以在Window.Linux.Unix上运行. 说白了 ...
- Web 开发人员和设计师必读文章推荐【系列三十】
<Web 前端开发精华文章推荐>2014年第9期(总第30期)和大家见面了.梦想天空博客关注 前端开发 技术,分享各类能够提升网站用户体验的优秀 jQuery 插件,展示前沿的 HTML5 ...
- Web 开发人员和设计师必读文章推荐【系列二十九】
<Web 前端开发精华文章推荐>2014年第8期(总第29期)和大家见面了.梦想天空博客关注 前端开发 技术,分享各类能够提升网站用户体验的优秀 jQuery 插件,展示前沿的 HTML5 ...
- 【转】ETL介绍与ETL工具比较
本文转载自:http://blog.csdn.net/u013412535/article/details/43462537 ETL,是英文 Extract-Transform-Load 的缩写,用来 ...
- Web 前端开发人员和设计师必读文章推荐【系列二十八】
<Web 前端开发精华文章推荐>2014年第7期(总第28期)和大家见面了.梦想天空博客关注 前端开发 技术,分享各类能够提升网站用户体验的优秀 jQuery 插件,展示前沿的 HTML5 ...
- Web 前端开发人员和设计师必读精华文章【系列二十六】
<Web 前端开发精华文章推荐>2014年第5期(总第26期)和大家见面了.梦想天空博客关注 前端开发 技术,分享各类能够提升网站用户体验的优秀 jQuery 插件,展示前沿的 HTML5 ...
随机推荐
- 力扣550(MySQL)-游戏玩法分析Ⅳ(中等)
题目: 需求:编写一个 SQL 查询,报告在首次登录的第二天再次登录的玩家的分数,四舍五入到小数点后两位.换句话说,您需要计算从首次登录日期开始至少连续两天登录的玩家的数量,然后除以玩家总数. 查询结 ...
- 力扣561(java&python)-数组拆分(简单)
题目: 给定长度为 2n 的整数数组 nums ,你的任务是将这些数分成 n 对, 例如 (a1, b1), (a2, b2), ..., (an, bn) ,使得从 1 到 n 的 min(ai, ...
- 史上最强《Java 开发手册》泰山版王者归来!
阿里妹导读:潜力修炼一年之久的<Java 开发手册(泰山版)>今天发布!此次共计新增 34 条规约,修改描述 90 处,其中错误码规则更是第一次提出完整的解决方案,大家参考错误码示例表,欢 ...
- OpenYurt:延伸原生 Kubernetes 到边缘场景下的落地实践
简介: 随着云原生技术的逐步成熟,阿里云容器服务团队在具体落地实践过程中不断探索云原生技术的应用边界.同时随着物联网和 5G 的迅猛发展,传统的边缘计算架构已经不能满足业务发展的需要. 如何基于云原生 ...
- 五福背后的 Web 3D 引擎 Oasis Engine 正式开源
简介: Oasis 从开源走向新的起点,用 3D 化的交互和表达让世界变得更美好. 相信大家已经体验了今年支付宝五福的活动,无论是今年的五福首页还是打年兽游戏都是由蚂蚁互动图形引擎(代号:Oasis ...
- 云上技术 | 混合云管理平台多Region架构
简介: 随着现代化进程加速,企业业务规模和迭代速度也今非昔比,在已具备一定规模的中大型电力系统中,会面临着数字化升级的压力,包括复杂组织架构管理.计算资源弹性扩展.IT运维提效等需求.基于电力行业属性 ...
- 当设计模式遇上 Hooks
简介: 数据结构与设计模式能够指导我们在开发复杂系统中寻得一条清晰的道路,既然都说 Hooks 难以维护,那就尝试让「神」来拯救这混乱的局面.对于「设计模式是否有助于我们写出更优雅的 Hooks 」 ...
- win10 uwp 简单制作一个 Path 路径绘制的图标按钮
本文告诉大家在 UWP 或 WinUI 3 里面如何简单制作一个由 Path 几何路径图形绘制的图标按钮 先在资源里面定义按钮的样式,重写 Template 属性,通过在 Template 里面放入 ...
- C语言的指针不能与数组之前的内存进行比较
标准允许指向数组元素的指针与指向数组最后一个元素后面的那个内存位置的指针进行比较,但是不允许与指向数组第一个元素之前的那个内存位置的指针进行比较. 案例一 #define DATAMAX 5 int ...
- zabbix API笔记
python简单demo 输出id为111主机的主机群组信息 import requests import json request_headers = {"Content-Type&quo ...