首页 > 其他分享 >1、nifi-1.9.2介绍、单机部署及简单验证

1、nifi-1.9.2介绍、单机部署及简单验证

时间:2023-05-15 19:06:42浏览次数:70  
标签:nifi NiFi 单机 1.9 处理器 local usr




文章目录

  • Apache NiFi系列文章
  • 一、Nifi是什么
  • 1、dataflow要面临的一些挑战
  • 2、Features
  • 3、NIFI核心概念
  • 4、NiFi单机架构
  • 5、NiFi集群架构
  • 6、NIFI的性能
  • 1)、IO
  • 2)、CPU
  • 3)、RAM
  • 7、NIFI关键特性
  • 1)、流管理
  • 2)、易用性
  • 3)、灵活的缩放模型
  • 二、部署
  • 1、运行环境
  • 2、下载
  • 3、单机部署与启动
  • 1)、Windows用户
  • 2)、Linux、Mac用户
  • 3)、作为一个服务进行安装
  • 4)、linux部署与启动示例
  • 三、组件介绍
  • 1、Nifi处理器
  • 1)、查看处理器
  • 2)、常用处理器
  • 3)、配置处理器
  • 1、添加
  • 2、配置
  • 1)、SETTING ( 设置 )
  • 2)、SCHEDULING ( 任务调度 )
  • 3)、PROPERTIES ( 属性 )
  • 4)、COMMENTS ( 注释 )
  • 2、其他组件
  • 1)、数据流传入点(input-port)
  • 2)、数据流输出点(output-port)
  • 3)、组(process-group)
  • 4)、远程组(remote process-group)
  • 5)、聚合(funnel)
  • 6)、模版(template)
  • 7)、便签(label)
  • 8)、导航(Navigate)
  • 9)、操作区(Operate)
  • 1、配置(Configuration)
  • 2、启用(enable)
  • 3、禁用(disable)
  • 4、开始(start)
  • 5、停止(stop)
  • 6、创建模版(create template)
  • 7、上传模版(upload template)



本文主要介绍了NIFI是什麽、单机的部署、简单验证(以getFile为例)和相关组件。
本文的前提是安装好像对应的jdk即可。
本文分为三部分,即简单介绍、单机部署和组件介绍。

一、Nifi是什么

官网:https://nifi.apache.org/ 开发文档:https://nifi.apache.org/docs.html
Apache NiFi 是一个易于使用,功能强大且可靠的系统,用于处理和分发数据。可以自动化管理系统间的数据流。它使用高度可配置的指示图来管理数据路由、转换和系统中介逻辑,支持从多种数据源动态拉取数据。NiFi原来是NSA的一个项目,目前已经代码开源,是Apache基金会的顶级项目之一。

NiFi是基于Java的,使用Maven支持包的构建管理。 NiFi基于Web方式工作,后台在服务器上进行调度。用户可以将数据处理定义为一个流程,然后进行处理,NiFi后台具有数据处理引擎、任务调度等组件。

简单的说,NiFi就是为了解决不同系统间数据自动流通问题而建立的。

虽然dataflow这个术语在各种场景都有被使用,但我们在这里使用它来表示不同系统间的自动化的可管理的信息流。

1、dataflow要面临的一些挑战

  • Systems fail
    系统调用失败,网络故障,磁盘故障,软件崩溃,人为事故。
  • Data access exceeds capacity to consume
    数据访问超出了消耗能力。有时,给定的数据源可能会超过处理链或交付链的某些部分的处理能力,而只需要一个环节出现问题,整个流程都会受到影响。
  • Boundary conditions are mere suggestions
    超出边界问题,总是会得到太大、太小、太快、太慢、损坏、错误或格式错误的数据。
  • What is noise one day becomes signal the next
    现实业务或需求变更快,设计新的数据处理流程或者修改已有的流程必须要迅速。
  • Systems evolve at different rates
    给定的系统所使用的协议或数据格式可能随时改变,而且常常跟周围其他系统无关。dataflow的存在就是为了连接这种大规模分布的,松散的,甚至根本不是设计用来一起工作的组件系统。
  • Compliance and security
    法律,法规和政策发生变化。企业对企业协议的变化。系统到系统和系统到用户的交互必须是安全的,可信的,负责任的。
  • Continuous improvement occurs in production
    通常不可能在测试环境中完全模拟生产环境。

NiFi旨在帮助解决这些现代数据流挑战。

2、Features

Apache NiFi supports powerful and scalable directed graphs of data routing, transformation, and system mediation logic.
Apache NiFi includes the following capabilities:
1、Browser-based user interface

  • Seamless experience for design, control, feedback, and monitoring

2、Data provenance tracking

  • Complete lineage of information from beginning to end

3、Extensive configuration

  • Loss-tolerant and guaranteed delivery
  • Low latency and high throughput
  • Dynamic prioritization
  • Runtime modification of flow configuration
  • Back pressure control

4、Extensible design

  • Component architecture for custom Processors and Services
  • Rapid development and iterative testing

5、Secure communication

  • HTTPS with configurable authentication strategies
  • Multi-tenant authorization and policy management
  • Standard protocols for encrypted communication including TLS and SSH

3、NIFI核心概念

NiFi的基本设计概念与基于流程的编程fbp(Flow Based Programing)的主要思想密切相关。以下是一些主要的NiFi概念以及与FBP的关系:

1、nifi-1.9.2介绍、单机部署及简单验证_kafka


此设计模型也类似于seda(分阶段),带来了很多好处,有助于NiFi成为非常有效的、构建功能强大且可扩展的数据流的平台。

其中一些好处包括但不限于:

  • 有助于处理器有向图的可视化创建和管理
  • 本质上是异步的,允许非常高的吞吐量和足够的自然缓冲
  • 提供高并发的模型,开发人员不必担心并发的复杂性
  • 促进内聚和松散耦合组件的开发,然后可以在其他环境中重复使用并方便单元测试
  • 资源受限的连接(流程中可配置connections)使得背压和压力释放等关键功能非常自然和直观
  • 错误处理变得像基本逻辑一样自然,而不是粗粒度的全部捕获(catch-all)
  • 数据进入和退出系统的点,以及它是如何流动的,都是容易理解和跟踪的。

4、NiFi单机架构

1、nifi-1.9.2介绍、单机部署及简单验证_flume_02

  • Web Server(网络服务器),web服务器的目的是承载NiFi基于http的命令和控制API。
  • Flow Controller(流控制器),是整个操作的核心,为将要运行的组件提供线程,管理调度。
  • Extensions(扩展),有各种类型的NIFI扩展,这些扩展在其他文档中进行了描述。这里的关键点是NIFI扩展在JVM中操作和执行。
  • FlowFile Repository(流文件存储库),对于给定一个流中正在活动的FlowFile,FlowFile Repository就是NIFI保持跟踪这个FlowFIle状态的地方。FlowFile Repository的实现是可插拔的(多种选择,可配置,甚至可以自己实现),默认实现是使用Write-Ahead Log技术(简单普及下,WAL的核心思想是:在数据写入库之前,先写入到日志.再将日志记录变更到存储器中。)写到指定磁盘目录。
  • Content Repository(内容存储库),Content Repository是给定FlowFile的实际内容字节存储的地方。Content Repository的实现是可插拔的。默认方法是一种相当简单的机制,它将数据块存储在文件系统中。可以指定多个文件系统存储位置,以便获得不同的物理分区以减少任何单个卷上的争用。(所以环境最佳实践时可配置多个目录,挂载不同磁盘,提高IO)
  • Provenance Repository(源头存储库),Provenance Repository是存储所有事件数据的地方。Provenance Repository的实现是可插拔的,默认实现是使用一个或多个物理磁盘卷。在每个位置内的事件数据都是被索引并可搜索的。

5、NiFi集群架构

也能够在集群内运行

1、nifi-1.9.2介绍、单机部署及简单验证_flume_03

  • Cluster Coordinator: 集群协调器,用来进行管理节点添加和删除的操作逻辑
  • Primary Node: 主节点,用来运行一些不适合在集群中运行的组件
  • Zookeeper Client: zk节点

从NiFi 1.0版本开始,NIFI集群采用了Zero-Master Clustering模式。NiFi群集中的每个节点对数据执行相同的任务,但每个节点都在不同的数据集上运行。Apache ZooKeeper选择单个节点作为集群协调器,ZooKeeper自动处理故障转移。所有集群节点都会向集群协调器发送心跳报告和状态信息。集群协调器负责断开和连接节点。此外,每个集群都有一个主节点,主节点也是由ZooKeeper选举产生。我们可以通过任何节点的用户界面(UI)与NiFi群集进行交互,并且我们所做的任何更改都将复制到集群中的所有节点上。

6、NIFI的性能

NIFI的设计目的是充分利用其运行的底层主机系统的能力。这种资源的最大化在CPU和磁盘方面尤其明显。

1)、IO

不同系统不同配置可预期的吞吐量或延迟会有很大差异,具体取决于系统的配置方式。由于大多数NiFi子系统都有可插拔的实现方法,所以性能取决于实现。但是,对于一些具体和广泛适用的地方,使用现成的默认实现。这些实现都是持久的,有保证的让数据流传递,并且是使用本地磁盘来实现。因此,假设在典型服务器中的普通磁盘或RAID卷上的每秒读/写速率大约为50 MB,对于大型数据流,NIFI应该能够有效地达到每秒100 MB或更多的吞吐量。这是因为预期添加到NiFi的每个物理分区和content repository都会出现线性增长。

2)、CPU

Flow Controller充当引擎的角色,指示特定处理器何时可以被分配线程去执行。编译处理器并在执行任务后立即释放线程。可以为Flow Controller提供一个配置值,该值指示它维护的各种线程池的可用线程。理想的线程数取决于主机系统内核数量,系统中是否正在运行其他服务,以及流程中要处理的流的性质。对于典型的IO大流量,合理的做法是让多线程可用。

3)、RAM

NiFi在JVM中运行,因此受限于JVM提供的内存。JVM垃圾回收(GC)成为限制实际堆总大小以及优化应用程序运行的一个非常重要的因素。NIFI作业在定期读取相同内容时可能会占用大量I/O。可以配置足够大的内存和磁盘以优化性能。

7、NIFI关键特性

1)、流管理

  • 保证交付,NIFI的核心理念是,即使在非常高的规模下,也必须保证交付。这是通过有效地使用专门构建的Write-Ahead Log和content repository来实现的。它们一起被设计成具备允许非常高的事务速率、有效的负载分布、写时复制和能发挥传统磁盘读/写的优势。
  • 数据缓冲背压和压力释放,NIFI支持缓冲所有排队的数据,以及在这些队列达到指定限制时提供背压的能力(背压对象阈值和背压数据大小阈值),或在数据达到指定期限(其值已失效)时老化丢弃数据的能力。
  • 队列优先级,NiFi允许设置一个或多个优先级方案,用于如何从队列中检索数据。默认情况是先进先出,但有时应该首先提取最新的数据(后进先出)、最大的数据先出或其他定制方案。
  • 特殊流质量 (延迟和吞吐量),可能在数据流的某些节点上数据至关重要,不容丢失,并且在 某些时刻这些数据需要在几秒钟就处理完毕传向下一节点才会有意义。对于这些 方面NIFI也可以做细粒度的配置。

2)、易用性

  • 可视化流程,数据流的处理逻辑和过程可能会非常复杂。能够可视化这些流程并以可视的方式来表达它们可以极大地帮助用户降低数据流的复杂度,并确定哪些地方需要简化。NiFi可以实现数据流的可视化建立,而且是实时的。并不是“设计、部署”。如果对数据流进行了更改,更改就会立即生效,并且这些更改是细粒度的和组件隔离的。用户不需要为了进行某些特定修改而停止整个流程或流程组。
  • 流模版,FlowFIle往往是高度模式化的,虽然通常有许多不同的方法来解决问题,但能够共享这些最佳实践却大有帮助。流程模板允许设计人员构建和发布他们的流程设计,并让其他人从中受益和复用。
  • 数据起源跟踪,在对象流经系统时,甚至在扇入、扇出、转换等过程,NIFI会自动记录、索引并提供可用的源数据。这些信息在支持法规遵从性、故障排除、优化以及其他方案中变得极其关键。
  • 记录和重放的细粒度历史记录缓冲区,NiFi的content repository旨在充当历史数据的滚动缓冲区。数据仅在content repository老化或需要空间时才会被删除。content repository与data provenance能力相结合,为在对象的生命周期中的特定点(甚至可以跨越几代)实现可以查看内容,内容下载和重放等功能提供了非常有用的基础。

3)、灵活的缩放模型

  • 水平扩展 (Clustering),NiFi的设计是可集群,可横向扩展的。如果配置单个节点并将其配置为每秒处理数百MB数据,那么可以相应的将集群配置为每秒处理GB级数据。但这也带来了NiFi与其获取数据的系统之间的负载平衡和故障转移的挑战。采用基于异步排队的协议(如消息服务,Kafka等)可以提供帮助解决这些问题。
  • 扩展和缩小,NiFi还可以非常灵活地扩展和缩小。从NiFi框架的角度来看,在增加吞吐量方面,可以在配置时增加“调度”选项卡下处理器上的并发任务数。这允许更多线程同时执行,从而提供更高的吞吐量。另一方面,您可以完美地将NiFi缩小到适合在边缘设备上运行,因为硬件资源有限,所需的占用空间很小,这种情况可以使用MINIFI。

二、部署

1、运行环境

Apache nifi既可运行在Windows平台,也可运行在Linux平台,需要安装jdk(nifi 1.x以上需要jdk8以上,0.x需jdk7以上)和maven(至少3.1.0以上版本)。

  • Requires Java 8 or Java 11
  • Supported Operating Systems:
    Linux
    Unix
    Windows
    macOS
  • Supported Web Browsers:
    Microsoft Edge: Current & (Current - 1)
    Mozilla FireFox: Current & (Current - 1)
    Google Chrome: Current & (Current - 1)
    Safari: Current & (Current - 1)
  • FlowFile:每条"用户数据"(即用户带进NiFi的需要进行处理和分发的数据)称为FlowFile。FlowFile由两部分组成:Attributes 和 Content。Content是用户数据本身。Attributes是与用户数据关联的键值对。
  • Processor:处理器,是NiFi组件,负责创建,发送,接收,转换,路由,拆分,合并和处理FlowFiles。它是NiFi用户可用于构建其数据流的最重要的构建块。

2、下载

版本地址:https://archive.apache.org/dist/nifi 本次下载的是当前最新的版本
https://archive.apache.org/dist/nifi/1.9.2/nifi-1.9.2-bin.tar.gz

3、单机部署与启动

1)、Windows用户

对于Windows用户,进入安装NiFi的文件夹,在此文件夹中有一个名为bin的子文件夹。进入此子文件夹,然后双击run-nifi.bat文件。这将启动NiFi并让它在前台运行。要关闭NiFi,请选择已启动的窗口,按住Ctrl+C。

2)、Linux、Mac用户

  • 对于Linux和OS X用户,使用终端窗口进入安装NiFi的目录。要在前台运行NiFi,就运行bin/nifi.sh run,直到用户按下Ctrl-C,NIFI就关闭了。
  • 要在后台运行NiFi,请运行bin/nifi.sh start。这将启动应用程序并开始运行。要检查状态并查看NiFi当前是否正在运行,请执行bin/nifi.sh status命令。可以通过执行命令bin/nifi.sh stop关闭NiFi 。

3)、作为一个服务进行安装

目前,仅支持Linux和Mac OS X用户作为服务进行NiFi的安装。要将应用程序作为服务去安装,首先进入安装目录,然后执行命令bin/nifi.sh install,这样就以默认名称nifi安装服务了。要为服务指定自定义名称,请使用可选的第二个参数(该服务的名称)执行该命令。例如,要将NiFi作为具有dataflow名称的服务安装,请使用该命令:bin/nifi.sh install dataflow。
安装后,可以使用适当的命令启动和停止服务,例如service nifi start 和service nifi stop。此外,可以通过执行service nifi status命令检查运行状态。

4)、linux部署与启动示例

以linux版本为例, 解压并启动

## 下载目录为/usr/local/tools
# 进入目录
cd /usr/local/tools

# 解压文件
tar zxvf nifi-1.9.2-bin.tar.gz -C /usr/local/bigdata

# 得到目录: /usr/local/bigdata/nifi-1.9.2, 进入bin目录并查看目录内容
cd nifi-1.9.2/bin && ls

[root@server1 nifi-1.9.2]# pwd
/usr/local/bigdata/nifi-1.9.2
[root@server1 nifi-1.9.2]# cd bin
[root@server1 bin]# ll
总用量 32
-rwxrwx--- 1 root root  1872 3月  14 2019 dump-nifi.bat
-rwxrwx--- 1 root root  1120 3月  14 2019 nifi-env.bat
-rwxrwx--- 1 root root  1664 3月  14 2019 nifi-env.sh
-rwxrwx--- 1 root root 12087 3月  14 2019 nifi.sh
-rwxrwx--- 1 root root  1871 3月  14 2019 run-nifi.bat
-rwxrwx--- 1 root root  1832 3月  14 2019 status-nifi.bat

#web服务端启动的默认端口是8080,如果运行机器已经占用该端口的话,则需要修改
nifi-1.9.2/conf/nifi.properties
......
# web properties #
。。。
nifi.web.http.host=
nifi.web.http.port=38080  # 修改默认端口为: 38080
nifi.web.http.network.interface.default=
nifi.web.https.host=
nifi.web.https.port=

......

[root@server1 bin]# nifi.sh run

Java home: /usr/java/jdk1.8.0_144
NiFi home: /usr/local/bigdata/nifi-1.9.2

Bootstrap Config File: /usr/local/bigdata/nifi-1.9.2/conf/bootstrap.conf

2023-02-06 05:14:56,317 INFO [main] org.apache.nifi.bootstrap.Command Starting Apache NiFi...
2023-02-06 05:14:56,317 INFO [main] org.apache.nifi.bootstrap.Command Working Directory: /usr/local/bigdata/nifi-1.9.2
2023-02-06 05:14:56,317 INFO [main] org.apache.nifi.bootstrap.Command Command: /usr/java/jdk1.8.0_144/bin/java -classpath /usr/local/bigdata/nifi-1.9.2/./conf:/usr/local/bigdata/nifi-1.9.2/./lib/slf4j-api-1.7.25.jar:/usr/local/bigdata/nifi-1.9.2/./lib/nifi-framework-api-1.9.2.jar:/usr/local/bigdata/nifi-1.9.2/./lib/nifi-runtime-1.9.2.jar:/usr/local/bigdata/nifi-1.9.2/./lib/log4j-over-slf4j-1.7.25.jar:/usr/local/bigdata/nifi-1.9.2/./lib/nifi-nar-utils-1.9.2.jar:/usr/local/bigdata/nifi-1.9.2/./lib/jul-to-slf4j-1.7.25.jar:/usr/local/bigdata/nifi-1.9.2/./lib/jcl-over-slf4j-1.7.25.jar:/usr/local/bigdata/nifi-1.9.2/./lib/jetty-schemas-3.1.jar:/usr/local/bigdata/nifi-1.9.2/./lib/logback-classic-1.2.3.jar:/usr/local/bigdata/nifi-1.9.2/./lib/nifi-api-1.9.2.jar:/usr/local/bigdata/nifi-1.9.2/./lib/javax.servlet-api-3.1.0.jar:/usr/local/bigdata/nifi-1.9.2/./lib/logback-core-1.2.3.jar:/usr/local/bigdata/nifi-1.9.2/./lib/nifi-properties-1.9.2.jar -Dorg.apache.jasper.compiler.disablejsr199=true -Xmx512m -Xms512m -Djavax.security.auth.useSubjectCredsOnly=true -Djava.security.egd=file:/dev/urandom -Dsun.net.http.allowRestrictedHeaders=true -Djava.net.preferIPv4Stack=true -Djava.awt.headless=true -XX:+UseG1GC -Djava.protocol.handler.pkgs=sun.net.www.protocol -Dnifi.properties.file.path=/usr/local/bigdata/nifi-1.9.2/./conf/nifi.properties -Dnifi.bootstrap.listen.port=41344 -Dapp=NiFi -Dorg.apache.nifi.bootstrap.config.log.dir=/usr/local/bigdata/nifi-1.9.2/logs org.apache.nifi.NiFi 
2023-02-06 05:14:56,385 INFO [main] org.apache.nifi.bootstrap.Command Launched Apache NiFi with Process ID 13550


# 使用 nifi.sh 进行单机运行操作, 常用参数如下:
# ./nifi.sh --help
# Usage nifi {start|stop|run|restart|status|dump|install}

## 以下是常用命令
# 启动
./nifi.sh start
# 关闭
./nifi.sh stop
# 重启
./nifi.sh restart
# 状态
./nifi.sh status
``

执行启动命令后, 需要等待 1 - 5分钟

http://server1:38080/nifi/

1、nifi-1.9.2介绍、单机部署及简单验证_java_04


1、nifi-1.9.2介绍、单机部署及简单验证_大数据_05

三、组件介绍

1、Nifi处理器

1)、查看处理器

1、选择处理器组件

1、nifi-1.9.2介绍、单机部署及简单验证_java_06


2、弹出窗口显示的就是所有处理器

1、nifi-1.9.2介绍、单机部署及简单验证_大数据_07

2)、常用处理器

  • ExecuteScript : 执行脚本处理器, 支持: clojure, ecmascript, groovy, lua, python, ruby
  • QueryDatabaseTable : 数据库查询处理器, 支持: mysql
  • ConvertAvroToJSON : avro 数据格式转换为 json
  • SplitJson : 将JSON文件拆分为多个单独的FlowFiles, 用于由JsonPath表达式指定的数组元素。
  • EvaluateJsonPath : 根据FlowFile的内容评估一个或多个JsonPath表达式。这些表达式的结果将分配给- FlowFile属性,或者写入FlowFile本身的内容,具体取决于处理器的配置。
  • ReplaceText : 文本组装与替换, 支持正则表达式
  • PutHDFS : 将FlowFile数据写入Hadoop分布式文件系统(HDFS)
  • PutHiveQL : 执行hive ddl/dml命令, 如: insert, update
  • PublishKafka_2_0 : 根据配置将消息发送到kafka topic
  • SelectHiveQL : 执行hive select 语句并获取结果
  • PutSQL : 执行SQL的insert或update命令
  • GetFile : 从目录中的文件创建FlowFiles。
  • PutFile : 将FlowFile数据写入文件
  • GetHDFS : 从Hadoop分布式文件系统获取文件
  • CaptureChangeMySQL : 从MySQL数据库中检索更改数据捕获(CDC)事件。CDC事件包括INSERT,UPDATE,DELETE操作。事件作为单个流文件输出,这些文件按操作发生的时间排序。
  • ExecuteStreamCommand : 一般用于执行sh脚本

3)、配置处理器

1、添加

以getFile为例。具体的配置动画可以参考官网上的示例。

1、nifi-1.9.2介绍、单机部署及简单验证_flume_08

2、配置

右键要配置的处理器, 会弹出配置项菜单, 如下图:

1、nifi-1.9.2介绍、单机部署及简单验证_etl_09


选项说明:

  • Configure(配置):此选项允许用户建立或更改处理器的配置。
  • Start(启动或停止):此选项允许用户启动或停止处理器; 该选项可以是Start或Stop,具体取决于处理器的当前状态。
  • Disable(启用或禁用):此选项允许用户启用或启用处理器; 该选项将为“启用”或“禁用”,具体取决于处理器的当前状态。
  • View data provenance(查看数据来源):此选项显示NiFi数据来源表,其中包含有关通过该处理器路由FlowFiles的数据来源事件的信息。
  • View status history(查看状态历史记录):此选项打开处理器统计信息随时间的图形表示。
  • View usage(查看用法):此选项将用户带到处理器的使用文档。
  • View connection → Upstream(查看连接→上游):此选项允许用户查看和“跳转”入处理器的上游连接。当处理器连接进出其他进程组时,这尤其有用。
  • View connection → Downstream(查看连接→下游):此选项允许用户查看和“跳转”到处理器外的下游连接。当处理器连接进出其他进程组时,这尤其有用。
  • Centere in view(视图中心):此选项将画布的视图置于给定的处理器上。
  • Change color(更改颜色):此选项允许用户更改处理器的颜色,这可以使大流量的可视化管理更容易。
  • Group (添加到组):把当前处理器添加到组
  • Create template(创建模板):此选项允许用户从所选处理器创建模板。
  • Copy(复制):此选项将所选处理器的副本放在剪贴板上,以便可以通过右键单击工作区并选择“粘贴”将其粘贴到工作区上的其他位置。复制粘贴操作也可以使用按键Ctrl-C和Ctrl-V完成。
  • Delete(删除):此选项允许从画布中删除处理器。

方式1: 右键选择 – > Configure

1、nifi-1.9.2介绍、单机部署及简单验证_kafka_10


方式2: 鼠标左键双击处理器

1、nifi-1.9.2介绍、单机部署及简单验证_java_11


配置分为4个部分: SETTING, SCHEDULING, PROPERTIES, COMMENTS

1)、SETTING ( 设置 )

1、nifi-1.9.2介绍、单机部署及简单验证_java_12

2)、SCHEDULING ( 任务调度 )

不同的处理器, 可能略有不同

1、nifi-1.9.2介绍、单机部署及简单验证_java_13

3)、PROPERTIES ( 属性 )

不同处理属性不同

1、nifi-1.9.2介绍、单机部署及简单验证_etl_14

4)、COMMENTS ( 注释 )

1、nifi-1.9.2介绍、单机部署及简单验证_flume_15


修改完成, 记得保存修改, 点击右下角的 “APPLY” 保存修改。

2、其他组件

1)、数据流传入点(input-port)

虽说是数据流输入点,但是并不是整体数据流的起点。它是作为组与组之间的数据流连接的传入点与输出点。

1、nifi-1.9.2介绍、单机部署及简单验证_etl_16

2)、数据流输出点(output-port)

它是作为组与组之间的数据流连接的传入点与输出点。

1、nifi-1.9.2介绍、单机部署及简单验证_kafka_17

3)、组(process-group)

组相当于系统中的文件夹,作用就是使数据流的各个部分看起来更系统或模块化。

1、nifi-1.9.2介绍、单机部署及简单验证_flume_18

4)、远程组(remote process-group)

1、nifi-1.9.2介绍、单机部署及简单验证_大数据_19

5)、聚合(funnel)

用于将来自多个Connections的数据合并到一个Connection中。

1、nifi-1.9.2介绍、单机部署及简单验证_java_20

6)、模版(template)

可以将若干组件组合在一起以形成更大的组,从该组创建数据流模版。这些模板也可以导出为XML并导入到另一个NiFi实例中,从而可以共享这些组。

1、nifi-1.9.2介绍、单机部署及简单验证_flume_21

7)、便签(label)

可放置在画布空白处,写上备注信息。

1、nifi-1.9.2介绍、单机部署及简单验证_flume_22

8)、导航(Navigate)

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

1、nifi-1.9.2介绍、单机部署及简单验证_java_23

9)、操作区(Operate)

右键工作区空白处也可以弹出操作菜单

1、nifi-1.9.2介绍、单机部署及简单验证_etl_24

1、配置(Configuration)

根据在当前工作区选中的组件, 进行属性配置, 可配置所有组件或组

2、启用(enable)

启用组件, 不能操作组

3、禁用(disable)

禁用组件, 不能操作组

4、开始(start)

启动选择的组件或组, 不选择启动所有

5、停止(stop)

停止选择的组件或组, 不选择停止所有

6、创建模版(create template)

根据选择的组件或组创建模版

7、上传模版(upload template)

上传已保存的模版

以上,完成了nifi的简单介绍、单机部署与简单验证和操作说明。更详细的介绍关注该专栏相关文章。


标签:nifi,NiFi,单机,1.9,处理器,local,usr
From: https://blog.51cto.com/alanchan2win/6280439

相关文章

  • 运行Study.Trade模块的Web.Unified.Host
    1、把Web.Host的项目设置为启动项目上一篇文章报错,因为npm功能没有安装,导致Web.Unified.Host的wwwroot下没有libs目录。2、默认是在IISExpress中承载4、修改一下,5、直接点击上面的红框6、浏览器打开了一个网址7、点“高级”8、点“接受风险并继续”控制台程序报错如下VisualStud......
  • 利用 systemd 管理 MySQL 单机多实例
    利用systemd管理MySQL单机多实例1修改配置文件[root@localhost/root]#cat/etc/my.cnf[mysql]#prompt="\u@mysqldb\R:\m:\s[\d]>"prompt="[\\u@\\h@\\p][\\d]>\\_"no_auto_rehashloose-skip-binary-as-hex[mysqld]basedir=......
  • Docker compose单机编排工具
    Dockercompose单机编排工具目录Dockercompose单机编排工具docker-compose介绍DockerCompose使用的三步:docker-compose安装部署Docker-compose语法YAML语法自动编排zabbix注意事项:官方版MySQLcompose官方escomposedocker-compose常用命令docker-compose介绍Compose是用于定......
  • kafka单机安装和简单使用
    1kafka下载linux环境安装kafka,需要预先准备相关资源这里使用的是kafka_2.12-2.5.1版本,下载路径为:http://archive.apache.org/dist/kafka/2.5.1/kafka_2.12-2.5.1.tgz也可以通过命令wgethttp://archive.apache.org/dist/kafka/2.5.1/kafka_2.12-2.5.1.tgz进行资......
  • 多连接的数据库管理工具Navicat Premium 16.1.9 Mac版
    NavicatPremium是一款多连接的数据库管理工具,它是一款免费的多通道、多连接程序,它支持企业和组织同时使用多个应用程序,在一个应用程序中运行多个数据库管理程序。使用Premium可以在同一应用程序中执行多个数据库程序。NavicatPremium可根据应用程序或Web服务之间的速度差异调......
  • Minikube:搭建部署单机 Kubernetes
    第一步:安装docker安装过程见连接 Centos安装docker-扰扰-博客园(cnblogs.com)第二步:安装VirtualBox2.1、直接使用yum源方式安装VirtualBox,配置正确的repo文件即可:[virtualbox]name=OracleLinux/RHEL/CentOS-$releasever/$basearch-VirtualBoxbaseurl=http......
  • 当前主机存在Sudo CVE-2021-3156漏洞:Sudo1.8.23升级1.9.5p2
    Sudo权限绕过漏洞(CVE-2019-14287)Sudo缓冲区溢出漏洞(CVE-2021-3156)根据安全漏洞CVE-2021-3156,受影响的Sudo版本:Sudo版本1.7.7到1.7.10p9、1.8.2到1.8.31p2和1.9.0到1.9.5p1受到影响。sudo官网:https://www.sudo.ws/sudo下载地址:https://www.sudo.ws/getting/do......
  • Nacos 的单机部署搭建
    Nacos是阿里巴巴的产品,主要用来做微服务的注册中心和配置中心,界面美观,功能强大,在国内非常受欢迎。本篇博客主要介绍如何搭建单机版的Nacos,为编写后续的博客做准备。后面也会介绍Nacos集群的搭建,搭建过程都很简单。官方建议使用2.x的版本,本篇博客将以当前最新的2.2.2版......
  • RocketMQ单机版安装
    1、下载最新的安装包  github下载地址:https://github.com/apache/rocketmq/releases。本文安装版本为:rocketmq-all-5.1.0-bin-release.zip2、安装JDK3、上传并解压安装包#从本地电脑上传安装包到Linux服务器scpE:\[email protected]......
  • 【SpringCloud】 Eureka 单机模式
    系统配置信息springboot版本:2.1.6.RELEASEjdk:1.8系统:Windows10工程结构父工程halo-cloud-parent子工程<注册中心>halo-cloud-server子工程<服务消费者>halo-cloud-consumer子工程<服务提供者>halo-cloud-providerhalo-coud-parent依赖引入<!--打......