NIFI概述

NIFI概述文章目录 NIFI 概述 NIFI 基础 NIFI 简介 NIFI 特点优点缺点 Nifi 的一些核心概念 NIFI 面板 NIFI 概述参考 https blog csdn net cc xss article details 76195254http www cnblogs com neillee p 7004006 htmlhttps blog csdn net 24505127 a

NIFI概述

参考:

  • https://blog.csdn.net/cc_xss/article/details/
  • https://www.cnblogs.com/neillee/p/7004006.html
  • https://blog.csdn.net/_/article/details/
  • https://my.oschina.net/thinker4self/blog/
  • https://blog.csdn.net/_/article/details/
  • https://blog.csdn.net/cc_xss/article/details/
  • https://blog.csdn.net/zhanglong_4444/article/details/

NIFI基础

NIFI简介

  • Apache NiFi 是一个易于使用、功能强大而且可靠的数据处理和分发系统。Apache NiFi 是为数据流设计。它支持高度可配置的指示图的数据路由、转换和系统中介逻辑。
  • Nifi 是一个开源的数据处理工具,可以通过简单的Processor对数据流进行处理。1.8版本内置了286个Processor,可以处理大部分的应用场景。
  • nifi的主要用途是对数据进行处理,可汇总、分流、过滤、筛选、组合…等等。
  • nifi内部功能强大,它的一个优点就是大大减少了编程量!它有很多内置的处理模块,只需用户修改条件或变量便可实现其功能,此外还有一些模块可执行程序代码来进行更灵活的自定义的操作。
  • nifi中最常用到的就是正则表达式,偶尔会用到一些代码(java),其次就是数据源的格式(xml、csv、txt、pdf等) ,所以nifi对有一定编程基础的人来说还是很好上手的,只需要多看看文档上对各个模块的释义以及一些函数规则,了解各个模块的功能即可顺畅使用。 nifi对于没有编程基础的人的门槛设置也不是很高,逻辑思维需要通过多个case来练习,训练对nifi的熟悉度,体会其中的逻辑。此外还要学习正则表达式的语法。
NIFI特点
  • 基于web的用户界面
    无缝体验设计、控制和监视
  • 高度可配置的
    数据丢失容错和保证交付
    低延迟和高吞吐量
    动态优先级
    流可以在运行时修改
    背压 Back presure




  • 数据来源
    从始至终跟踪数据流
  • 为扩展设计
    构建自己数据处理器
    支持快速开发和有效的测试

  • 安全
    SSL,SSH,HTTPS加密内容,等等……
    可插拔的基于角色的验证/授权

优点
  • 可视化的UI界面,各个模块组件之间高度可配置,且每个流程都有监控,可以通过界面直观的看到各个数据处理模块之间的数据流转情况,分析出程序性能瓶颈。
  • 数据流可以在UI界面自由拖拽和拓展,各模块之间相互独立,互不影响。
  • 可以在处理耗时的地方创建多个处理模块并行执行,提升处理速度。类似于代码中加入了多线程,但相对于修改代码,界面配置操作十分简单。
  • 修改方便,任意模块都可以在数据流转过程中随时启停,任意处理模块都可以实现热插拔。数据流流向随时可变。
  • Nifi的对处理模块有对应的retry机制和错误分发机制,且可配置性强。
缺点

各个步骤中间结果落地导致磁盘IO成为Nifi的瓶颈,这个缺点在数据冗余量越大的时候表现的越明显。

Nifi 的一些核心概念

  • FlowFile:信息流,每一个数据流在系统里面流动,并包含着key/value形式的attribute,以及不同大小的content;
  • FlowFile Processor:数据流处理器是nifi中真正处理工作的,譬如,整合,转换,调节系统中的流转的数据流,数据流处理器可以接收上游的flow的attribute,以及content。数据流处理器可以处理0至多个流,并给出相应的反馈,比如提交或者回滚。
  • Connection:有界缓冲区,不同处理器之间的连接纽带,他是一个消息队列,可以接收不同的处理器,并与之以不同的流频率进行交互,这些队列可以动态分配优先级,并且可以有负载的上限,从而实现反压。
  • Flow Controller:流量控制器负责管理有多少处理器的连接和管理线程以及分配资源,他作为不同处理器之间的数据流交换代理;
  • Process Group:处理器组是一些连在一起的处理器的组合,他可以通过inputport得到数据,也可以通过outputport发送数据,我们可以使用不同的处理器组,构造更多的组合。

NIFI面板

[外链图片转存失败(img-IAgeYybH-1566262085393)(index_files/556b215c-05ab-42df-aaee-9fcdc95fa66d.png)]
区域一
这里就是“操作画布“,所有的对数据流的操作基本都在这个上面进行,在这上面可以进行”拖、拽、拉、连线…“等等操作,至于这几个操作的具体作用是什么,在后续的实例中会具体介绍。(从图中可以看到画布上面有几个我之前建好的组)
区域二
这里主要是构造数据流操作的主要面板。



  • [外链图片转存失败(img-MUBC8ojJ-1566262085396)(index_files/b3998810-52e4-4e5b-99ee-c6f4655d2d6f.png)]添加模块(processor)
    nifi内部会提供各个处理模块,当我们在进行数据处理的过程中,可以选择不同的模块并调整变量进行拼装,从而组合成一个完整的数据流处理的组。
  • [外链图片转存失败(img-JOlpwfTK-1566262085400)(index_files/96af742e-c219-4a66-906f-58848644678b.png)]添加数据流传入点(input-port)
    虽说是数据流输入点,但是并不是整体数据流的起点。它是作为组与组之间的数据流连接的传入点与输出点。
  • 在这里插入图片描述添加数据流输出点(output-port)
    同理上面的输入点。它是作为组与组之间的数据流连接的传入点与输出点。
  • 在这里插入图片描述添加组(process-group)
    组相当于系统中的文件夹,作用就是使数据流的各个部分看起来更工整,思路更清晰,不至于从头到尾一条线阅读起来十分不方便。
  • 在这里插入图片描述添加远端的组(remote process-group)
    根据弹出框进行信息配置,可加入远程的组。
  • 在这里插入图片描述
  • 在这里插入图片描述拉取已有的文件(template)
    每当做好一个完整的数据流后,可存储到本地为xml文件,nifi支持本地的template上传,这个按钮就是在上传本地template之后,选择上传过的一个获取到操作画布上。
  • 在这里插入图片描述添加便签(label)
    相当于便签,可放置在画布空白处,写上备注信息。

区域三
这一部分是对区域一这个画布的缩小预览,点击放大缩小可调整视野,蓝框区域就是画布当前的界面,可用鼠标在这部分进行移动从而调整画布的视野。

区域四

  • [外链图片转存失败(img-KNiGSOcE-1566262085403)(index_files/509f83c5-03ac-4587-997f-66ac2a6ad83c.png)]开始运行
    选中模块并点击运行按钮,开始进行对数据流的处理。
  • 在这里插入图片描述停止运行
    选中模块并点击停止按钮,则停止了进行对数据流的处理。
  • 在这里插入图片描述保存template
    选择你要保存的一个template,点击这个保存按钮,可把这个template保存到nifi系统里(并不是电脑本地,如果想保存到电脑本地,可点击右上角[外链图片转存失败(img-VNGz53lE-1566262085405)(index_files/08a012d1-e7ae-44b1-b1b7-26079670403d.png)]这个按钮,选择Template,弹出的页面上有下载选项)。
  • 在这里插入图片描述上传template
    可上传本地的template(xml文件)到nifi系统里。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/198860.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月26日 下午2:20
下一篇 2026年3月26日 下午2:20


相关推荐

  • 2g内存能用的安卓模拟器_逍遥模拟器卡顿怎么解决

    2g内存能用的安卓模拟器_逍遥模拟器卡顿怎么解决现在安卓模拟器作为安卓文件在电脑上运行的辅助工具,使用率非常高,不过有一些用户表示自己的电脑配置比较低,使用一些较为热门的模拟器可能会比较卡,不好用,那么下面小编就为大家推荐一番。安卓模拟器低配置版哪个好1、叶子猪手游模拟器叶子猪手游模拟器资源下载版本名称下载地址叶子猪模拟器官方最新版叶子猪手游模拟器下载首先我们将来说说叶子猪手游模拟器,相信喜欢玩游戏的小伙伴都知道,它稳定兼容99%以上硬件…

    2022年4月19日
    214
  • 详解IPv4地址

    详解IPv4地址IPv4 地址范围 0 0 0 0 255 255 255 255 约有 43 亿 计算机的 IP 地址由两部分组成 一部分为网络位 一部分为主机位 同一网段内的计算机网络部分相同 主机部分不同同时重复出现 路由器连接不同网段 负责不同网段之间的数据转发 交换机连接的是同一网段的计算机 通过设置网络地址和主机地址 在互相连接的整个网络中保证每台主机的 IP 地址不会互相重叠 即 IP 地址具有了唯一性 网络掩码 用于区分一个 IP 地址的网络部分和主机部分 IP 地址根据网络 ID 的不同分为 A

    2026年3月19日
    2
  • idea格式化代码快捷键失效_idea格式化代码快捷键无效

    idea格式化代码快捷键失效_idea格式化代码快捷键无效IDEA格式化代码快捷键失灵原因

    2022年10月11日
    4
  • HTML—标签总结

    HTML—标签总结

    2021年10月2日
    45
  • 信用卡行为评分风险等级_信用卡综合评分标准

    信用卡行为评分风险等级_信用卡综合评分标准WOE&IVwoe全称叫WeightofEvidence,常用在风险评估、授信评分卡等领域。IV全称是Informationvalue,可通过woe加权求和得到,衡量自变量对应变量的预测能力。虽然网上到处都是神经网络、xgboost的文章,但当下的建模过程中(至少在金融风控领域)并没有完全摆脱logistic模型,原因大致有以下几点:logistic模型客群变化的敏感度不如其他高…

    2025年6月13日
    9
  • 【教程】最简单的Claude Code Router(ccr)配置教程,低成本使用claude code

    【教程】最简单的Claude Code Router(ccr)配置教程,低成本使用claude code

    2026年3月16日
    3

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号